新聞中心
c語(yǔ)言怎樣連接數(shù)據(jù)庫(kù)?
1、配置ODBC數(shù)據(jù)源。
成都創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、成都外貿(mào)網(wǎng)站建設(shè)公司、蒼溪網(wǎng)絡(luò)推廣、成都小程序開(kāi)發(fā)、蒼溪網(wǎng)絡(luò)營(yíng)銷、蒼溪企業(yè)策劃、蒼溪品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);成都創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供蒼溪建站搭建服務(wù),24小時(shí)服務(wù)熱線:028-86922220,官方網(wǎng)址:www.cdcxhl.com
2、使用SQL函數(shù)進(jìn)行連接。
對(duì)于1、配置數(shù)據(jù)源,配置完以后就可以編程操作數(shù)據(jù)庫(kù)了。
對(duì)于2、使用SQL函數(shù)進(jìn)行連接,參考代碼如下:
#includewindows.h
#includesql.h
#includesqlext.h
void main()
{
HENV henv; //環(huán)境句柄
HDBC hdbc; //數(shù)據(jù)源句柄
HSTMT hstmt; //執(zhí)行語(yǔ)句句柄
unsigned char datasource[]="數(shù)據(jù)源名稱"; //即源中設(shè)置的源名稱
unsigned char user[]= "用戶名"; //數(shù)據(jù)庫(kù)的帳戶名
unsigned char pwd[]= "密碼"; //數(shù)據(jù)庫(kù)的密碼
unsigned char search[]="select xm from stu where xh=0";
SQLRETURN retcode; //記錄各SQL函數(shù)的返回情況
// 分配環(huán)境句柄
retcode= SQLAllocEnv(henv); // 等介于 SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL
, henv);
// 設(shè)置ODBC環(huán)境版本號(hào)為3.0
retcode= SQLSetEnvAttr(henv, SQL_ATTR_ODBC_VERSION, (void*)SQL_OV_ODBC3, 0);
// 分配連接句柄
retcode= SQLAllocConnect(henv,hdbc); // 等介于 SQLAllocHandle(SQL_HANDLE_DBC, henv, hdbc);
//設(shè)置連接屬性,登錄超時(shí)為*rgbValue秒(可以沒(méi)有)
// SQLSetConnectAttr(hdbc, SQL_LOGIN_TIMEOUT, (SQLPOINTER)(rgbValue), 0);
//直接連接數(shù)據(jù)源
// 如果是windows身份驗(yàn)證,第二、三參數(shù)可以是
,也可以是任何字串
//SQL_NTS 即 "
retcode= SQLConnect(hdbc,datasource, SQL_NTS, user, SQL_NTS , pwd, SQL_NTS );
//分配語(yǔ)句句柄
retcode= SQLAllocStmt(hdbc,hstmt); // 等介于 SQLAllocHandle(SQL_HANDLE_STMT, hdbc, hstmt);
//直接執(zhí)行查詢語(yǔ)句
retcode=SQLExecDirect(hstmt,search,SQL_NTS);
//將數(shù)據(jù)緩沖區(qū)綁定數(shù)據(jù)庫(kù)中的相應(yīng)字段(i是查詢結(jié)果集列號(hào),queryData是綁定緩沖區(qū),BUFF_LENGTH是緩沖區(qū)長(zhǎng)度)
SQLBindCol(hstmt, i, SQL_C_CHAR, queryData[i-1], BUFF_LENGTH, 0);
//遍歷結(jié)果集到相應(yīng)緩沖區(qū) queryData
SQLFetch(hstmt);
/*
*對(duì)遍歷結(jié)果的相關(guān)操作,如顯示等
*/
//注意釋放順序,否則會(huì)造成未知錯(cuò)誤!
SQLFreeHandle(SQL_HANDLE_STMT, hstmt);
SQLDisconnect(hdbc);
SQLFreeHandle(SQL_HANDLE_DBC, hdbc);
SQLFreeHandle(SQL_HANDLE_ENV, henv);
}
C語(yǔ)言如何調(diào)用庫(kù)中的函數(shù)
包含所調(diào)函數(shù)的所在的頭文件。
在需要調(diào)用的地方寫(xiě)上函數(shù)名并代入實(shí)參(函數(shù)有形參的話)。
c語(yǔ)言中函數(shù)調(diào)用有三種方法,能幫忙各舉個(gè)例子嗎?
1、首先在打開(kāi)的C語(yǔ)言數(shù)據(jù)庫(kù)中,輸入【#include】,如下圖所示。
2、然后輸入尖括號(hào),如下圖所示。
3、接下來(lái)便可以輸入函數(shù)庫(kù)名,如下圖所示。
4、也可以使用雙引號(hào)引起來(lái),如下圖所示。
5、此時(shí),便可以開(kāi)始使用相應(yīng)的函數(shù),如下圖所示。這樣,系統(tǒng)就不會(huì)報(bào)錯(cuò)了。
網(wǎng)站名稱:C語(yǔ)言訪問(wèn)數(shù)據(jù)庫(kù)的函數(shù) c++訪問(wèn)數(shù)據(jù)庫(kù)的方法
轉(zhuǎn)載注明:http://www.ef60e0e.cn/article/dogjhcc.html