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
#includewindows.h
#includesql.h
#includesqlext.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身份驗證,第二、三參數可以是
1. 通過調用mysql_library_init(),初始化MySQL庫。庫可以是mysqlclient C客戶端庫,或mysqld嵌入式服務器庫,具體情況取決于應用程序是否與“-libmysqlclient”或“-libmysqld”標志鏈接。
2. 通過調用mysql_init()初始化連接處理程序,并通過調用mysql_real_connect()連接到服務器。
3. 發出SQL語句并處理其結果。(在下面的討論中,詳細介紹了使用它的方法)。
4. 通過調用mysql_close(),關閉與MySQL服務器的連接。
5. 通過調用mysql_library_end(),結束MySQL庫的使用。
一般都用第三方管理軟件,比如MySQL Tools for 5.0
你要是想在控制臺連接數據庫的話,設置一下環境變量就隨便打開個控制臺就能訪問了。
將MySQL安裝目錄的bin目錄設置到環境變量Path中,比如:"C:\Program Files\MySQL\MySQL Server 5.0\bin"
然后在控制臺中按格式輸入信息就可以對數據庫進行操作了。
格式:mysql --user=用戶名 --password=密碼 [數據庫名]
有時為了性能,我們會直接用C語言來開發相關的模塊,尤其在我們的web應用中,雖然PHP、JSP等腳本均提供了MySQL的接口,但是顯然直接使用C語言具有更好的安全性和性能,Michael以前用PHP開發的多個項目中就使用了C語言編寫的這類接口,然后再編譯到php里面,供php腳本直接使用,這方面的話題就不多說了,下面主要說一下在Linux下如何用C語言連接MySQL數據庫,并且讀取里面的數據返回,同時如何進行編譯。 if defined(_WIN32) || defined(_WIN64)為了支持windows平臺上的編譯#includewindows.h#endif#includestdio.h#includestdlib.h #includemysql.h 我的機器上該文件在/usr/local/include/mysql下 定義MySQL數據庫操作的宏,也可以不定義留著后面直接寫進代碼 defineSELECT_QUERYselectusernamefromtbb_userwhereuserid=%dintmain(intargc,char**argv)char**argv相當于char*argv[]{MYSQL mysql,*sock;定義數據庫連接的句柄,它被用于幾乎所有的MySQL函數 MYSQL_RES *res;查詢結果集,結構類型 MYSQL_FIELD *fd ;包含字段信息的結構 MYSQL_ROW row ;存放一行查詢結果的字符串數組 char qbuf[160];存放查詢sql語句字符串 if(argc!=2){//檢查輸入參數 fprintf(stderr,usage:mysql_selectuserid\n\n);exit(1);}mysql_init(mysql);if(!(sock=mysql_real_connect (mysql,localhost,dbuser,dbpwd,9tmd_bbs_utf8,0,NULL,0))){ fprintf(stderr,Couldn'tconnecttoengine!\n%s\n\n,mysql_error(mysql));perror();exit(1);}sprintf(qbuf,SELECT_QUERY,atoi(argv[1])); if(mysql_query(sock,qbuf)){ fprintf(stderr,Queryfailed(%s)\n,mysql_error(sock));exit(1);}if(!(res=mysql_store_result(sock))){fprintf(stderr,Couldn'tgetresultfrom%s\n,mysql_error(sock));exit(1);}printf(numberoffieldsreturned:%d\n,mysql_num_fields(res));while(row=mysql_fetch_row(res)){printf(Theruserid#%d'susernameis:%s\n,atoi(argv[1]),(((row[0]==NULL)(!strlen(row[0])))?NULL:row[0])); puts(queryok!\n);}mysql_free_result(res); mysql_close(sock);exit(0);return0;為了兼容大部分的編譯器加入此行} 編譯的時候,使用下面的命令 gcc -o mysql_select ./mysql_select.c -I/usr/local/include/mysql -L/usr/local/lib/mysql -lmysqlclient (-lz) (-lm) 后面兩個選項可選,根據您的環境情況運行的時候,執行下面的命令 ./mysql_select 1 將返回如下結果: numberoffieldsreturned:1 Theruserid#1'susernameis:Michaelqueryok!上面的代碼我想大部分都能看明白,不明白的可以參考一下MySQL提供的有關C語言API部分文檔源碼天空 ,各個函數都有詳細說明,有時間我整理一份常用的API說明出來。
本文名稱:cmysql怎么使用 cmd如何使用mysql
網站網址:http://vcdvsql.cn/article28/dopiojp.html
成都網站建設公司_創新互聯,為您提供網站維護、動態網站、網站制作、網頁設計公司、定制開發、網站改版
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯