| 方式 | 特點 |
|---|---|
| 純 C API | 無需 Connector,代碼繁瑣,手動管理資源 |
| Connector/C++ | 面向對象、代碼簡潔、推薦 |
#include#include #include #include #include #include #include using namespace std; int main() { sql::Driver *driver; sql::Connection *con; sql::Statement *stmt; sql::ResultSet *res; driver = get_driver_instance(); con = driver->connect("localhost", "root", "123456"); con->setSchema("mydata"); con->setClientOption("characterSetResults", "utf8"); stmt = con->createStatement(); res = stmt->executeQuery("SELECT * FROM name_table"); while (res->next()) { cout << res->getInt("ID") << " | " << res->getString("name") << " | " << res->getInt("age") << " | " << res->getString("work") << " | " << res->getString("others") << endl; } delete res; delete stmt; delete con; return 0; }
| 屬性頁路徑 | 值 |
|---|---|
| C/C++ → 附加包含目錄 | C:\Program Files\MySQL\Connector.C++ 1.1\includeC:\Program Files\boost_1_60_0 |
| 鏈接器 → 常規 → 附加庫目錄 | C:\Program Files\MySQL\Connector.C++ 1.1\lib\debug |
| 鏈接器 → 輸入 → 附加依賴項 | mysqlcppconn.lib |
複製 DLL: 將 libmysql.dll(MySQL Server/lib)和 mysqlcppconn.dll(Connector/debug)複製到專案目錄(與 .exe 同級)。
| 屬性 | 值 |
|---|---|
| 附加庫目錄 | C:\Program Files\MySQL\Connector.C++ 1.1\lib\opt |
| 複製 DLL | mysqlcppconn.dll 取自 lib\opt |
為何分 Debug/Release? 混用會導致運行時崩潰(堆棧損壞、符號不匹配)。
數據表數據:

程序輸出:

setClientOption("characterSetResults", "utf8")