Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> Linux系統教程 >> Linux教程 >> linux 下 用c語言創建mysql數據庫筆記

linux 下 用c語言創建mysql數據庫筆記

日期:2017/2/7 14:32:55      編輯:Linux教程
 

在引用頭文件時必須包含‘mysql.h’的頭文件(必須是mysql.h的絕對地址,一般在mysql下的include目錄下,仔細看看你的在哪裡?*),
我是ubuntu9。04,在/usr/include/mysql/mysql.h下
有的linux版本可能在/usr/local/mysql/include/mysql/mysql.h下。

---- 對其中幾個函數作簡單說明,詳細說明,可參考MySQL文檔:

---- 1. MYSQL *mysql_init(MYSQL *mysql)

---- 初始化一個類型為MYSQL的數據結構,為執行mysql_real_connect()做准備。參數

mysql為指向該結構的指針,如果mysql為NULL,則新建並初始化一個MYSQL的數據結構。

新建的結構將在mysql_close()中釋放。

---- 若成功,返回初始化的MYSQL數據結構的指針,否則返回NULL。

---- 2. MYSQL *mysql_real_connect(MYSQL *mysql, const char *host,

---- const char *user, const char *passwd, const char *db,

---- unsigned int port, const char *unix_socket, unsigned int client_flag)

---- 與MySQL數據庫引擎建立連接。在執行進一步的數據操作之前,必須保證mysql_re

al_connect()成功返回。

---- 參數mysql是mysql_init()的返回值;

---- 參數host是運行MySQL數據庫引擎的機器的TCP/IP主機名,如為NULL則默認為“lo

calhost”;

---- 參數user和passwd是MySQL數據庫的合法用戶和口令;

---- 參數db是連接的數據庫名;

---- 參數port,unix_socket和client_flag一般取默認值。

---- 3. int mysql_query(MYSQL *mysql, const char *query)

---- 執行query字符串中的SQL語句,query必須以0結尾。如果成功,返回0。

---- 4. MYSQL_RES *mysql_store_result(MYSQL *mysql)

---- 返回SELECT,SHOW,DESCRIBE, EXPLAIN等語句執行的結果。函數新建一個MYSQL_

RES的數據結構,把結果存儲在該結構中。如果查詢沒有匹配的結果,則返回空數據集。

處理完結果集後,必須調用mysql_free_result()。

---- 如果出錯,返回NULL,否則返回MYSQL_RES結構的指針。

---- 5. MYSQL_ROW mysql_fetch_row(MYSQL_RES *result)

---- 取回結果集中的下一條記錄,如果沒有記錄或出錯,返回NULL。一條記錄中的字段

數可以用mysql_num_fields(result)獲得,各字段的值可以用row[0] 到 row[mysql_nu

m_fields(result)-1]的數組來訪問。

---- 在工程的鏈接選項中,加入c:mysqlliblibmysql.lib的接口庫,把libmysql.d

ll復制到操作系統的system目錄下(c:winntsystem32),就可以編譯運行了。

---- 到這裡,一個簡單的數據庫應用就開發完成了。當然,MySQL有一套功能豐富的AP

I,大家可以查看文檔。另外,如果需要跨平台的移植性,可以考慮用MySQL的ODBC接口

。可以自己配置MySQL的ODBC連接屬性,也可以下載myodbc-2.50.29-nt.zip工具包來配

Copyright © Windows教程網 All Rights Reserved