VC++与SQL_Server_2000连接
- 格式:doc
- 大小:374.50 KB
- 文档页数:14
SQL2000的安装方法快捷实用1、如果在安装的过程中,出现文件挂起的提示,则打开注册表编辑器,在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SeionManager中找到PendingFileRenameOperation项目,并删除它,这样就可以清除安装暂挂提示了。
2、对于安装Window2000Server或者Window2003Server,建议安装SQL2000企业版、SQL2000专业版或者SQL2000标准版。
3、对于桌面操作系统做服务器,建议安装SQL2000个人版。
4、在安装完SQL2000后,必须打SQL2000的SP4补丁。
注意:数据库建议不要安装在C盘,如果数据库安装程序是拷贝在硬盘安装,建议直接在硬盘根目录下创建“qletup”目录,如:“c:\qletup”,然后把安装程序拷贝到此目录进行安装,目录级数不要创建太多,目录名不要带汉字,否则在安装的过程中系统会报错。
补丁目录如:“c:\qlp4”。
5、具体安装步骤如下:如果是光盘安装,则系统自动进入安装选择界面,如果是在硬盘安装,则运行“AUTO RUN.E某E”程序,如下图界面:进入安装选择界面:快捷实用选择“安装SQLServer2000组件”,具体操作界面如下:选择“安装数据库服务器”,具体操作界面如下:快捷实用点击《下一步》按钮,具体操作界面如下:选择“本地计算机”,点击《下一步》按钮,具体操作界面如下:本界面正常情况不出现,如果出现本界面,解决方法如下:快捷实用点系统《开始》按钮,找到“运行”,点击它,界面如下:在打开框里面输入“regedit”,然后点击《确定》按钮,进入注册表界面:快捷实用进入“HKEY_LOC AL_MACHINE\SYSTEM\CurrentControlSet\Control\SeionManag er”,在右边找到PendingFileRenameOperation项目,并删除它,然后回到安装界面继续。
SQL2000远程服务器连接方法1:看ping 服务器IP能否ping通。
2:在Dos或命令行下输入telnet 服务器IP 端口,看能否连通。
如telnet 202.114.100.100 1433 通常端口值是1433,因为1433是sql server 2000的对于Tcp/IP的默认侦听端口。
如果有问题,通常这一步会出问题。
通常的提示是“……无法打开连接,连接失败"。
如果这一步有问题,应该检查以下选项。
1)检查远程服务器是否启动了sql server 2000服务。
如果没有,则启动。
2)检查服务器端有没启用Tcp/IP协议,因为远程连接(通过因特网)需要靠这个协议。
检查方法是,在服务器上打开开始菜单-> 程序-> Microsoft SQL Server-> 服务器网络实用工具,看启用的协议里是否有tcp/ip协议,如果没有,则启用它。
3)检查服务器的tcp/ip端口是否配置为1433端口。
仍然在服务器网络实用工具里查看启用协议里面的tcp/ip的属性,确保默认端口为1433,并且隐藏服务器复选框没有勾上。
事实上,如果默认端口被修改,也是可以的,但是在客户端做 telnet测试时,写服务器端口号时必须与服务器配置的端口号保持一致。
如果隐藏服务器复选框被勾选,则意味着客户端无法通过枚举服务器来看到这台服务器,起到了保护的作用,但不影响连接,但是Tcp/ip协议的默认端口将被隐式修改为2433,在客户端连接时必须作相应的改变。
4)如果服务器端操作系统打过sp2补丁,则要对windows防火墙作一定的配置,要对它开放1433端口,通常在测试时可以直接关掉windows防火墙(其他的防火墙也关掉最好)。
5)检查服务器是否在1433端口侦听。
如果服务器没有在tcp连接的1433端口侦听,则是连接不上的。
检查方法是在服务器的dos或命令行下面输入netstat -a -n 或者是netstat -an,在结果列表里看是否有类似 tcp 127.0.0.1 1433 listening 的项。
SQL2000安装及系统连接说明
首先把光盘中的全部文件复制到电脑中。
解压“SQLserver2000个人版XP能用.rar”
解压“SQL2000_PER.rar”
进入解压文件夹,出现如下界面:
双击“autorun.exe”,出现下面界面,
选择安装“安装SQL Server 2000 组件(C)”,进入下面界面:
选择“安装数据库服务器(s)”,进入下面:
下一步:
下一步:
下一步:姓名和公司随便填写,默认就行。
下一步:
序列号:H6TWQ-TQQM8-HXJYG-D69F7-R84VM
下一步:
下一步:
下一步:
下一步:请注意下图,在“服务设置”里面选择“使用本地系统帐户”
下一步:注意:请选择如下图所示。
密码为小写的sdkdxxx
下一步:
CD KEY为:H6TWQ-TQQM8-HXJYG-D69F7-R84VM
安装完之后,点击如下图所示
打开如下界面,右键点击“数据库”,
点击“确定”就完成了。
点击如下图:
复制计算机的序列号,找到在光盘中复制的文件中有一个
,如果没有就双击一下运行程序
,此时运行系统会出现错误,我们做此步是为了出现
图标,
接着关闭运行程序就行。
双击运行,把
1.服务器名称里面的数字清空,粘帖刚才复制的那一串数字,
2.用户名:sa
密码:sdkdxxx,
3.在服务器上选择数据库
HWDB
点击“测试连接”,如果出现“测试连接成功”,在点击“确定”。
这样就可以正常运行软件了。
如下图:,。
如何解决SQLServer2000中的连接问题-MSSQL-数据库,技术教程-E...概要本文能帮助您解决Microsoft SQL Server 2000 的连接问题。
本文描述了常见连接问题和所能采取的有助于解决连接问题的步骤。
SQL Server 2000 支持 SQL Server 实例和客户端应用程序间的多种通信方式。
如果您的客户端应用程序和 SQL Server 实例位于同一台计算机上,那么 Microsoft Windows 处理之间的通讯(IPC) 部件(例如本地命名管道或共享内存协议)将被用于通信。
但是,当客户端应用程序和 SQL Server 实例位于不同计算机上时,一个网络 IPC(例如 TCP/IP 或命名管道)将被用于通信。
SQL Server 2000 使用网络库(一个 DLL)与特定的网络协议进行通信。
一对匹配网络库必须在客户端计算机上激活,而且在支持待用网络协议的服务器计算机上也必须是激活的。
例如,如果您想启用一个客户端应用程序,通过 TCP/IP 与某个特定的 SQL Server 实例通信,那么客户端的TCP/IP 套接字网络库(Dbnetlib.dll) 就必须配置为连接到客户端计算机的服务器。
同样,服务器 TCP/IP 套接字网络库 (Ssnetlib.dll) 必须侦听服务器计算机。
在此方案中,TCP/IP 协议堆栈必须同时安装在客户端计算机和服务器计算机上。
在安装完SQL Server 2000 之后,您可以通过客户端网络实用程序来配置客户端网络库的属性。
您可以通过服务器网络实用程序(Svrnetcn.exe) 来配置服务器网络库的属性。
在安装SQL Server 安装程序中的服务器工具时,服务器的网络库也同时被安装了。
但是,某些服务器的网络库可能未被激活。
在默认情况下,SQL Server 2000 启用并侦听TCP/IP、命名管道和共享内存。
因此,如果一个客户端要连接到一台服务器计算机,该客户端必须使用一个客户端网络库,该网络库须与 SQL Server 实例正在使用的服务器网络库之一相匹配。
SQL Server 2000连接不上问题的处理一."SQL Server 不存在或访问被拒绝"1.检查物理连接:在命令提示符下执行: ping <服务器ip地址>连接不上可能原因:(1) 服务器IP拼写错误。
(2) 服务器有防火墙。
比如ISA Server,瑞星防火墙、天网防火墙。
因此在检查连接问题的时候,我们要先把防火墙软件暂时关闭,或者打开所有被封闭的端口.(3) 网络不通(物理连接有问题)这时候要检查硬件设备,如网卡,HUB,路由器等.2.检查服务器端问题:在命令提示符下执行:telnet <服务器ip地址> 1433如果命令执行成功,可以看到屏幕一闪之后光标在左上角不停闪动,这说明 SQL Server 服务器工作正常,并且正在监听1433端口的 TCP/IP 连接,如果命令返回"无法打开连接"的错误信息连接不上可能原因:(1) 服务器有防火墙(2) 服务器SQLServer没有启动(2) 服务器SQLServer没有打补丁。
因为SQLServer打补丁后,监听的是0.0.0.0,支持所有网卡。
没打补丁不支持。
检查你的SQL有没有打补丁的方法是在查询分析器中运行:select @@version如果出来的版本号是8.00.760以下,则表明你未安装sp3的补丁,要装上.SQL补丁SP4下载地址:/downloads/details.aspx?FamilyID=8e2dfc8d-c20e-4446-99a9-b7f0213f8bc5&Dis playLang=zh-cn应该安装的是:SQL2000-KB884525-SP4-x86-CHS.EXESQL补丁SP3下载地址:/download/d/d/e/dde427eb-0296-4eac-a47c-d11a66b03816/chs_sql2ksp3.exe注意下载后,执行的时候是解压,要在解压后的目录中执行setup.bat才是真正的安装(3) 服务器SQLServer不是默认的1433端口或没有启用TCP/IP协议服务器点击:程序 --> Microsoft SQL Server--> 服务器网络使用工具打开该工具后,在"常规"中可以看到服务器启用了哪些协议:一般而言,我们启用TCP/IP 协议及命名管道.点中 TCP/IP 协议,选择"属性",我们可以来检查 SQL Server 服务默认端口的设置:一般而言,我们使用SQL Server 默认的1433端口.如果选中"隐藏服务器",则意味着端口变为2433,且客户端无法通过枚举服务器来看到这台服务器,起到了保护的作用,但不影响连接.3.检查客户端问题:查询分析器中进行连接,使用用ip连接:(1) 文件 -- 连接 -- 连接SQL Server(2) SQLServer:服务器ip地址(3) 连接使用:SQLServer身份验证,登录名:SA,密码:(空)(注:根据对方的SQL配置确定采用什么身份验证方式:企业管理器--右键SQL实例--属性--安全性--身份验证)(4) 确定连接不上可能原因:(1)SQL Server名称拼写有误。
为了实现JDBC连接SQL Server数据库,有以下几步:1.SQL Server的安装如果是第一次安装,那不会有什么安装故障。
如果机子上已经安装过一次,然后卸载了再装的,那么要做以下更改才能重新安装SQL Server.①把C:\Program Files\Microsoft SQL Server文件夹整个删掉;②运行注册表,删除如下项:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL ServerHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MssqlServerHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MssqlSERVER HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SQLSERVERA GENTHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MssqlSERVER ADHELPERHKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL Server③按下列顺序点击打开+ HKEY_LOCAL_MACHINE+ SOFTWART+ Microsoft+ Windows+ CurrentVersion+ Setup+ ExceptionComponents④需要的话就重新启动系统如果在安装过程中出现出现”安装挂起的错误”,那么在以下操作:在运行窗口输入regedit,打开注册表编辑器,在HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager中找到PendingFileRenameOperations,删除该键值(这个键值是安装程序暂挂项目,只要找到对应的应用程序清除掉就行了),关闭注册表编辑器。
VC连接SQL2000数据库对于初学VC的朋友来说,连接数据库其实是一件不容易的事情。
记得我当时为了与数据库连接上,找了好多资料,上网看了好多文章,都没有解决这个问题。
后来,有个网友帮我解决了,我再次表示感谢。
为了后来VC初学的朋友的方便,我现在将VC连接SQL2000数据库的方法写下来,就算你是初学,即使刚入门,也可以成功连接数据库的。
(注意:由于文章过长,本文章未写完,如果想要整个的代码,可以留个邮箱,或发邮件到yinfulin888888@索要)先做点准备工作吧。
1学VC连接数据库,要安装两个软件,Visual C++6.0和SQL2000。
怎么安装,我不说了。
2要连接数据库先要启动SQL2000的服务器,看下图吧单击开始,就可以启动了。
3然后,还是上面,打开“企业管理器”,要建立数据库和表了。
打开根目录后,有个(local)(WindowsNT)的,在上面单击右键,选择属性,再选择安全性,身份验证选择上面那个SQL Server和Windows,再确定,是。
等一下就好了。
4建立数据库,在“数据库”根目录上,单击右键,选择“新建数据库”,输入数据库名字db_client(也可以用其他的名字,但是下面有些地方会用到),展开db_client,在“表”上右键单击,选择“新建表”,建立如下表:完成之后,直接关闭,提示保存,选择“是”,然后填入表名字,tb_user,即可。
然后在表中填入数据。
右键单击刚建立的表tb_user,选择“打开表”,“返回所以行”,填入数据,(为了方便登录,第一行都输入1吧)。
这样表就建立好了。
5现在要开始正式编程了。
打开VC6.0.选择“文件”,“新建”,“工程”,MFC AppWizard(exe),工程名字为:Client,路径自己选择一下吧。
第一步,选择“对话框应用程序”,直接“完成”。
6现在要开始写程序了,先新建一个类吧,“Insert”,“New class”,classicType 选择:Generic Classic,Name 为:CADO,OK即可。
Java链接SqlServer2000今天帮同学调试一个jsp+Servlet+JavaBean的小型网站。
需要使用sql server 2000数据库。
研究了整整一下午,愣是没有解决java链接SqlServer2000的问题。
晚上10点多了,头疼的和室友玩了一把Dota。
在游戏的时候,我仔细思考为什么能发生这种情况,总结如下:一、链接sql Server 2000的时候,必须安装补丁,在网上下载了sp4,安装之后,解压目录如下,然后运行setup.bat,在安装前需要将防火墙关掉。
二、所需要的jar包:msbase.jarmssqlserver.jarmsutil.jar三、连接数据库:package com.jdbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;public class test {public static void main(String[] args) throws ClassNotFoundException {String driver ="com.microsoft.jdbc.sqlserver.SQLServerDriver";String url ="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName =xcsgl";Class.forName(driver);System.out.println("Driver is OK");try {Connection conn = DriverManager.getConnection(url, "sa", "1314521");System.out.println("Connect to DBMS is OK!");conn.close();} catch (SQLException e) {e.printStackTrace();}}}经过测试,哦!原来sql server 2000是这样链的!!这么简单!!!。
19.4 SQL中嵌入式SQL的编译运行C语言中嵌入SQL语句的方式在pubs数据库中创建一个mystudent表插入数据读取显示。
第一步:编写预编译代码具体代码如下:c语言实现#include <stdio.h>#include <stdlib.h>EXEC SQL INCLUDE sqlca;int main(){EXEC SQL BEGIN DECLARE SECTION;//用于定义用于登录数据库操作的一些变量char sno[5];char sname[10];int age;char city[10];short cityInd;EXEC SQL END DECLARE SECTION;printf("嵌入式SQL的应用\n");EXEC SQL CONNECT TO pubs USER sa.790904;if(SQLCODE==0){printf("数据库连接成功!\n");}else{//连接DBMSprintf("ERROR:连接数据库失败!");return (1);}//程序的主体部分EXEC SQL create table mystudent(sno char(5) primary key,sname char(10) not null,age int,city char(10));EXEC SQL insert into mystudent values('9601','王永',21,'天津');EXEC SQL insert into mystudent values('9602','李萍',19,'北京');EXEC SQL insert into mystudent values('9603','高太',20,'天津');EXEC SQL insert into mystudent values('9604','刘静',20,'天津');EXEC SQL insert into mystudent values('9605','王东',23,'上海');EXEC SQL insert into mystudent values('9606','李大为',22,null);EXEC SQL WHENEVER SQLERROR GOTO error;EXEC SQL WHENEVER NOT FOUND GOTO done;EXEC SQL DECLARE mystudentCursor CURSOR FORSELECT sname,city from mystudent;EXEC SQL OPEN mystudentCursor;printf("mystudent表中的姓名和城市信息如下:\n");for(;;){//fetch net row of the result tableEXEC SQL FETCH mystudentCursor INTO:sname,:city:cityInd;//display dataprintf("姓名:%s ",sname);if(cityInd<0)//通过设置指示变量,并判断指示变量的值<0来确认输出null值printf("城市:NULL\n");elseprintf("城市:%s\n",city);}error:printf("SQL error %d\n",sqlca->sqlcode);done://close the cursor befor the comletingEXEC SQL WHENEVER SQLERROR continue;EXEC SQL CLOSE mystudentCursor;EXEC SQL COMMIT WORK RELEASE;//释放资源清除环境EXEC SQL DISCONNECT ALL;return 0;}文本编辑器编辑,并保存为esqlc.sqc第二步:预编译文件预编译器nsqlprep.exe 在安装目录的MSSQL\Binn下【由于典型安装方式并没有安装应用程序nsqlprep.exe,需要到安装盘中x86\binn目录下copy】Sql Server 2000 为其嵌入式SQL提供了一些特殊的接口,然而默认的安装并没有安装这些接口,因此需要把安装盘中的devtools文件夹中的文件拷贝到SQL SERVER的系统目录下边(注意系统目录不是安装目录)。
方法一:ADO Data 控件是使用ADO技术访问数据库的具体实现。
可以使用ADO Data 控件快速创建一个到数据库的连接;使用Recordset对象提供对存储在数据库中数据的访问,并允许从一个记录移动到另一个记录,显示和操作记录数据但是它不能够显示数据库中数据的内容。
通常需要其他控件结合使用。
1.ADO Data控件需要用户自己手动添加。
系统菜单中选择“Project”---->“Add to Project”----->“Components and Controls”,打开“Components and Controls Gallery”的对话框,如图所示:双击“Registered ActiveX Controls”目录,可以看到已经注册的ActiveX控件,如图:双击“Microsoft ADO Data Control 6.0 (SP6) (OLEDB)”弹出如图对话框:单击“确定”,打开“Confirm Classes”窗口,为使用户能够在工程中使用ADO Data 控件,系统将在工程中自动添加7个类。
单击OK,返回对话框。
控件工具栏中新增了一个按钮,这就是ADO Data控件。
2.工程中控件工具栏选中ADO Data控件,打开控件属性,如图所示(这里数据库是用户所要用到的数据库,根据自己需要而建)单击build.如图所示选择,单击下一步,如图:单击记录源选项卡,在命令类型组合框中选择“2—adCmdTable”,然后在“表或存储过程名称”组合框中选择你要用到的数据库中的表,如图:3.要想显示数据,还需要其他控件配合同样方法添加“Microsoft DataGrid Control 6.0 (SP6) (OLEDB)”,对话框中添加DataGrid控件,属性。
如图所示。
在DataSource属性中,选择IDC_ADODC1,表示DataGrid控件接受ADO Data控件结果集中的数据。
Caption属性设置为你想要的名字这样运行一下就可以看到数据库中的内容了。
如何显示表中部分作为输出列呢?打开ADO Datqa控件的属性窗口,单击记录源选项卡,在命令类型组合框中选择“1—adCmdText”,在命令文本编辑框中输入下面命令:SELECT * FROM 表名为ADO Data 和DataGrid控件关联变量然后在C**Dlg::OnInitDialog()中添加如下代码:(**代表你所建的工程名)m_adodc.SetRecordSource("SQL 语句");m_adodc.Refresh();下面介绍如何在程序中设置DataGrid控件中各列的宽度。
需要在**Dlg.cpp中添加#include "column.h"#include "columns.h"在C**Dlg::OnInitDialog()中继续添加程序:_variant_t vIndex;vIndex=long(0);m_datagrid.GetColumns().GetItem(vIndex).SetWidth(0);vIndex=long(1);m_datagrid.GetColumns().GetItem(vIndex).SetWidth(80);..............................................................................................vIndex=long(n);m_datagrid.GetColumns().GetItem(vIndex).SetWidth(m);//GetColumns() 返回CColumns对象;//GetItem() 返回CColumn对象,此时已经确定了表格中具体的一列;//SetWidth() 函数设置列的宽度CString CDataGrid::GetItem(int ColNum){CColumns cols =GetColumns();V ARIANT v_ColNum,v_Value;v_ColNum.vt=VT_I2; //整形v_ColNum..iVal=ColNum;CColumn col =cols.GetItem(v_ColNum);v_Value=col.GetValue();retrun v_Value.bstrVal;}datagrid.cpp中需要添加#include "Column.h";datagrid.h 中添加CString GetItem(int ColNum);4.DataList控件和DataCombo控件添加方法同上。
举个例子,简单介绍一下:添加控件,关联变量:IDC_ADODC1 Control/CAdodc m_dodc1IDC_ADODC2 Control/CAdodc m_dodc2IDC_DATACOMBO1 Control/CDataCombo m_datacomboIDC_DATALIST2 Control/CDataList m_datalist控件属性:ADO Data 通用--->ConnectionString(按照之前讲解的方法连接数据库)CommandType 2-Table CommandTypeRecordSource 表名ADO Data 通用--->ConnectionString(按照之前讲解的方法连接数据库)CommandType 1-Text CommandTypeRecordSource SELECT * FROM 表名DataCombo RowSource IDC_ADODC1ListField 要显示的表中某段名,用来填充DataCombo控件的列表部分BoundColumn 段名,可看作DataList控件或DataCombo控件当前值变化后的输出值DataList RowSource IDC_ADODC2ListField 要显示的表中某段名,用来填充DataList控件的列表部分BoundColumn 段名,可看作DataList控件或DataCombo控件当前值变化后的输出值C**Dlg::OnChangeDatacombo1(){CString fileId="" // fileId 是我所用到数据库中表的一个段名CString vSql="SELECT * FROM 表名";//表名根据实际来写vDepId=m_dataCombo.GetBoundText();If(vDepId!="")vSql=vSql+"WHERE fileId="+vDepId;m_adodc2.SetRecordSource(vSql);m_adodc2.Refresh();}方法二:使用ADO访问数据库:连接到数据源;指定访问数据源命令;执行命令;若命令是数据按表中行的形式返回,则将这些行存储在异于检查、操作或更改的缓存中;适当情况下,可以更改数据库内容;提供常规的方法检测错误,ADO的Error对象。
1.在stdafx.h中#endif // _AFX_NO_AFXCMN_SUPPORT后添加#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespacerename("EOF","adoEOF")rename("BOF","adoBOF") //不要换行哦~2.初始化OLE/COM库环境,连接数据库BOOL C**Dlg::OnInitDialog()中添加如下程序:::CoInitialize(NULL);try{m_pConnection.CreateInstance("ADODB.Connection");_bstr_t strConnect="Provider=SQLOLEDB;Sever=ntserver;Database=breast;uid=sa;pwd=sa;"; // ""内部Provider数据源提供者,Sever 数据库服务器,Database 数据库名,uid 登陆用户名,pwd 用户密码;一会单独介绍“”内部的简单填写方式。
m_pConnection->Open(strConnect,"","",adModeUnknown);if(m_pConnection->State==adStateOpen)MessageBox("连接数据库");}catch(_com_error e){AfxMessageBox(e.ErrorMessage());}m_pRecordset.CreateInstance(__uuidof(Recordset)); //创建记录集对象m_pRecordsert->Open(bstrSQL,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptim istic,adCmdText); //取得表中记录catch(_com_error e){AfxMessageBox(e.ErrorMessage());}//其中bstrSQL 是要执行的SQL语句执行SQL语句m_pConnection->Execute(bstrSQL,NULL,adCmdText);例如:m_pRecordset->Open("select * frompicture",m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);3.其他的语句m_pRecordset->AddNew(); //添加新行m_pRecordset->GetFields()->GetItem("编号")->Value = (_bstr_t)m_id; //记录集中获得某一字段数据m_pRecordset->GetFields()->GetItem("照片")->AppendChunk(&m_bitdata);//在记录集中设置图像数据m_pRecordset->Upda //保存当前记录long lDataSize = m_pRecordset->GetFields()->GetItem("字段名")->ActualSize;//读取某字段实际大小4.断开数据库连接,关闭记录集If(m_pRecordset!=NULL)m_pRecordset->Close();m_pConnection->Close();::CoUninitialize();为了方便使用,我们可以创建一个ADOConn类,来实现上边的功能。