ODBC 连接数据库 SQL server 2008
2013-12-07 08:35
309 查看
1、打开【控制面板】-> 【系统和安全】 -> 【管理工具】-> 【数据源(ODBC)】
2、双击【数据源(ODBC)】-> 选中【系统DSN】
3、单击【添加】,会弹出如下对话框,选中【SQL server】->【完成】
4、弹出如下对话框,在【名称】中填入数据源名称 例如:我命名为: LocalServer,在【服务器】中填入计算机名或者IP地址,我连接的是本机:ANGELNIU-PC(或者是59.73.212.67)
注:服务器名称如果不知道的话,在打开数据库的时候可以看见
5、单击【下一步】 在【登录ID】和【密码】处需填入可以以“SQL server身份验证”登录到数据库的登录名 ,并具有一定的查询权限,选择及填入情况如下图所示:
需要注意的一点是:检查一下【客户端配置】中是否选中了【动态端口】,如果选中了则取消,并在端口号中填入1433,否则会出现错误,具体原因不是很清楚。。。
6、上一步完成之后进入如下界面,【更改默认数据库】一栏选择要操作的数据库名称,点击【下一步】
7、出现如下界面,不需要任何操作,点击【完成】
8、在弹出的界面中单击【测试数据源】,弹出如下界面,即表示连接成功,单击确定,结束即可。
9、在Visual Studio 2010中新建一个项目,写入如下代码:
10、执行代码。显示如下界面,ODBC成功连接数据库!!!
2、双击【数据源(ODBC)】-> 选中【系统DSN】
3、单击【添加】,会弹出如下对话框,选中【SQL server】->【完成】
4、弹出如下对话框,在【名称】中填入数据源名称 例如:我命名为: LocalServer,在【服务器】中填入计算机名或者IP地址,我连接的是本机:ANGELNIU-PC(或者是59.73.212.67)
注:服务器名称如果不知道的话,在打开数据库的时候可以看见
5、单击【下一步】 在【登录ID】和【密码】处需填入可以以“SQL server身份验证”登录到数据库的登录名 ,并具有一定的查询权限,选择及填入情况如下图所示:
需要注意的一点是:检查一下【客户端配置】中是否选中了【动态端口】,如果选中了则取消,并在端口号中填入1433,否则会出现错误,具体原因不是很清楚。。。
6、上一步完成之后进入如下界面,【更改默认数据库】一栏选择要操作的数据库名称,点击【下一步】
7、出现如下界面,不需要任何操作,点击【完成】
8、在弹出的界面中单击【测试数据源】,弹出如下界面,即表示连接成功,单击确定,结束即可。
9、在Visual Studio 2010中新建一个项目,写入如下代码:
#include <stdio.h> #include <string.h> #include <windows.h> #include <sql.h> #include <sqlext.h> #include <sqltypes.h> #include <odbcss.h> #define M 32 SQLHENV henv = SQL_NULL_HENV; SQLHDBC hdbc1 = SQL_NULL_HDBC; SQLHSTMT hstmt1 = SQL_NULL_HSTMT; int main() { SQLCHAR DSN[]="LocalServer"; SQLCHAR user[]="sa"; SQLCHAR pwd[]=""; RETCODE ret; SQLCHAR name[M]; SQLINTEGER nameLen; SQLINTEGER age; SQLINTEGER ageLen; ret = SQLAllocHandle(SQL_HANDLE_ENV, NULL, &henv); ret = SQLSetEnvAttr(henv, SQL_ATTR_ODBC_VERSION, (SQLPOINTER)SQL_OV_ODBC3, SQL_IS_INTEGER); ret = SQLAllocHandle(SQL_HANDLE_DBC, henv, &hdbc1); ret = SQLConnect(hdbc1, DSN,SQL_NTS, user,SQL_NTS, pwd,SQL_NTS); if ( !SUCCEEDED(ret) ) { //if ( (ret != SQL_SUCCESS) && (ret != SQL_SUCCESS_WITH_INFO) ) { printf("Fail to connect !\n"); } else { printf("Connection OK !\n"); } ret = SQLAllocHandle(SQL_HANDLE_STMT, hdbc1, &hstmt1); ret = SQLPrepare(hstmt1, (UCHAR*)"SELECT Sname,Sage FROM Student", SQL_NTS); ret = SQLExecute(hstmt1); // Previous two statements can be replaced with the following one: // ret = SQLExecDirect(hstmt1, (UCHAR*)"SELECT Sname,Sage FROM Student", SQL_NTS); ret = SQLBindCol(hstmt1, 1, SQL_C_CHAR, name, M, &nameLen); ret = SQLBindCol(hstmt1, 2, SQL_C_LONG, &age, 0, &ageLen); while ( ( ret = SQLFetch(hstmt1) ) != SQL_NO_DATA ) printf("%s, %d\n", name,age); SQLFreeHandle(SQL_HANDLE_STMT, hstmt1); SQLDisconnect(hdbc1); SQLFreeHandle(SQL_HANDLE_DBC, hdbc1); SQLFreeHandle(SQL_HANDLE_ENV, henv); system("pause"); return(0); }
10、执行代码。显示如下界面,ODBC成功连接数据库!!!
相关文章推荐
- ASP通过ODBC连接SQL Server 2008数据库的方法
- Android通过JTDS直接连接SQL Server 2008数据库
- SQL Server 2008 R2 开启数据库远程连接
- VMware系统运维(四)SQL Server 2008 R2 新建数据库与ODBC数据
- Tomcat6.0配置连接池连接SQL Server 2008数据库
- [sql server 2008 r2] 开启数据库远程连接
- 最新ssh框架连接sql server 2008数据库的一些列问题
- C#程序连接Sql Server 2008 R2数据库
- 关于c# 与sql server 2008数据库连接
- 使用MultipleActiveResultSets复用Sql Server 2008数据库连接
- 关于sql server 2000与sql server 2008的数据库连接
- SQL Server 2008 R2如何开启数据库的远程连接
- php连接sql server 2008数据库
- Java使用tomcat连接Sql server 2008数据库
- JDBC连接sql server 2008数据库
- Tomcat6.0配置连接池连接SQL Server 2008数据库
- sql server 数据库 2008 r2 允许远程连接
- Sql Server 2008用ODBC连接到SYBASE ASE
- SQL SERVER 2008 删除某个数据库的所有连接进程
- winform —— 连接数据库SQL Server 2008