Ошибка слишком длинная строка 'использование MySQL в MySQL соединитель/c++ 8.0.15(xdev на C++ с API) для Windows
I installed Visual Studio 2017 linked to mysql-connector-c++-8.0.15-winx64. I created a Windows Console application with the exact source code from <a href="http://dev.mysql.com/doc/dev/connector-cpp/devapi_ref.html">http://dev.mysql.com/doc/dev/connector-cpp/devapi_ref.html</a> I'm using MySQL Connector/C++ 8.0.15 to connect MySQL Database ,When I run the example in Visual Studio 2017,it failed with an error "string too long". <pre> <pre> The C++ code is just as below:
void test_XdevCPlus_demo() { std::string usr = "root"; std::string pwd = "1030"; // Connect to MySQL Server on a network machine try { Session mySession( SessionOption::USER, usr, SessionOption::PWD, pwd, SessionOption::HOST, "localhost", SessionOption::PORT, 33060, SessionOption::DB, "test", SessionOption::SSL_MODE, SSLMode::DISABLED ); Schema myDb = mySession.getSchema("test"); } catch (mysqlx::Error::exception& e) { std::cout << e.what() << std::endl; } }
Что я уже пробовал:
Когда я запускаю пример, я получаю сеанс создания на localhost, порт 33060 ... Исключение STD: string too long исключение происходит в Impl::from_utf8(*this, utf8), где utf8="root". // TODO: сделайте явные преобразования utf8
string(const char *other) { if (!other) return; std::string utf8(other); Impl::from_utf8(*this, utf8); } catch (std::exception &ex) { cout << "STD EXCEPTION: " << ex.what() << endl; return 1; }
Would you please help?
Michael Haephrati
Вы проверили рекомендации для строк подключения? https://www.connectionstrings.com/mysql/
Michael Haephrati
Попробуйте это решение из : https://stackoverflow.com/questions/13890021/mysql-workbench-error-opening-eer
Просто закройте и снова откройте приложение.