VisualC++6.0连接SQLServer2005数据库的ADO方法_第1页
VisualC++6.0连接SQLServer2005数据库的ADO方法_第2页
VisualC++6.0连接SQLServer2005数据库的ADO方法_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、(1) Windows环境下,ODBC数据源的配置方法:1) 开始一设置一控制面板一管理工具一双击“数据源(ODBC)”。2)在ODBC数据源管理器中,单击“系统 DSN”标签;单击“添加(D)”按钮,并在“列表框”中选择“SQL Server”,然后单击“完成”。 如果已经存在现有的数据源,贝诞择指定的数据源后,单击“配置”,转 向对该数据源进行重新配置。3)在创建到SQL Server新数据源窗口(如图10-4)中的“名称(M): ” 右侧,输入:VCSQLServer2005;“描述(D): ”右侧,输入:VC SQL Server 2005;“服务器(S): ”右侧,输入:指定服务器的

2、位置和名称(通常使用默认服务器,输入一个英文字符半角圆点.)。图10-4 ODBC数据源设置4) 在创建到SQL Server新数据源窗口中,单击“下一步(N) >”, 选择“使用网络登录ID的Windows NT验证(W) ”或者“使用用户输 入登录ID和密码的SQL Server (S)”(默认选择前者),然后单击“下 一步(N) >”。5)在创建到SQL Server新数据源窗口中,勾选“更改默认的数据库 为(D):”,并在其下方的下拉列表框中,选择用户连接的默认数据库(本例选择:VcSqIAdoDB ),然后单击“下一步(N) >”,再单击“完 成”。6)在ODBC

3、Microsoft SQL Server安装窗口中,单击“测试数据源(T)”,等待测试成功后,单击“确定”完成数据源配置。(2) Windows 环境下,Visual C+ 6.0 连接 SQLServer 2005数据库的 ADO方法:1)引入ADO库定义文件,初始化COM库使用# import把动态连接库 msado15.dll导入Visual C+应用程序,并 生成定义ADO库的两个C+头文件:msado15.tlh和ado15.tli。即:# import "c:Program FilesCom mon FilesSystemADOmsado15.dll" no_n

4、 amespace ren ame("EOF","E ndOfFile")使用CoInitialize ()初始化COM库。即::CoI nitialize(NULL);2)创建Conn ection对象,并使用Co nn ection对象连接数据源。首先,添加一个指向 Connection对象的指针 m_pConnection。即:: _Co nn ectio nPtr m_pCo nn ectio n( "ADODB.Co nn ectio n");其次,创建Connection对象。即:m_pC onn ectio n.Crea

5、tel nsta nce("ADODB.Co nn ectio n");再次,利用Conn ection对象的Open方法,通过DSN数据源对任何 支持ODBC数据源的数据库进行 ADO连接(默认数据库:VcSqIAdoDB)。 即:strCo nn ect="DSN=VCSQLServer2005;Provider=MSDASQL; Server=(local); Database=VcSqlAdoDB; uid=sa; pwd=123;"m_pC onn ecti on-> Ope n (strC onn ect,"",&q

6、uot;", adModeU nknown); 技巧:strConnect必须是_bstr_t或者BSTR类型。如果是远程 数据库,则Server改为指定网址(例如:192.168.1.5,3340 ; sa和123是数据库的授权帐户和密码。3) 利用Connection对象,执行SQL Server语句。在利用Connection对象连接数据源成功之后,就可以使用Execute方法执行任意合法的SQL Server语句,相当于拥有了 SQL Server。即:char * SQLComma nd= "SQL Server 语句"m_pCo nn ectio n-

7、>Execute(SQLComma nd, NULL, 1);例如:在表Studentlnfo删除姓名为“ HappyTupIe”的记录。即:char * DeleteRecord = "DELETE FROM Stude ntlnfo WHERESName='HappyTupIe'"m_pC onn ecti on->Execute(DeleteRecord, NULL, 1);4) 创建Recordset对象,并使用 Recordset对象连接表。首先,添加一个指向 Recordset对象的指针 m_pConnection。即: _Recor

8、dsetPtr m_pRecordset ("ADODB .R ecordset");其次,创建Recordset对象。即:m_pRecordset.Create In sta nee (_uuidof (Recordset);再次,利用 Recordset对象的Ope n方法,通过 Conn ection对象链接 到表(默认表:Studentlnfo)。即:bstrSQL("select * from Stude ntln fo");m_pRecordset->Ope n (bstrSQL, m_pC onn ectio n.Getl nterf

9、acePtr (), adOpe nDyn amic, adLockOptimistic, adCmdText);技巧:bstrSQL必须是_bstr_t或者BSTR类型。读取表中记录, 放入内存缓冲区 SQLCA( SQL Communication Area,SQL 通信 区),同时把记录集对象指向 SQLCA。5) 利用Recordset对象取得的结果记录集,进行记录集的更新(添加、 修改和删除)、查询和处理。具体用法如下:获取字段编号或者字段名对应字段的值。即:m_pRecordset->GetCollect('字段名或者字段编号");把常量或者变量的值写入字段

10、名对应的字段中。即: m_pRecordset->PutCollect(字段名", _variant_t(常量或者变量);移动记录指针(游标)到首记录。即:-m_pRecordset->MoveFirst();移动记录指针(游标)到末记录。即:m_pRecordset->MoveLast();移动记录指针(游标),从当前记录上移一个记录。即:m_pRecordset->MovePrevious();移动记录指针(游标),从当前记录下移一个记录。即:m_pRecordset->MoveNext();移动记录指针(游标),到表的第 n个记录。即:m_pRec

11、ordset->AbsolutePositio n=n;移动记录指针(游标),到表的第 n页的第1个记录。即:m_pRecordset->AbsolutePage=n;设置每页的记录个数为n。即:m_pRecordset->PageSize=n;根据PageSize的设置返回总页数。即:m_pRecordset->PageCo un t();返回记录总数。即:m_pRecordset->recordco un t();返回记录指针是否超出数据表首端,True表示是,False为否。即: m_pRecordset->Bof();返回记录指针是否超出数据表末端,

12、True表示是,False为否。即:m_pRecordset->Eof();添加记录到表的末记录。即:m_pRecordset->AddNew();删除当前记录,但记录指针(游标)不会向下移动。即:m_pRecordset->Delete();更新表记录。即:m_pRecordset->Update();提示:如果移动记录指针(游标)到结束处(即:末记录的下 一个记录),并调用MoveNext方法,则ADO将产生错误。同 理,如果移动记录指针到开始处(即:首记录的上一个记录), 并调用MovePrevious方法,贝U ADO将产生错误。6) 测试连接状态,关闭Recordset连接和Co

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论