conn = mysql_init(NULL); 初始化獲得一個(gè)mysql句柄; 失敗返回nullmysql的連接函數(shù)有兩個(gè): mysql_connect 但是在mysql 官方手冊(cè)中這么說(shuō)的: This function is deprecated. Use mysql_real_connect() instead. 這個(gè)函數(shù)是棄用。使用mysql_real_connect()。 so 大家盡量使用mysql_real_connect() 。當(dāng)然某些低版本 mysql應(yīng)該是可以用的。
函數(shù)mysql_real_connect建立一個(gè)到mysql數(shù)據(jù)庫(kù)的鏈接。調(diào)用這個(gè)函數(shù)要提供 鏈接句柄、主機(jī)名、用戶(hù)、密碼等參數(shù),最后四個(gè)參數(shù)依次是數(shù)據(jù)庫(kù)名、端口、unix套接字和客戶(hù)端標(biāo)志。
if (mysql_real_connect(conn, "localhost", "user", "passwd", NULL, 0, NULL, 0) == NULL) { printf("Error %u: %s/n", mysql_errno(conn), mysql_error(conn)); exit(1); }用戶(hù)和密碼參數(shù)使用任何字符集為MYSQL配置對(duì)象; 如果端口不是0,該值用于TCP / ip連接的端口號(hào)。 如果unix_socket不是NULL,字符串指定套接字或命名管道使用。 client_flag的價(jià)值通常是0,但可以設(shè)置為下列標(biāo)志的組合,使某些特性。 flag詳細(xì)說(shuō)明有一張表,大家可以去下面這個(gè)網(wǎng)址去看。 https://dev.mysql.com/doc/refman/5.5/en/mysql-real-connect.html
int mysql_real_query(MYSQL *mysql, const char *query, unsigned int length)參數(shù)三個(gè),第一個(gè)就是那個(gè)mysql句柄,第二個(gè)就是一個(gè)字符串,也就是相應(yīng)的sql語(yǔ)句;第三個(gè)長(zhǎng)度,一般strlen(mysql)就ok;你不應(yīng)該在語(yǔ)句后增加一個(gè)終止的分號(hào)(“;”)或/g。
對(duì)于mysql查詢(xún)結(jié)果 有一個(gè)專(zhuān)門(mén)的數(shù)據(jù)類(lèi)型: MYSQL_RES 查詢(xún)結(jié)果會(huì)存在這個(gè)文件句柄里,操作這個(gè)句柄即可得到相應(yīng)的內(nèi)容;
RES = MYSQL_RES *mysql_store_result(MYSQL *mysql);這個(gè)大家請(qǐng)看上面代碼吧,基本寫(xiě)法差不多。
最好說(shuō)道編譯,要加頭文件 mysql.h;并且要鏈接庫(kù); -I/usr/include/mysql/ -L/usr/lib/mysql -lmysqlclient 例如 gcc -o test test.c -I/usr/include/mysql/ -L/usr/lib/mysql -lmysqlclient 最后面這個(gè)東西是要安裝的;
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注