当前位置: 技术问答>linux和unix
关于使用DB-Library用C语言连接SQL Server数据库的问题
来源: 互联网 发布时间:2016-01-12
本文导语: main(argc, argv) int argc; char *argv[]; { DBPROCESS *dbproc; /* Our connection with SQL Server. * LOGINREC *login; /* Our login information. */ DBCHAR password[20]; RETCODE result_code; fflush(stdout); /* Initialize DB-Library. */ i...
main(argc, argv)
int argc;
char *argv[];
{
DBPROCESS *dbproc; /* Our connection with SQL Server. *
LOGINREC *login; /* Our login information. */
DBCHAR password[20];
RETCODE result_code;
fflush(stdout);
/* Initialize DB-Library. */
if (dbinit() == FAIL)
exit(ERREXIT);
login = dblogin();
DBSETLUSER(login, "sa");
DBSETLPWD(login,"passwd");
dbproc = dbopen(login, "sql");
dbcmd(dbproc, "select password from author order by authorid");
dbsqlexec(dbproc);
while ((result_code = dbresults(dbproc)) != NO_MORE_RESULTS)
{
if (result_code == SUCCEED)
{
dbbind(dbproc, 1,NTBSTRINGBIND, (DBINT)0, (BYTE *)password);
printf("n The password is:");
while (dbnextrow(dbproc) != NO_MORE_ROWS)
{
printf("%sn",password);
}
}
}
dbexit();
exit(STDEXIT);
}
这几天一个项目中用到C语言连接SQL Server数据库的问题,上面是在网上找到的一段代码,使用的是DB-Library连接数据库.我的疑问是,这段代码如何连接远端的数据库的,数据库连接语句中没看到有对远端数据库服务器连接用到的IP地址和端口号赋值的啊,没有IP地址和端口号如何连接远端的数据库服务器呢?难道在
main(argc, argv)
int argc;
char *argv[];
一般的程序是通过argv变量传进IP地址及端口号的,但是这个地方在程序里也没有对argv参数的处理,请达人指点,这段程序到底如何连接远端的数据库服务器的呢?
int argc;
char *argv[];
{
DBPROCESS *dbproc; /* Our connection with SQL Server. *
LOGINREC *login; /* Our login information. */
DBCHAR password[20];
RETCODE result_code;
fflush(stdout);
/* Initialize DB-Library. */
if (dbinit() == FAIL)
exit(ERREXIT);
login = dblogin();
DBSETLUSER(login, "sa");
DBSETLPWD(login,"passwd");
dbproc = dbopen(login, "sql");
dbcmd(dbproc, "select password from author order by authorid");
dbsqlexec(dbproc);
while ((result_code = dbresults(dbproc)) != NO_MORE_RESULTS)
{
if (result_code == SUCCEED)
{
dbbind(dbproc, 1,NTBSTRINGBIND, (DBINT)0, (BYTE *)password);
printf("n The password is:");
while (dbnextrow(dbproc) != NO_MORE_ROWS)
{
printf("%sn",password);
}
}
}
dbexit();
exit(STDEXIT);
}
这几天一个项目中用到C语言连接SQL Server数据库的问题,上面是在网上找到的一段代码,使用的是DB-Library连接数据库.我的疑问是,这段代码如何连接远端的数据库的,数据库连接语句中没看到有对远端数据库服务器连接用到的IP地址和端口号赋值的啊,没有IP地址和端口号如何连接远端的数据库服务器呢?难道在
main(argc, argv)
int argc;
char *argv[];
一般的程序是通过argv变量传进IP地址及端口号的,但是这个地方在程序里也没有对argv参数的处理,请达人指点,这段程序到底如何连接远端的数据库服务器的呢?
|
关键是这行
dbproc = dbopen(login, "sql");
"sql" 是在freetds.conf中定义的
如:
[sql]
host = ntbox.mydomain.com
port = 1433
dbproc = dbopen(login, "sql");
"sql" 是在freetds.conf中定义的
如:
[sql]
host = ntbox.mydomain.com
port = 1433