vc访问数据库
① VC连接数据库到底怎么设置啊
具体说说怎么连接不上的。
连接数据库需要添加数据源,ADO相关入门书籍里一般都会介绍连接数据库的语句的。
比如我用C#连接数据库:
首先定义命名空间
using System.Data.OracleClient;
然后连接数据库:
orlConnection = "Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=59.72.109.214)"+ "(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=pdm)));User ID=system;Password=admin";
然后从数据库中读取用户信息:
OracleConnection myConnection = new OracleConnection(orlConnection);
这个你弄一本VC连接数据库的入门书籍,里面有详细的介绍
② VC操作数据库
你这种情况可以直接通过ODBC的方式对数据库进行访问。。。而且是直接使用ODBC API,不使用经过MFC类库包装过的ODBC相关的类库。
ODBC API一般声明于头文件<sql.h>中
直接用ODBC API进行数据库访问的流程如下:
1、在控制面板->管理工具->数据源(ODBC)中添加你所建立的SQL数据库的一个新数据源。
2、通过ODBC API去访问建立的那个数据源,与数据源建立连接
3、通过ODBC API中相应的函数,在函数中调用执业标准的SQL语句,实现对数据库的各种操作。。。
ODBC API中的主要函数声明如下:
分配环境句柄:
SQLRETURN SQL_API SQLAllocEnv(SQLHENV*);
分配语句句柄:
SQLRETURN SQL_API SQLAllocStmt(SQLHDBC,SQLHSTMT*);
数据源连接函数:
SQLConnect(SQLHDBC,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT,SQLCHAR*,SQLSMALLINT);
SQL语句执行函数:
SQLRETURN SQL_API SQLExecute(SQLHSTMT);
关于ODBC API的详细信息,你可以网络一下,网上很多的,这是一个比较底层,但也是一个非常普遍的连接方法,MFC以及其它很多数据库连接,都是以ODBC API为基础的,甚至有些只是它的一个包装而已。。。 此外,这种连接方式不需要你掌握MFC,DAO,ADO这些五花八门的东西,只需要你有C语言的基础和基本的数据库概念就行了,缺点是比较底层,控制的东西很直接。。。。同时需要你有一定的SQL语句撰写能力。
③ vc++访问数据库
m_recordset.GetRecordCount()一定是0
这个数目是你访问过的数目.
MoveFrist是没有必要的.
因为打开后,自动会在开始处
建议你看一下我的免费教程(视频\习题\讲义\教材)
VC共享乐园有哦
④ 请教一下VC该怎样访问数据库我已经连接成功,为什么老是访问不成功
这句估计是错的。下个断言试试:
ASSERT(m_pConnection->Open("DSN=test.mdb","","",0) == S_OK);
估计通不过。
楼主知道DSN是什么东西吗?
DSN==DATA SOURCE NAME即数据源名称。连接数据局库一般通过数据源来告知ADO我们感兴趣的数据库。在程序中特指数据源又是依靠DSN来表示的。DSN不是随数据库的创建默认就存在的。一般是创建了数据库,然后到WINDOWS控制面板中找到"数据源(ODBC)"工具,通过"数据源(ODBC)"工具来创建自己的数据源。依操作系统版本不同,"数据源(ODBC)"工具也可能存在于控制面板中“管理工具”项目下。
数据源(ODBC)工具双击之后就能看见已经被注册了的DSN列表。楼主看下有没有叫做“test.mdb”的数据源?应该没有吧,这个只是文件名而已。然后需要添加数据源,选择ACCESS数据库驱动程序引擎,然后选择自己的数据库文件(即test.mdb)。还可以设置用户名和密码等其他和数据源相关联的设置.
P.S.当然不通过数据源,而直接通过磁盘文件名连接数据库也可以。但几乎没人这样做的,什么理由,楼主有兴趣网上搜一下就知道了。
⑤ 求教VC连接远程数据库方法
通常都是通过TCP/IP协议来连接远程数据库。
首先要保持网络畅通,可以使用ping命令来进行测试网络是否连通,没有问题可以进行下一步:在客户端通过配置工具或者应用程序代码来设置服务器的地址、端口号、数据库名称等信息,此时客户端采用的工具或者编程语言不同,则配置方法也不同,每一种主流数据库产品都有图形化的客户端配置工具,可以直接使用,在里面填写好服务器相关信息,测试连接即可,下图就是SQL Server的配置工具。
如果客户端采用高级语言编程,不同的语言连接方法也不同,通常主要有ODBC和JDBC连接方式,这两种方式比较通用,每个厂商的数据库都会提供对应的连接驱动程序和连接字符串信息。
主流数据库产品通常还提供了一些特殊的连接方式,采用特定的网络协议,这时连接的速度会更快一些,但配置会更复杂,而且方法不通用。
⑥ 在vc中使用ADO访问MYSQL数据库怎样设置
Driver={SQL
Server};Server=主机名;Database=数据库名;Uid=sa;Pwd=sa;
还有一个比较简单方法确定连接字符串:
1.建立一个.udl的文件。
2.双击打开,将里面相关项进行设置,保存,关闭。
3.有记事本打开这个udl文件,里面的字符串就是连接字符串!
⑦ VC怎么操作数据库
你必须建立数据库的工作...
在“控制面板”,选择“管理工具”,打开数据源(ODBC),然后ODBC数据源管理器对话框弹出。系统
打开“DNS”选项卡上,单击“添加”,选择。附上海涂种植Access驱动程序(* mdb)中,单击“完成”,然后输入数据源的名称和说明。 (如果你是在其他人的代码,数据源的名称可能得到,所以你必须找到工作,他使用的数据源名称)。
(你下载的源代码的数据库的路径),然后选择数据库。
它只是设置。 。 。
⑧ 怎样用vc++ 6.0访问SQL Server数据库
从功能简单的数据库(如Jet Engine)到复杂的大型数据库系统(如oracle),VC++6.0都提供了一些编程接口。本文主要介绍以下五种: 1.ODBC API;2.MFC ODBC类;3.MFC DAO类;(数据访问对象)4.MFC的OLE/DB;5.ActiveX数据对象(ADO)。6.RDO远程数据访问
1.开放数据库连接(ODBC API):提供了一个通用的编程接口,允许程序与多种不同的数据库连接。它为Oracle,SQL Server,MS Excel等都提供了驱动程序,使得用户可以使用SQL语句对数据库进行直接的底层功能操作。在使用ODBC API时,用户须引入的头文件为 "sql.h ", "sqlext.h ", "sqltypes.h "。用ODBC API创建数据库应用程序遵循一定的基本步骤:
第一步是分配ODBC环境,使一些内部结构初始化。完成这一步,须分配一个SQLHENV类型的变量在ODBC环境中做句柄使用。
第二步是为将要使用的每一个数据源分配一个连接句柄,由函数SQLALLocHandle()完成。
第三步是使用SQLConnect()把连接句柄与数据库连接,可以先通过SQLSetConnectAttr()设置连接属性。
然后就可以进行SQL语句的操作,限于篇幅,相关的函数就不具体介绍了,读者可以参考相关书籍。
操作完成后,用户取回相应的结果,就可以取消与数据库的连接。
最后需要释放ODBC环境。
ODBC API的特点是功能强大丰富,提供了异步操作,事务处理等高级功能,但相应的编程复杂,工作量大。
2.MFC ODBC类:MFC1.5后的版本里引入封装了ODBC功能的类。通过这些类提供与ODBC的接口,使得用户可以不须处理ODBC API中的繁杂处理就可以进行数据库操作。主要的MFC ODBC类如下。
CDatabase类:一个CDatabase对象表示一个到数据源的连接,通过它可以操作数据源。应用程序可使用多个CDatabase对象:构造一个对象并调用OpenEx()成员函数打开一个连接。接着构造CRecordSet对象以操作连接的数据源,并向CDatabase对象传递记录集构造程序指针。完成使用后用Close()成员函数销毁CDatabase对象。一般情况下并不需要直接使用CDatabase对象,因为CRecordSet对象可以实现大多数的功能。但是在进行事务处理时,CDatabase就起到关键作用。事务(Transaction)指的是将一系列对数据源的更新放在一起,同时提交或一个也不提交,为的是确保多用户对数据源同时操作时的数据正确性。
CRecordSet类:一个CRecordSet对象代表一个从数据源选择的一组记录的集合-记录集。记录集有两种形式:snapshot和dynaset。前者表示数据的静态视图,后者表示记录集与其他用户对数据库的更新保持同步。通过CRecordSet对象,用户可以对数据库中的记录进行各种操作。
CRecordView类:CRecordView对象是在空间中显示数据库记录的视图。这种视图是一种直接连到一个CRecordSet对象的格式视图,它从一个对话框模板资源创建,并将CRecordSet对象的字段显示在对话框模板的控件里。对象利用DDX和RFX机制,使格式上的控件和记录集的字段之间数据移动自动化,也就是说,用户甚至不要编写一行代码就可以实现简单的数据库记录查看程序。
CDBException类:由Cexception类派生,以三个继承的成员变量反映对数据库操作时的异常:
m_nRetCode:以ODBC返回代码(SQL_RETURN)的形式表明造成异常的原因。
m_strError:字符串,描述造成抛出异常的错误原因。
m_strStateNativeOrigin:字符串,用以描述以ODBC错误代码表示的异常错误。
MFC数据库类成员函数都能抛出CDBException类型的异常,所以在代码对数据库进行操作后监测异常是正确做法。
MFC ODBC类在实际开发中应用最广,因为它功能丰富,操作相对简便。
3.MFC DAO(数据访问对象)编程:DAO用于和微软的Access数据库接口。在数据库应用程序如果只需与Access数据库接口时,使用DAO编程较方便。其主要类如下。
CDaoWorkspace:CDaoWorkspace对象可以让一个用户管理从登陆到离开期间,指定的密码保护的数据库会话全过程。大多数情况下不要多个工作区也不要创建明确的工作区对象。因为在打开数据库和记录集对象时,它们可以使用DAO缺省工作区。
CDaoDatabase:代表一个连接,类似上述CDatabase类。
CDaoRecordSet:用来选择记录集并操作,类似上述CRecordSet类。
CDaoRecordView:类似上述CRecordView类。
CDaoException:类似上述CDBException类。
CDaoTableDef:表示基本表或附加表的定义。每个DAO数据库对象包括一个称为TableDef的收集,包含所有存储的DAO表定义对象。CDaoTableDef对象可以用来控制表定义。
CDaoQueryDef:CDaoQueryDef对象表示了一个查询定义(querydef)。
CDaoFieldExchange:支持数据库类使用的DAO字段交换(DFX)例程。也可处理事务,类似MFC ODBC类。
MFC DAO仅用来支持Access数据库,应用范围相对固定。
4.OLE DB:OLE DB在数据提供程序和用户之间提供了灵活的组件对象模型(COM)接口,这种灵活性有时会使得操作复杂化。OLE DB框架定义了应用的三个基本类。
数据提供程序Data Provider:拥有自己的数据并以表格形式显示数据的应用程序。提供OLE DB的行集COM接口,期显示范围可以从单一数据表格的简单提供者知道更复杂的分布式数据库系统。
使用者Consumers:使用OLE DB接口对存储在数据提供程序中的数据进行控制的应用程序。用户应用程序归为使用类。
服务提供程序Service Provider:是数据提供程序和使用者的组合。服务提供程序没有自己的数据,但使用
OLE DB使用者接口来访问存储在数据提供程序中的数据。然后,服务提供程序通过打开数据提供程序接口使得数据对使用者有效。服务提供程序常用于向应用程序提供高层次服务,比如高级分布式查询。
OLE DB编程时,用户使用组件对象开发应用程序。这些组件有:
枚举器:用于列出可用的数据源;
数据源:代表单独的数据和服务提供程序,用于创建对话;
对话:用于创建事务和命令;
事务:用于将多个操作归并为单一事务处理;
命令:用于向数据源发送文本命令(SQL),返回行集;
错误:用于获得错误信息。
5.ActiveX数据对象(ADO):是微软提供的面向对象的接口,与OLE DB类似,但接口更简单,具有更广泛的特征数组和更高程度的灵活性。ADO基于COM,提供编程语言可利用的对象,除了面向VC++,还提供面向其他各种开发工具的应用,如VB,VJ等。ADO在服务器应用方面非常有用,特别是对于动态服务器页面ASP(Active Server Page)。
ADO对象结构类似于OLE DB,但并不依靠对象层次。大多数情况下,用户只需要创建并只使用需要处理的对象。下面的对象类组成了ADO接口。
Connection:用于表示与数据库的连接,以及处理一些命令和事务。
Command:用于处理传送给数据源的命令。
Recordset:用于处理数据的表格集,包括获取和修改数据。
Field:用于表示记录集中的列信息,包括列值和其他信息。
Parameter:用于对传送给数据源的命令之间来回传送数据。
Property:用与操作在ADO中使用的其他对象的详细属性。
Error:用于获得可能发生的错误的详细信息。
在VC++使用ADO需要进行COM操作,详细方法在此就不赘述了。
在当今流行的分布式开发环境下,VC++6.0在数据库开发方面有较强的优势,学会
在不同的场合选用不同的技术,对开发人员来说是必要的技术。
⑨ 如何在客户端访问服务器端的数据库(VC++)
1.用数据库自带的客户端管理工具访问修改;
2.去管理工具->数据源,建立数据源,然后再vc中建立一个数据库的工程(Database
project),也可以访问并修改。具体操作可以去网上搜;
3.可以用ODBC或ADO自己编程实现
那就用ODBC写吧,如果是MFC的,用CDATABASE就可以,里面好多方法都有封装,去下载一个ODBC编程的例子看看
⑩ VC++中怎样连接数据库
(1)打开VC工具栏Tools菜单下的Options选项,在Directories的标签页中右边的“Show directories for:”下拉列表中选中“Includefiles”,然后在中间列表框中添加你本地安装MySQL的include目录路径。