ODBC链接SQL Server 数据库
时间: 2024-06-11 17:06:53 浏览: 158
ODBC(Open Database Connectivity)是一种通用的数据库访问方法,可以连接各种不同的数据库,包括SQL Server数据库。下面是连接SQL Server数据库的步骤:
1. 安装SQL Server ODBC驱动程序
首先需要安装SQL Server ODBC驱动程序,可以从Microsoft官网下载并安装。
2. 配置ODBC数据源
在控制面板的“管理工具”中打开“ODBC数据源(64位)”或“ODBC数据源(32位)”窗口,点击“添加”按钮创建一个新的数据源。
选择“SQL Server”作为数据源类型,并填写SQL Server数据库的服务器名称、登录信息和数据库名称等信息。
3. 测试连接
填写完毕后,点击“测试连接”按钮测试连接是否成功。
4. 连接SQL Server数据库
在应用程序中使用ODBC API或ODBC驱动程序连接SQL Server数据库。
例如,在C++中使用ODBC API连接SQL Server数据库的示例代码:
```
#include <windows.h>
#include <sql.h>
#include <sqlext.h>
#include <stdio.h>
int main()
{
SQLHENV env;
SQLHDBC dbc;
SQLHSTMT stmt;
SQLRETURN ret;
SQLCHAR outstr[1024];
SQLSMALLINT outstrlen;
// Allocate environment handle
SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &env);
// Set the ODBC version environment attribute
SQLSetEnvAttr(env, SQL_ATTR_ODBC_VERSION, (void*)SQL_OV_ODBC3, 0);
// Allocate connection handle
SQLAllocHandle(SQL_HANDLE_DBC, env, &dbc);
// Connect to SQL Server database
SQLConnect(dbc, (SQLCHAR*)"mydatasource", SQL_NTS, (SQLCHAR*)"myusername", SQL_NTS, (SQLCHAR*)"mypassword", SQL_NTS);
// Allocate statement handle
SQLAllocHandle(SQL_HANDLE_STMT, dbc, &stmt);
// Execute SQL statement
SQLExecDirect(stmt, (SQLCHAR*)"SELECT * FROM mytable", SQL_NTS);
// Fetch results
while (SQLFetch(stmt) == SQL_SUCCESS)
{
// Get column data
SQLGetData(stmt, 1, SQL_C_CHAR, outstr, sizeof(outstr), &outstrlen);
printf("%s\n", outstr);
}
// Free statement handle
SQLFreeHandle(SQL_HANDLE_STMT, stmt);
// Disconnect from SQL Server database
SQLDisconnect(dbc);
// Free connection handle
SQLFreeHandle(SQL_HANDLE_DBC, dbc);
// Free environment handle
SQLFreeHandle(SQL_HANDLE_ENV, env);
return 0;
}
```
阅读全文