C程序连接MSSQL的简易操作指南
MSSQL,即Microsoft SQL Server,是一个基于结构化查询语言(SQL)的关系数据库管理系统。在MSSQL的开发框架中有一个ODBC模块,支持与SQL 服务器建立连接,使C程序可以实现连接MSSQL的数据库。而下面将以实例的形式简易的介绍C程序如何实现和MSSQL的连接。
一、首先,准备数据库连接的信息:包括主机名,数据库名称,用户名,密码等。
二、使用Visual Studio编写C程序;完整程序可以参考如下:
#include
#include
#include
#include
int main(int argc, char* argv[])
{
SQLHENV henv; // 定义ODBC环境句柄
SQLHDBC hdbc; // 定义ODBC连接句柄
SQLHSTMT hstmt; // 定义SQL语句句柄
SQLRETURN ret; // ODBC API TODO
char servername[32];//主机名
char databasename[32]; //数据库名
char username[32]; //用户名
char pwd[32]; //密码
// 使用ODBC API函数SQLAllocHandle来为环境句柄和连接句柄分配内存
ret = SQLAllocHandle(SQL_HANDLE_ENV,0, &henv);
ret = SQLAllocHandle(SQL_HANDLE_DBC,henv,&hdbc);
//使用环境句柄设置ODBC连接的参数
ret = SQLSetEnvAttr(henv,SQL_ATTR_ODBC_VERSION,(SQLPOINTER)SQL_OV_ODBC3,0);
//初始化数据库连接字符串
sprintf(servername,”127.0.0.1″);
sprintf(databasename,”mydbname”);
sprintf(username,”myusername”);
sprintf(pwd,”mypassword”);
//以DSN模式建立ODBC连接
char connstr[256];
sprintf(connstr,”DSN=%s; DATABASE=%s; UID=%s; PWD=%s;”,servername,databasename,username,pwd);
ret = SQLDriverConnect(hdbc, NULL, (SQLCHAR*) connstr, SQL_NTS, NULL, 0, NULL, SQL_DRIVER_COMPLETE);
//初始化SQL语句句柄
ret = SQLAllocHandle(SQL_HANDLE_STMT, hdbc, &hstmt);
//实现数据库访问
ret = SQLExecDirect(hstmt, (SQLCHAR*)”SELECT * FROM table WHERE id=1″, SQL_NTS);
//断开ODBC连接
ret = SQLDisconnect(hdbc);
ret = SQLFreeHandle(SQL_HANDLE_DBC,hdbc);
ret = SQLFreeHandle(SQL_HANDLE_ENV, henv);
return 0;
}
三、编译上面的程序,生成相应的可执行文件。
四、最后,运行生成的文件,即可完成C程序和MSSQL之间的连接。
经过以上简单的步骤,实现C程序与MSSQL的连接就成功了。只要按照以上步骤操作,即可以轻松的使用C程序来实现和MSSQL的连接,进而完成与SQL服务器的数据访问工作。