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、填写服务器名称、登录的用户名及密码等信息,即可成功连接。