c如何測試網路連接資料庫
Ⅰ c語言怎樣連接資料庫
別胡思亂想了,你都用了微軟的sql server了,用api吧
除非你用sqlite3,用c介面還情有可原
徐琿冠郊普蘆姓祠止鞏郎准贊四煢鄞昶下奘君船
Ⅱ 如何測試sql 2008連接資料庫連接
更改埠
可以配置
tcp/ip
協議以偵聽指定的埠。
默認情況下,資料庫引擎的默認實例偵聽
tcp
埠
1433。
配置資料庫引擎和
sql
server
compact
的命名實例以用於動態埠。這表示這些實例將在
sql
server
服務啟動時選擇一個可用埠。
sql
server
browser
服務可幫助客戶端在連接時識別埠。
配置為使用動態埠後,在每次啟動時
sql
server
使用的埠可能都會發生變化。
如果通過防火牆連接到
sql
server,則必須打開
sql
server
使用的埠。
將
sql
server
配置為使用特定埠,這樣就可以將防火牆配置為允許與伺服器通信。
有關詳細信息,請參閱配置伺服器以偵聽特定
tcp
埠(sql
server
配置管理器)。
更改命名管道
您可以配置命名管道協議以偵聽指定的命名管道。
默認情況下,sql
server
資料庫引擎的默認實例對默認實例偵聽管道
\\.
\pipe\sql\query,對命名實例偵聽
\\.
\pipe\mssql$
\sql\query。
資料庫引擎只能偵聽一個命名管道,但您可以根據需要將該管道更改為其他名稱。
sql
server
browser
服務可幫助客戶端在連接時識別管道。
有關詳細信息,請參閱配置伺服器以偵聽備用管道(sql
server
配置管理器)。
關於埠的詳細信息請參考下面的官方文檔說明:
http://msdn.microsoft.com/zh-cn/library/ms177440.aspx
Ⅲ 怎麼測試c#連接上了sql server2008資料庫
new
sqlconnection(你的連接字元串).open
看是否報錯。
不報錯就連接上了。
Ⅳ 用c語言怎麼連接資料庫呢
1、配置ODBC數據源。
2、使用SQL函數進行連接。
對於1、配置數據源,配置完以後就可以編程操作資料庫了。
對於2、使用SQL函數進行連接,參考代碼如下:
#include<windows.h>
#include<sql.h>
#include<sqlext.h>
voidmain()
{
HENVhenv;//環境句柄
HDBChdbc;//數據源句柄
HSTMThstmt;//執行語句句柄
unsignedchardatasource[]="數據源名稱";//即源中設置的源名稱
unsignedcharuser[]="用戶名";//資料庫的帳戶名
unsignedcharpwd[]="密碼";//資料庫的密碼
unsignedcharsearch[]="selectxmfromstuwherexh=0";
SQLRETURNretcode;//記錄各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身份驗證,第二、三參數可以是
,也可以是任何字串
//SQL_NTS即"
retcode=SQLConnect(hdbc,datasource,SQL_NTS,user,SQL_NTS,pwd,SQL_NTS);
//分配語句句柄
retcode=SQLAllocStmt(hdbc,&hstmt);//等介於SQLAllocHandle(SQL_HANDLE_STMT,hdbc,&hstmt);
//直接執行查詢語句
retcode=SQLExecDirect(hstmt,search,SQL_NTS);
//將數據緩沖區綁定資料庫中的相應欄位(i是查詢結果集列號,queryData是綁定緩沖區,BUFF_LENGTH是緩沖區長度)
SQLBindCol(hstmt,i,SQL_C_CHAR,queryData[i-1],BUFF_LENGTH,0);
//遍歷結果集到相應緩沖區queryData
SQLFetch(hstmt);
/*
*對遍歷結果的相關操作,如顯示等
*/
//注意釋放順序,否則會造成未知錯誤!
SQLFreeHandle(SQL_HANDLE_STMT,hstmt);
SQLDisconnect(hdbc);
SQLFreeHandle(SQL_HANDLE_DBC,hdbc);
SQLFreeHandle(SQL_HANDLE_ENV,henv);
}
Ⅳ 用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;
}
(5)c如何測試網路連接資料庫擴展閱讀
C語言使用注意事項:
1、指針是c語言的靈魂,一定要靈活的使用它:
(1)、指針的聲明,創建,賦值,銷毀等
(2)、指針的類型轉換,傳參,回調等
2、遞歸調用也會經常用到:
(1)、遞歸遍歷樹結構
(2)、遞歸搜索
Ⅵ 如何測試伺服器資料庫是否連接成功
1、 安裝資料庫伺服器。如:MS SQL
Server、MySQL、Oracle。我試著裝MS SQL SERVER 2000。
2、
本機測試:A.直接啟動服務管理器看看能否啟動。B.用查詢分析器看看能否連接服務管理器。C.用企業管理器能否啟動連接服務管理器。成功證明本機使用基本無問題。
3、 另機測試:A.能否PING通伺服器IP.。B.用TELNET 伺服器IP
1433查看1433埠能否連接。(當看到「不能打開到主機的連接,在埠1433:連接失敗。」那是最腦火不過的事情了,為了應用程序能遠程連接資料庫,我真吃了不少苦頭)。當然可安裝客戶端工具,如用查詢分析器測試能否連接。
4、 如上三步沒有問題,資料庫伺服器安裝成功了。
Ⅶ c語言如何檢測網路是否連接
1、如果對方斷開連接的話,那麼readNum = recv ( socketId, rcvBuf, rcvBufSize, 0 );
readNum返回值應該是0,可以根據返回值判斷。
2、recv函數返回值說明
recv函數
int recv( SOCKET s, char FAR *buf, int len, int flags);
不論是客戶還是伺服器應用程序都用recv函數從TCP連接的另一端接收數據。該函數的第一個參數指定接收端套接字描述符; 第二個參數指明一個緩沖區,該緩沖區用來存放recv函數接收到的數據; 第三個參數指明buf的長度; 第四個參數一般置0。
這里只描述同步Socket的recv函數的執行流程。當應用程序調用recv函數時,
(1)recv先等待s的發送緩沖中的數據被協議傳送完畢,如果協議在傳送s的發送緩沖中的數據時出現網路錯誤,那麼recv函數返回SOCKET_ERROR,
(2)如果s的發送緩沖中沒有數據或者數據被協議成功發送完畢後,recv先檢查套接字s的接收緩沖區,如果s接收緩沖區中沒有數據或者協議正在接收數 據,那麼recv就一直等待,直到協議把數據接收完畢。當協議把數據接收完畢,recv函數就把s的接收緩沖中的數據到buf中(注意協議接收到的數據可能大於buf的長度,所以 在這種情況下要調用幾次recv函數才能把s的接收緩沖中的數據完。recv函數僅僅是數據,真正的接收數據是協議來完成的), recv函數返回其實際的位元組數。如果recv在時出錯,那麼它返回SOCKET_ERROR;如果recv函數在等待協議接收數據時網路中斷了,那麼它返回0。 默認 socket 是阻塞的 解阻塞與非阻塞recv返回值沒有區分,都是 <0 出錯 =0 連接關閉 >0 接收到數據大小,
特別:返回值<0時並且(errno == EINTR || errno == EWOULDBLOCK || errno == EAGAIN)的情況下認為連接是正常的,繼續接收。只是阻塞模式下recv會阻塞著接收數據,非阻塞模式下如果沒有數據會返回,不會阻塞著讀,因此需要循環讀取)。
返回說明: 成功執行時,返回接收到的位元組數。另一端已關閉則返回0。失敗返回-1,errno被設為以下的某個值 EAGAIN:套接字已標記為非阻塞,而接收操作被阻塞或者接收超時 EBADF:sock不是有效的描述詞 ECONNREFUSE:遠程主機阻絕網路連接 EFAULT:內存空間訪問出錯 EINTR:操作被信號中斷 EINVAL:參數無效 ENOMEM:內存不足 ENOTCONN:與面向連接關聯的套接字尚未被連接上 ENOTSOCK:sock索引的不是套接字 當返回值是0時,為正常關閉連接;
思考:當對側沒有send,即本側的套接字s的接收緩沖區無數據,返回值是什麼(EAGAIN,原因為超時,待測)
Ⅷ C# 怎麼測試連接資料庫啊
if
(sqlcon.State
==
ConnectionState.Open)
{
來sqlcon.Close();
sqlcon.Dispose();
}
把這段代源碼移到finally,然後就不用else了,Connection用完就關。
Ⅸ Excel 如何測試資料庫連接
Excel程序自帶的外部數據連接功能,可以連接SQL伺服器。具體步驟為:
1、選擇【數據版】選項卡,在【獲取權外部數據】分組,找到【自其他來源】。
2、單擊【自其他來源】按鈕,打開【選擇來源】下拉菜單。
3、選擇【來自SQL Server】打開【數據連接向導】對話框。
4、填寫伺服器名稱、登錄的用戶名及密碼等信息,即可成功連接。