cmysql連接mysql資料庫
方法如下:
1.頭文件:
#include
#include
#include//這個是必需要包含的,下面對mysql的所有操作函數,都出自這里
2.定義一個MYSQL變數:
MYSQLmysql;
這里MYSQL是一個用於連接MySql資料庫的變數。
在後面對mysql資料庫的操作中,我們就用這個MYSQL變數作為句柄的。
3.定義資料庫參數:
charhost[32]=」localhost」;
charuser[32]=」username」;
charpasswd[32]=」pwd」;
chardbname[32]=」testdb」;
4.資料庫操作
1).初始化資料庫:
mysql_init(&mysql);
2).連接資料庫:
mysql_real_connect(&mysql,host,user,passwd,dbname,0,NULL,0);
我們在操作時,可以對以上的函數進行if測試,如果初始化或者連接出錯,作出相應提示,以便調試。
5.對資料庫的操作:
Mysql_query(&mysql,「select*fromtestdbwherecondition」);
我們在實際操作中,為了更方便的使用程序中的某些變數,我們將會用到一個函數:
intsprintf(char*str,constchar*format,?);
這個函數用來格式化我們的字元串,然後將變數按照給你的格式,賦給第一個參數。
我們使用這個方法方法可以很方便的使用我們的變數來對資料庫進行操作。例如我們將要進行資料庫的查詢操作,我們就可以這樣使用:
sprintf(sql,」select*fromtestdbwhereusername=『%s』」,u_name);
然後使用mysql_query(&mysql,sql)進行查詢。
MySQL是一個關系型資料庫管理系統,由瑞典MySQLAB公司開發,屬於Oracle旗下產品。MySQL是最流行的關系型資料庫管理系統之一,在WEB應用方面,MySQL是最好的RDBMS(,關系資料庫管理系統)應用軟體之一。
鏈表是一種物理存儲單元上非連續、非順序的存儲結構,數據元素的邏輯順序是通過鏈表中的指針鏈接次序實現的。鏈表由一系列結點(鏈表中每一個元素稱為結點)組成,結點可以在運行時動態生成。每個結點包括兩個部分:一個是存儲數據元素的數據域,另一個是存儲下一個結點地址的指針域。相比於線性表順序結構,操作復雜。由於不必須按順序存儲,鏈表在插入的時候可以達到O(1)的復雜度,比另一種線性表順序錶快得多,但是查找一個節點或者訪問特定編號的節點則需要O(n)的時間,而線性表和順序表相應的時間復雜度分別是O(logn)和O(1)。
『貳』 C#中如何設置字元串連接到MySQL資料庫
#region建立MySql資料庫連接
///<summary>
///建立資料庫連接.
///</summary>
///<returns>返回MySqlConnection對象</returns>
()
{
//http://sosoft.cnblogs.com/
stringM_str_sqlcon="server=localhost;userid=root;password=root;database=abc";//根據自己的設置
MySqlConnectionmyCon=newMySqlConnection(M_str_sqlcon);
returnmyCon;
}
#endregion
#region執行MySqlCommand命令
///<summary>
///執行MySqlCommand
///</summary>
///<paramname="M_str_sqlstr">SQL語句</param>
publicvoidgetmysqlcom(stringM_str_sqlstr)
{
MySqlConnectionmysqlcon=this.getmysqlcon();
mysqlcon.Open();
MySqlCommandmysqlcom=newMySqlCommand(M_str_sqlstr,mysqlcon);
mysqlcom.ExecuteNonQuery();
mysqlcom.Dispose();
mysqlcon.Close();
mysqlcon.Dispose();
}
#endregion
#region創建MySqlDataReader對象
///<summary>
///創建一個MySqlDataReader對象
///</summary>
///<paramname="M_str_sqlstr">SQL語句</param>
///<returns>返回MySqlDataReader對象</returns>
(stringM_str_sqlstr)
{
MySqlConnectionmysqlcon=this.getmysqlcon();
MySqlCommandmysqlcom=newMySqlCommand(M_str_sqlstr,mysqlcon);
mysqlcon.Open();
MySqlDataReadermysqlread=mysqlcom.ExecuteReader(CommandBehavior.CloseConnection);
returnmysqlread;
}
#endregion
『叄』 mysql涓鑳藉湪C紼嬪簭涓閫氳繃宓屽叆寮廠QL璁塊棶鏁版嵁搴撲箞
鍏堢湅緇撴瀯浣
錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞
浠ヤ笅浠g爜鍧楁槸鐢ㄦ潵榪炴帴鏁版嵁搴撶殑閫氳榪囩▼錛岃佽繛鎺MYSQL錛屽繀欏誨緩絝婱YSQL瀹炰緥錛岄氳繃mysql_init鍒濆嬪寲鏂硅兘寮濮嬭繘琛岃繛鎺.
typedefstructst_mysql{
NETnet;/*Communicationparameters*/
gptrconnector_fd;/*ConnectorFdforSSL*/
char*host,*user,*passwd,*unix_socket,
*server_version,*host_info,*info,*db;
unsignedintport,client_flag,server_capabilities;
unsignedintprotocol_version;
unsignedintfield_count;
unsignedintserver_status;
unsignedlongthread_id;/*Idforconnectioninserver*/
my_ulonglongaffected_rows;
my_ulonglonginsert_id;/*idifinsertontablewithNEXTNR*/
my_ulonglongextra_info;/*Usedbymysqlshow*/
unsignedlongpacket_length;
enummysql_statusstatus;
MYSQL_FIELD*fields;
MEM_ROOTfield_alloc;
my_boolfree_me;/*Iffreeinmysql_close*/
my_boolreconnect;/*setto1ifautomaticreconnect*/
structst_mysql_optionsoptions;
charscramble_buff[9];
structcharset_info_st*charset;
unsignedintserver_language;
}MYSQL;
榪欎釜緇撴瀯浠h〃榪斿洖琛岀殑涓涓鏌ヨ㈢殑(SELECT,SHOW,DESCRIBE,EXPLAIN)鐨勭粨鏋溿傝繑鍥炵殑鏁版嵁縐頒負鈥滄暟鎹闆嗏濓紝鐢ㄨ繃鏁版嵁搴撶殑鏈嬪弸搴旇ュ規暟鎹搴撲腑鏌ヨ㈠悗寰楀埌鐨勭粨鏋滈泦涓嶄細闄岀敓錛屽湪C鐨凙PI閲屽瑰簲鐨勫氨鏄疢YSQL_RES浜嗭紝浠庢暟鎹搴撹誨彇鏁版嵁錛屾渶鍚庡氨鏄浠嶮YSQL_RES涓璇誨彇鏁版嵁銆
typedefstructst_mysql_res{
my_ulonglongrow_count;
unsignedintfield_count,current_field;
MYSQL_FIELD*fields;
MYSQL_DATA*data;
MYSQL_ROWS*data_cursor;
MEM_ROOTfield_alloc;
MYSQL_ROWrow;/*Ifunbufferedread*/
MYSQL_ROWcurrent_row;/*buffertocurrentrow*/
unsignedlong*lengths;/*columnlengthsofcurrentrow*/
MYSQL*handle;/*forunbufferedreads*/
my_booleof;/*Usedmymysql_fetch_row*/
}MYSQL_RES;
錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞
鍐嶇湅鍑芥暟錛
C璇璦鎿嶄綔mysql鏁版嵁甯哥敤鍑芥暟
鎵闇澶存枃浠訛細#include<mysql/mysql.h>
鍔熻兘錛鑾峰緱鎴栧垵濮嬪寲涓涓狹YSQL緇撴瀯
鍑芥暟鍘熷瀷錛MYSQL*mysql_init(MYSQL*mysql)
鍑芥暟榪斿洖鍊礆細涓涓琚濮嬪寲鐨凪YSQL*鍙ユ焺
澶囨敞錛鍦ㄥ唴瀛樹笉瓚崇殑鎯呭喌涓嬶紝榪斿洖NULL
鎵闇澶存枃浠訛細#include<mysql/mysql.h>
鍑芥暟鍔熻兘錛鍏抽棴涓涓鏈嶅姟鍣ㄨ繛鎺ワ紝騫墮噴鏀句笌榪炴帴鐩稿叧鐨勫唴瀛
鍑芥暟鍘熷瀷錛voidmysql_close(MYSQL*mysql);
鍑芥暟浼犲叆鍊礆細MYSQL:綾誨瀷鐨勬寚閽
鍑芥暟榪斿洖鍊礆細鏃
鎵闇澶存枃浠訛細#include<mysql/mysql.h>
鍑芥暟鍔熻兘錛榪炴帴涓涓狹ySQL鏈嶅姟鍣
鍑芥暟鍘熷瀷錛MYSQL*mysql_connect(MYSQL*mysql,constchar*host,constchar*user,constchar*passwd);
鍑芥暟浼犲叆鍊礆細mysql琛ㄧず涓涓鐜板瓨mysql緇撴瀯鐨勫湴鍧
host琛ㄧずMYSQL鏈嶅姟鍣ㄧ殑涓繪満鍚嶆垨IP
user琛ㄧず鐧誨綍鐨勭敤鎴峰悕
passwd琛ㄧず鐧誨綍鐨勫瘑鐮
鍑芥暟榪斿洖鍊礆細濡傛灉榪炴帴鎴愬姛錛屼竴涓狹YSQL*榪炴帴鍙ユ焺錛氬傛灉榪炴帴澶辮觸錛孨ULL
澶囨敞錛璇ュ嚱鏁頒笉鎺ㄨ崘錛屼嬌鐢╩ysql_real_connect()浠f浛
鎵闇鏂囦歡錛#include<mysql/mysql.h>
鍑芥暟鍔熻兘錛MYSQL*mysql_real_connect(MYSQL*mysql,constchar*host,constchar*user,constchar*passwd,constchar*db,unsignedintport,constchar*unix_socket,unsignedintclient_flag);
鍑芥暟浼犲叆鍊礆細mysql琛ㄧず涓涓鐜板瓨mysql緇撴瀯鐨勫湴鍧
host琛ㄧずMYSQL鏈嶅姟鍣ㄧ殑涓繪満鍚嶆垨IP
user琛ㄧず鐧誨綍鐨勭敤鎴峰悕
passwd琛ㄧず鐧誨綍鐨勫瘑鐮
db琛ㄧず瑕佽繛鎺ョ殑鏁版嵁搴
port琛ㄧずMySQL鏈嶅姟鍣ㄧ殑TCP/IP絝鍙
unix_socket琛ㄧず榪炴帴綾誨瀷
client_flag琛ㄧずMySQL榪愯孫DBC鏁版嵁搴撶殑鏍囪
鍑芥暟榪斿洖鍊礆細濡傛灉榪炴帴鎴愬姛錛屼竴涓狹YSQL*榪炴帴鍙ユ焺錛氬傛灉榪炴帴澶辮觸錛孨ULL
鎵闇澶存枃浠訛細#include<mysql/mysql.h>
鍑芥暟鍔熻兘錛榪斿洖鏈鏂扮殑UPDATE錛孌ELETE鎴朓NSERT鏌ヨ㈠獎鍝嶇殑琛屾暟
鍑芥暟浼犲叆鍊礆細MYSQL:綾誨瀷鎸囬拡
鍑芥暟榪斿洖鍊礆細澶т簬闆剁殑涓涓鏁存暟琛ㄧず鍙楀埌褰卞搷鎴栨緔㈠嚭鏉ョ殑琛屾暟銆傞浂琛ㄧず娌℃湁鍖洪厤鏌ュ簭涓璚HERE瀛愬彞鐨勮板綍鎴栫洰鍓嶈繕娌℃湁鏌ヨ㈣鎵ц;-1琛ㄧず鏌ヨ㈣繑鍥炰竴涓閿欒錛屾垨瀵逛簬涓涓猄ELECT鏌ヨ
鎵闇澶存枃浠訛細#include<mysql/mysql.h>
鍑芥暟鍔熻兘錛瀵規寚瀹氱殑榪炴帴鎵ц屾煡璇
鍑芥暟鍘熷瀷錛intmysql_query(MYSQL*mysql,constchar*query);
鍑芥暟浼犲叆鍊礆細query琛ㄧず鎵ц岀殑SQL璇鍙
鍑芥暟榪斿洖鍊礆細濡傛灉鏌ヨ㈡垚鍔燂紝涓洪浂錛屽嚭閿欎負闈為浂銆
鐩稿叧鍑芥暟錛mysql_real_query
鎵闇澶存枃浠訛細#include<mysql/mysql.h>
鍑芥暟鍔熻兘錛涓烘棤緙撳啿鐨勭粨鏋滈泦鑾峰緱緇撴灉鏍囪瘑絎
鍑芥暟鍘熷艦錛MYSQL_RES*mysql_use_result(MYSQL*mysql);
鍑芥暟浼犲叆鍊礆細MYSQL:綾誨瀷鐨勬寚閽
鍑芥暟榪斿洖鍊礆細涓涓狹YSQL_RES緇撴灉緇撴瀯錛屽傛灉鍙戠敓涓涓閿欒鍙慛ULL
#incluee<mysql/mysql.h>
媯緔涓涓緇撴灉闆嗗悎鐨勪笅涓琛
MYSQL_ROWmysql_fetch_row(MYSQL_RES*result);
MYSQL_RES:緇撴瀯鐨勬寚閽
涓嬩竴琛岀殑涓涓狹YSQL_ROW緇撴瀯銆傚傛灉娌℃湁鏇村氱殑琛屽彲媯緔㈡垨濡傛灉鍑虹幇涓涓閿欒錛孨ULL
#include<mysql/mysql.h>
榪斿洖鎸囧畾緇撴灉闆嗕腑鍒楃殑鏁伴噺
unsignedintmysql_num_fields(MYSQL_RES*res);
MYSQL_RES緇撴瀯鐨勬寚閽
緇撴灉闆嗗悎涓瀛楁墊暟閲忕殑涓涓鏃犵﹀彿鏁存暟
#include<mysql/mysql.h>
鍒涘緩涓涓鏁版嵁搴
intmysql_create_db(MYSQL*mysql,constchar*db);
MYSQL錛氱被鍨嬬殑鎸囬拡
db:瑕佸壋寤虹殑鏁版嵁搴撳悕
濡傛灉鏁版嵁搴撴垚鍔熷湴琚鍒涘緩錛岃繑鍥為浂錛屽傛灉鍙戠敓閿欒錛屼負闈為浂銆
#include<mysql/mysql.h>
閫夋嫨涓涓鏁版嵁搴
intmysql_select_db(MYSQL*mysql,constchar*db);
MYSQL錛氱被鍨嬬殑鎸囬拡
db:瑕佸壋寤虹殑鏁版嵁搴撳悕
濡傛灉鏁版嵁搴撴垚鍔熷湴琚鍒涘緩錛岃繑鍥為浂錛屽傛灉鍙戠敓閿欒錛屼負闈為浂銆
錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞
鍐嶇湅渚嬪瓙錛
寰堝氫漢鐢ㄥ埌MySQL鏉ュ紑鍙戜竴浜涢」鐩錛屾湁鏃朵負浜嗘ц兘錛屾垜浠浼氱洿鎺ョ敤C璇璦鏉ュ紑鍙戠浉鍏崇殑妯″潡錛屽挨鍏跺湪鎴戜滑鐨剋eb搴旂敤涓錛岃櫧鐒禤HP銆丣SP絳夎剼鏈鍧鎻愪緵浜哅ySQL鐨勬帴鍙o紝浣嗘槸鏄劇劧鐩存帴浣跨敤C璇璦鍏鋒湁鏇村ソ鐨勫畨鍏ㄦу拰鎬ц兘錛孧ichael浠ュ墠鐢≒HP寮鍙戠殑澶氫釜欏圭洰涓灝變嬌鐢ㄤ簡C璇璦緙栧啓鐨勮繖綾繪帴鍙o紝鐒鍚庡啀緙栬瘧鍒皃hp閲岄潰錛屼緵php鑴氭湰鐩存帴浣跨敤,榪欐柟闈㈢殑璇濋樺氨涓嶅氳翠簡錛屼笅闈涓昏佽翠竴涓嬪湪Linux涓嬪備綍鐢–璇璦榪炴帴MySQL鏁版嵁搴擄紝騫朵笖璇誨彇閲岄潰鐨鏁版嵁榪斿洖錛屽悓鏃跺備綍榪涜岀紪璇戙
銆銆榪欓噷鐨勫ぇ閮ㄥ垎浠g爜鍙傝冧簡MySQL鍙戣屽寘閲岄潰鐨.c婧愭枃浠訛紝澶у朵篃鍙浠ュ幓閲岄潰鎵炬壘鐩稿叧鐨勪唬鐮侊紝涓嬮潰榪欐典唬鐮佸疄鐜頒簡榪炴帴鍒版湰鍦癕ySQL鏈嶅姟鍣ㄤ笂9tmd_bbs_utf8鏁版嵁搴擄紝浠庢暟鎹琛╰bb_user涓鏍規嵁杈撳叆鐨剈serid鍙栧緱璇ョ敤鎴風殑鐢ㄦ埛鍚嶅苟鎵撳嵃杈撳嚭鍒扮粓絝銆
#ifdefined(_WIN32)||defined(_WIN64)//涓轟簡鏀鎸亀indows騫沖彴涓婄殑緙栬瘧
#include<windows.h>
#endif
#include<stdio.h>
#include<stdlib.h>
#include"mysql.h"//鎴戠殑鏈哄櫒涓婅ユ枃浠跺湪/usr/local/include/mysql涓
//瀹氫箟鏁版嵁搴撴搷浣滅殑瀹忥紝涔熷彲浠ヤ笉瀹氫箟鐣欑潃鍚庨潰鐩存帴鍐欒繘浠g爜
#defineSELECT_QUERY"selectusernamefromtbb_userwhereuserid=%d"
intmain(intargc,char**argv)//char**argv鐩稿綋浜char*argv[]
{
MYSQLmysql,*sock;//瀹氫箟鏁版嵁搴撹繛鎺ョ殑鍙ユ焺錛屽畠琚鐢ㄤ簬鍑犱箮鎵鏈夌殑MySQL鍑芥暟
MYSQL_RES*res;//鏌ヨ㈢粨鏋滈泦錛岀粨鏋勭被鍨
MYSQL_FIELD*fd;//鍖呭惈瀛楁典俊鎮鐨勭粨鏋
MYSQL_ROWrow;//瀛樻斁涓琛屾煡璇㈢粨鏋滅殑瀛楃︿覆鏁扮粍
charqbuf[160];//瀛樻斁鏌ヨsql璇鍙ュ瓧絎︿覆
if(argc!=2){//媯鏌ヨ緭鍏ュ弬鏁
fprintf(stderr,"usage:mysql_select<userid> ");
exit(1);
}
mysql_init(&mysql);
if(!(sock=mysql_real_connect(&mysql,"localhost","dbuser","dbpwd","9tmd_bbs_utf8",0,NULL,0))){
fprintf(stderr,"Couldn'tconnecttoengine! %s ",mysql_error(&mysql));
perror("");
exit(1);
}
sprintf(qbuf,SELECT_QUERY,atoi(argv[1]));
if(mysql_query(sock,qbuf)){
fprintf(stderr,"Queryfailed(%s) ",mysql_error(sock));
exit(1);
}
if(!(res=mysql_store_result(sock))){
fprintf(stderr,"Couldn'tgetresultfrom%s ",mysql_error(sock));
exit(1);
}
printf("numberoffieldsreturned:%d ",mysql_num_fields(res));
while(row=mysql_fetch_row(res)){
printf("Theruserid#%d'susernameis:%s ",atoi(argv[1]),(((row[0]==NULL)&&(!strlen(row[0])))?"NULL":row[0]));
puts("queryok! ");
}
mysql_free_result(res);
mysql_close(sock);
exit(0);
return0;//.涓轟簡鍏煎瑰ぇ閮ㄥ垎鐨勭紪璇戝櫒鍔犲叆姝よ
}
緙栬瘧鐨勬椂鍊欙紝浣跨敤涓嬮潰鐨勫懡浠
gcc-omysql_select./mysql_select.c-I/usr/local/include/mysql-L/usr/local/lib/mysql-lmysqlclient(-lz)(-lm)鍚庨潰涓や釜閫夐」鍙閫夛紝鏍規嵁鎮ㄧ殑鐜澧冩儏鍐
榪愯岀殑鏃跺欙紝鎵ц屼笅闈㈢殑鍛戒護
./mysql_select1
灝嗚繑鍥炲備笅緇撴灉錛
numberoffieldsreturned:1
Theruserid#1'susernameis:Michael
queryok!
『肆』 如何用C語言連接MYSQL資料庫
1、配置ODBC數據源。
2、使用SQL函數進行連接。
對於1、配置數據源,配置完以後就可以編程操作資料庫了。
對於2、使用SQL函數進行連接,參考代碼如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include<windows.h>
#include<sql.h>
#include<sqlext.h>
void
main()
{
HENV
henv;
//環境句柄
HDBC
hdbc;
//數據源句柄
HSTMT
hstmt;
//執行語句句柄
unsigned
char
datasource[]="數據源名稱";
//即源中設置的源名稱
unsigned
char
user[]=
"用戶名";
//資料庫的帳戶名
unsigned
char
pwd[]=
"密碼";
//資料庫的密碼
unsigned
char
search[]="select
xm
from
stu
where
xh=0";
SQLRETURN
retcode;
//記錄各SQL函數的返回情況
//
分配環境句柄
retcode=
SQLAllocEnv(&henv);
//
等介於
SQLAllocHandle(SQL_HANDLE_ENV,
SQL_NULL
,
&henv);
//
設置ODBC環境版本號為3.0
retcode=
SQLSetEnvAttr(henv,
SQL_ATTR_ODBC_VERSION,
(void*)SQL_OV_ODBC3,
0);
//
分配連接句柄
retcode=
SQLAllocConnect(henv,&hdbc);
//
等介於
SQLAllocHandle(SQL_HANDLE_DBC,
henv,
&hdbc);
//設置連接屬性,登錄超時為*rgbValue秒(可以沒有)
//
SQLSetConnectAttr(hdbc,
SQL_LOGIN_TIMEOUT,
(SQLPOINTER)(rgbValue),
0);
//直接連接數據源
//
如果是windows身份驗證,第二、三參數可以是
『伍』 如何用cmd連接Mysql資料庫
連接mysql資料庫的幾種方法
1
一 Mysql命令行連接
一般對於剛剛安裝好的mysql,如果勾選啟用mysql lineclient的話。可以直接通過找到開始---程序--- mysql command line client如下圖
2
點擊mysql命令行之後,會提示你輸入root密碼。輸入正確的root密碼之後即可連接到msyql資料庫里啦
3
二 Cmd命令行怎麼連接資料庫
如果沒有安裝mysql命令行的話,我們可以通過找到 mysqld所在的路徑(復制mysqld.exe所在路徑)
4
使用cd切換到msyqld.exe路徑下,然後輸入mysql連接命令如下圖
格式是:
Mysql -P 埠號 -h mysql主機名\ip -u root (用戶) -p
5
如果是命令行是mysql所在的本機
而且用默認的埠 3306 直接輸入 mysql -u root -p 即可
6
第三方mysql資料庫連接工具
通過第三方資料庫連接工具這些就很多啦,如下圖設置好相關參數即可
7
連接進去之後,也就是比較人性化的圖形界面了。
更多關於mysql資料庫工具navicat for mysql怎麼用?
http://jingyan..com/article/3c343ff70d0ee00d37796397.html
8
其他遠程連接工具
Phpmyadmin 無疑是使用最廣泛的php管理資料庫的圖形化工具了,由於涉及到不同的環境和路徑。本例咗嚛不做詳細操作
END
其它注意事項
1
默認mysql是只能本機登陸的,如果需要外網能夠正常連接。
需要到mysql\user表格裡面設置開放許可權 如hosts即是可以遠程連接的主機
http://jingyan..com/article/414eccf612e0c16b431f0a95.html
『陸』 用C語言怎麼實現與資料庫的連接
#include<mysql/mysql.h>
#include<stdio.h>
intmain()
{
MYSQL*conn;
MYSQL_RES*res;
MYSQL_ROWrow;
char*server="localhost";//本地連接
char*user="root";//
char*password="525215980";//mysql密碼
char*database="student";//資料庫名
char*query="select*fromclass";//需要查詢的語句
intt,r;
conn=mysql_init(NULL);
if(!mysql_real_connect(conn,server,user,password,database,0,NULL,0))
{
printf("Errorconnectingtodatabase:%s ",mysql_error(conn));
}else{
printf("Connected... ");
}
t=mysql_query(conn,query);
if(t)
{
printf("Errormakingquery:%s ",mysql_error(conn));
}else{
printf("Querymade... ");
res=mysql_use_result(conn);
if(res)
{
while((row=mysql_fetch_row(res))!=NULL)
{
//printf("num=%d ",mysql_num_fields(res));//列數
for(t=0;t<mysql_num_fields(res);t++)
printf("%8s",row[t]);
printf(" ");
}
}
mysql_free_result(res);
}
mysql_close(conn);
return0;
}
(6)cmysql連接mysql資料庫擴展閱讀
C語言使用注意事項:
1、指針是c語言的靈魂,一定要靈活的使用它:
(1)、指針的聲明,創建,賦值,銷毀等
(2)、指針的類型轉換,傳參,回調等
2、遞歸調用也會經常用到:
(1)、遞歸遍歷樹結構
(2)、遞歸搜索