MySQL connector/C++

來源:互聯網
上載者:User

首先去MySQL官網下載MySQL connector/C++

http://dev.mysql.com/downloads/connector/cpp/

根據自己系統平台下載相應的版本。檔案夾名字太長,將“mysql-connector-c++-noinstall-1.0.5-win32”改為“mysql”。

下面要配置vs2008的環境。

1. 項目屬性頁面->C/C++->General->Additional Include Directories。將mysql\include目錄添加進去。

2. 項目屬性頁面->Linker->General->Additional Library Directories。將mysql\lib與$MySQL\bin目錄添加進去。

3. 項目屬性頁面->Linker->Input->Additional Dependencies。添加這兩項mysqlcppconn.lib,mysqlcppconn-static.lib(mysql\lib目錄下的兩個.lib檔案)

4. 將mysql\lib下的mysqlcppconn.dll檔案與$MySQL\bin\libmySQL.dll複製到windows\system32檔案夾下。

環境配置完畢。

在串連資料庫之前,先建立一張表。
(其實這些可以在代碼中完成,我這樣是為了讓測試代碼儘可能簡練易查錯)

開啟控制台,輸入mysql -u root -p,輸入密碼。

查看當前已有的資料庫。(SQL語句末尾加上';'表示立即執行當前語句。)
mysql> show databases;

建立資料庫
mysql> create database test;

使用資料庫(這句不能加分號)
mysql> use test

查看已有的表
mysql> show tables;

建立表
mysql> create table testuser ( id INT, name CHAR(20));

插入資料
mysql> insert into testuser(id, name) values(1001, 'google');
mysql> insert into testuser(id, name) values(1002, 'kingsoft');
mysql> insert into testuser(id, name) values(1003, 'firefox');

現在在C++中查詢這些資料

  1. #include "stdafx.h"  
  2. #include <mysql_connection.h>  
  3. #include <mysql_driver.h>  
  4. #include <statement.h>  
  5. using namespace sql;  
  6. using namespace std;  
  7. void RunConnectMySQL()   
  8. {  
  9.     mysql::MySQL_Driver *driver;  
  10.     Connection *con;  
  11.     Statement *state;  
  12.     ResultSet *result;  
  13.     // 初始化驅動  
  14.     driver = sql::mysql::get_mysql_driver_instance();  
  15.     // 建立連結  
  16.     con = driver->connect("tcp://127.0.0.1:3306", "root", "123");  
  17.     state = con->createStatement();  
  18.     state->execute("use test");  
  19.     // 查詢  
  20.     result = state->executeQuery("select * from testuser where id < 1002");  
  21.     // 輸出查詢  
  22.     while(result->next())  
  23.     {  
  24.         int id = result->getInt("ID");  
  25.         string name = result->getString("name");  
  26.         cout << id << " : " << name << endl;  
  27.     }  
  28.     delete state;  
  29.     delete con;  
  30. }  
  31. int _tmain(int argc, _TCHAR* argv[])  
  32. {  
  33.     RunConnectMySQL();  
  34.     getchar();  
  35.     return 0;  

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.