C++串連mysql資料庫執行個體代碼

來源:互聯網
上載者:User


下載第二個包,windows32位非安裝版(個人覺得這個包乾淨)。目前的版本是Connector/C++ 1.0.5。
Windows (x86, 32-bit), ZIP Archive (mysql-connector-c++-noinstall-1.0.5-win32.zip)

將整個包解壓到專案檔夾下的的源檔案目錄。檔案夾名字太長,將“mysql-connector-c++-noinstall-1.0.5-win32”改為“mysql”。

下面要配置vs2008的環境。(vs2010也這麼操作一樣的)
1. 項目屬性頁面->C/C++->General->Additional Include Directories。將mysql/include目錄和mysql/include/cppconn目錄添加進去。

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

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

4. 將mysql/lib下的mysqlcppconn.dll檔案複製到windows/system32檔案夾下。

環境配置完畢。

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

開啟控制台,輸入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++的測試代碼:

 

 代碼如下 複製代碼
#include <mysql_connection.h> 
#include <mysql_driver.h> 
#include <statement.h> 
using namespace sql; 
using namespace std; 
void RunConnectMySQL()  

    mysql::MySQL_Driver *driver; 
    Connection *con; 
    Statement *state; 
    ResultSet *result; 
    // 初始化驅動 
    driver = sql::mysql::get_mysql_driver_instance(); 
    // 建立連結 
    con = driver->connect("http://127.0.0.1:3306", "root", "123"); 
    state = con->createStatement(); 
    state->execute("use test"); 
    // 查詢 
    result = state->executeQuery("select * from testuser where id < 1002"); 
    // 輸出查詢 
    while(result->next()) 
    { 
        int id = result->getInt("ID"); 
        string name = result->getString("name"); 
        cout << id << " : " << name << endl; 
    } 
    delete state; 
    delete con; 

int main(int argc, char* argv[]) 

    RunConnectMySQL(); 
    getchar(); 
    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.