簡體   English   中英

C ++ MySQL Linker錯誤

[英]C++ MySQL Linker errors

我是Visual C ++的新手。 我想使用MySQL / C ++。 所以我

  • 在計算機上安裝MySQL在計算機上安裝VS 2010 Professional
  • 從互聯網上,我發現My SQL驅動程序位於

C:\\ Program Files \\ MySQL \\ Connector.C ++ 1.1 \\ include <-標頭

C:\\ Program Files \\ MySQL \\ Connector.C ++ 1.1 \\ lib <-庫

  • 我制備的樣品程序,這是我從復制
  • 建立項目
  • 得到與升壓有關的錯誤
  • 下載的boost_1_61_0.7z下載的Boost (74.8 MB)
  • 解壓縮檔案
  • 使用項目屬性> C / C ++>常規>其他包含目錄添加了包含路徑

在此處輸入圖片說明

  • 使用項目屬性>鏈接器>常規>其他庫目錄添加了Linker其他庫

在此處輸入圖片說明

  • 建立項目
  • 現在它失敗並出現以下錯誤

1> DemoDB.obj:錯誤LNK2019:無法解析的外部符號“ __declspec(dllimport)public:class std :: basic_string,class std :: allocator> const&__thiscall sql :: SQLException :: getSQLState(void)const”((__imp_?getSQLState函數__catch $ _wmain $ 0中引用的@ SQLException @ sql @@ QBEABV?$ basic_string @ DU?$ char_traits @ D @ std @@ V?$ allocator @ D @ 2 @@ std @@ XZ)

1> DemoDB.obj:錯誤LNK2019:未解析的外部符號“ __declspec(dllimport)公共:int __thiscall sql :: SQLException :: getErrorCode(void)const”(__imp_?getErrorCode @ SQLException @ sql @@ QBEHXZ)在函數__catch $中引用_wmain $ 0 1> DemoDB.obj:錯誤LNK2019:無法解析的外部符號“ __declspec(dllimport)public:__thiscall sql :: SQLString ::〜SQLString(void)”(__imp _ ?? 1SQLString @ sql @@ QAE @ XZ) _wmain

1> DemoDB.obj:錯誤LNK2019:未解析的外部符號“ __declspec(dllimport)公共:__thiscall sql :: SQLString :: SQLString(char const * const)”(__imp _ ?? 0SQLString @ sql @@ QAE @ QBD @ Z)在函數_wmain中

1> DemoDB.obj:錯誤LNK2019:函數_wmain中引用的未解析的外部符號__imp__get_driver_instance

1> DemoDB.obj:錯誤LNK2019:無法解析的外部符號“ __declspec(dllimport)public:class std :: basic_string,class std :: allocator> const&__thiscall sql :: SQLString :: asStdString(void)const”(__imp_?asStdString @ SQLString @ sql @@ QBEABV?$ basic_string @ DU?$ char_traits @ D @ std @@ V?$ allocator @ D @ 2 @@ std @@ XZ)在函數“ class std :: basic_ostream>&__cdecl std中引用: :operator <<((class std :: basic_ostream>&,class sql :: SQLString const&)“(?? 6std @@ YAAAV?$ basic_ostream @ DU?$ char_traits @ D @ std @@@@ 0 @ AAV10 @ ABVSQLString @ sql @@@ Z)

在此處輸入圖片說明

請幫忙。 我完全被困住了

編輯:

該行導致以下錯誤

cout << ", SQLState: " << e.getSQLState() << " )" << endl;

1> DemoDB.obj:錯誤LNK2019:無法解析的外部符號“ __declspec(dllimport)public:class std :: basic_string,class std :: allocator> const&__thiscall sql :: SQLException :: getSQLState(void)const”((__imp_?getSQLState函數__catch $ _wmain $ 0中引用的@ SQLException @ sql @@ QBEABV?$ basic_string @ DU?$ char_traits @ D @ std @@ V?$ allocator @ D @ 2 @@ std @@ XZ)

到目前為止,我已經在下面提到了,但沒有幫助

經過很多努力,我設法解決了這個問題。 以下是對我有幫助的

  • 首先,轉到“ 項目屬性”>“配置管理器”>“為Platform x64創建新配置 ,因為我的MySQL庫是64位的

在此處輸入圖片說明

  • 其次,轉到“ 項目屬性”>“ C / C ++”>“常規”>“其他包含目錄”“ MySQL C ++連接器和MySQL連接器C的包含路徑”

在此處輸入圖片說明

  • 第三,轉到項目屬性>鏈接器>常規>其他庫目錄,添加MySQL C ++連接器的路徑

在此處輸入圖片說明

  • 第四,轉到“ 項目屬性”>“鏈接器”>“輸入”>“其他依賴項”,添加了mysqlcppcon.lib

在此處輸入圖片說明

畢竟,構建了項目並運行良好! :)

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM