社区
数据库(包含打印,安装,报表)
帖子详情
请问在VB6中,如何将DATA控件和ACCESS2000数据库直接关联用啊?
Barry111
2004-08-11 08:32:53
好像DATA控件只能和以前的ACCESS数据库链接,部认识2000的,该怎么处理啊
...全文
84
5
打赏
收藏
请问在VB6中,如何将DATA控件和ACCESS2000数据库直接关联用啊?
好像DATA控件只能和以前的ACCESS数据库链接,部认识2000的,该怎么处理啊
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
饮水需思源
2004-08-12
打赏
举报
回复
用mshflexgrid控件吧
lihonggen0
2004-08-12
打赏
举报
回复
不可识别的数据库格式,是因为你是ACCESS2000数据库
微软解决办法:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbcon98/html/vbconIntrnscDataCtrlAndAccess2000.asp
其它解决办法:
办法一:建议你安装VBSP5
办法二:你可以把数据库转化为ACCESS97
办法三:用ADODC控件连接ACCESS2000数据库
办法四:用ADO连接字符串连接数据库
mjun007
2004-08-12
打赏
举报
回复
找最新的DATA控件,为什么不用adodc控件,dao这种数据操作方式已被微软淘汰了,如果方便的话,还是改用ADO吧,你看。NET 里那里还有DAO呢。
frankwong
2004-08-12
打赏
举报
回复
升级dao至4.0
ljhdi
2004-08-11
打赏
举报
回复
打补丁,或者在控制面版里面的数据源中加数据
VB通过DAO访问
ACCESS
数据库
DAO就是
Data
base
Access
Object,
数据库
访问对象的英文缩写。在VB
中
提供了两种与Jet
数据库
引擎接口的方法:
Data
控件
和数据访问对象(DAO)。
Data
控件
只给出有限的不需编程而能访问现存
数据库
的功能,而DAO模型则是全面控制
数据库
的完整编程接口。
Data
控件
将常用的DAO功能封装在其
中
,它与DAO
控件
的关系就好象内存与CACHE之间的关系一样,所以这两种方法并不是互斥的,实际上,它们常同时使用
VB+
数据库
编程之+ADO+连接
数据库
实例.doc
VB
数据库
编程之 ADO 连接
数据库
实例 "这里先说说ADO的
ACCESS
数据库
连接吧,两种。 " " 1.ADO
控件
连接 " " "工程"菜单 "部件...":Microsoft ADO
Data
Control 6.0 (SP6) " "(OLEDB) " "并将Adodc数据
控件
绘入窗体。 " "右击Adodc数据
控件
属性 使用连接字符串 生成 Microsoft Jet 4.0 OLE " "DB Provider 数据位置 找到要连接的
ACCESS
数据库
文件…… " " Adodc数据
控件
的RecordSource属性为"2 - " "adcmdTable"和你要连接的表名。 " "
控件
的引用实例如下: " "'组合框(Combo)
控件
列表用某字段数据记录填充 范例 " "'在窗体Load事件或Combo的相关事件
中
写入 " "'循环1到记录总数 " "For i = 1 To Adodc1.Recordset.RecordCount " " '如果不在记录集结尾则 " " If Not Adodc1.Recordset.EOF Then " " '组合框增加一行
非
Access
数据库
在VB
中
的编程及应用
存取对象变量库结构作为一个功能较完备的Windows软件开发平台,Visual Basic专业版提供了对
数据库
应用的强大支持。尤其提供了使用数据
控件
和绑定控制项,使用
数据库
存取对象变量(
Data
Access
Object Variable),
直接
调用ODBC 2.0 API接口函数等三种访问
数据库
的方法。对其标准内置的Ms
Access
数据库
,它可以提供不弱于专业
数据库
软件的支持,可以进行完整的
数据库
维护、操作及其事务处理。在VB
中
,将非
Access
数据库
称为外来
数据库
。对于FoxPro、dBASE、Paradox等外来
数据库
。虽然借助VB的
Data
Manager 能够对这些
数据库
进行NEW、OPEN、DESIGN、DELETE等操作,但在应用程序的运行状态
中
并不能从底层真正实现这些功能。本文从使用
数据库
存取对象变量的方法出发,实现了非
Access
格式
数据库
(以FoxPro
数据库
为例)的建新库、拷贝
数据库
结构、动态调入等操作,阐述了从编程技巧上弥补VB对这些外来
数据库
支持不足的可行性 。 一 、 VB
数据库
的体系结构具体的VB的
数据库
结构。 VB
数据库
的核心结构是所谓的MicroSoft JET
数据库
引擎,JET引擎的作用就像是一块"面 板",在其上可以插入多种ISAM(Indexed Sequential
Access
Method,即索引顺序存取方 法) 数据驱动程序。JET引擎为
Access
格式
数据库
提供了
直接
的内部(build-in)支持,这就是VB对
Access
数据库
具有丰富支持的真正原因。 VB专业版
中
提供了FoxPro、dBASE(或 Xbase)、Paradox、Btrieve等
数据库
的ISAM驱动程序,这就使得VB能支持这些
数据库
格 式。另外,其他的许多兼容ISAM的驱动程序也可以通过从厂商的售后服务得到。因而从理论上说,VB能支持所有兼容ISAM的
数据库
格式(前提是只需获得这些
数据库
的ISAM驱动接口程序)。 由上可见,Ms JET引擎实质上提供了:一个符合ANSI标准的语法分析器;为查询结果集的使用而提供的内存管理功能;同所支持的
数据库
的外部接口;为应用代码提供的内部接口。实际上,在VB
中
从一种
数据库
类型转化为另一种
数据库
类型几乎不需要或只需要很少的代码修改。而且,尽管dBASE、Paradox本身的DDL (
Data
Definition Language,即数据定义语言)和DML(
Data
Manipulation Language,即数据操纵语言)是非结构化查询的,但它们仍然可以使用VB的SQL语句和JET引擎来操纵。 从VB的程序代码的角度来看,ODBC,ISAM驱动程序以及Ms
Access
数据库
的整个外部结构够可以统一为一个一致的编程接口。也即是说,提供给VB应用程序员的记录集对象视图同所使用的
数据库
格式及类型是相互独立的。即对FoxPro等
数据库
仍然可以使用众多的
数据库
存取对象变量,这就为非
Access
数据库
的访问提供了最重要的方法。 二 、使用非
Access
数据库
时的参数设置及配置文件的参数读取如果在VB的程序
中
使用了
数据库
的操作,将应用程序生成EXE文件或打包生成安装程序后,则必须提供一个配置 (.INI)文件,在INI文件
中
可以对不同类型的
数据库
进行设置。如果找不到这个INI文件, 将会导致不能访问
数据库
。通常情况下,INI文件的文件名和应用程序的名称相同,所以如果没有指明,VB的程序会在Windows子目录
中
去找和应用程序同名的INI文件。可以使用VB
中
的Set
Data
Access
Options语句来设置INI文件。 Set
Data
Access
Options语句的用法如下:Set
Data
Access
Options 1 ,IniFileName其
中
IniFileName参数指明的是INI文件的带路径的文件名。值得注意的是,当应用程序找不到这个INI文件时,或在调用 Open
Data
Base函数时对其Connect参数值没有设定为VB规定的标准值,如对FoxPro 2.5格式设定为了" FoxPro;"(应为" FoxPro 2.5; "),或者没有安装相应的ISAM驱动程序,则此时VB会显示一条错误信息" Not Found Installable ISAM "。通常,INI文件在应用程序分发出去以前已经生成,或者在安装时动态生成,也可以在应用程序
中
自己生成。 通常这种 INI文件
中
有" [Options]"、"[ISAM]"、" [Installed ISAMs]"、"[FoxPro ISAM]"、"[dBASE ISAM] " 、" [Paradox ISAM] "等设置段,对于一个完整的应用程序则还应有一个属于应用 程序自己的设置段如" [MyDB]”。可在其
中
设置
Data
Type、Server、
Data
Base、 OpenOnStartup、DisplaySQL、QueryTimeOut等较为重要的
数据库
参数,并以此限定应用程序一般的运行环境。 Windows API接口函数在Kernel.exe动态链接库
中
提供了一个OSWritePrivateProfileString函数,此函数能按Windows下配置文件(.INI)的书写格式写入信息。 在通常情况下,应用程序还需要在运行时读取配置文件内相关项的参数。比如PageTimeOut(页加锁超时时限)、MaxBufferSize(缓冲区大小)、LockRetry(加锁失败时重试次数)等参数,通过对这些参数的读取对应用程序运行环境的设定、潜在错误的捕获等均会有很大的改善。 设此应用程序的配置文件为MyDB.INI,则具体过程如下:Funtion GetINIString$( Byval Fname$ ,Byval szItem$ ,Byval szDeFault$ ) ' 此自定义子函数实现INI 文件内设置段内参数的读取Dim Tmp As String,x As Integer Tmp = String( 2048,32 ) x = OSGetPrivateProfileString(Fname$,szItem$ , szDefault$,Tmp,Len(Tmp) ," MyDB.INI " ) GetINIString = Mid$( Tmp,1,x ) EndFunction以下这些函数的声明可写在模块文件内,且每个函数的声明必须在一行内Declare Function OSGetPrivateProfileString% Lib "Kernel" Alias "GetPrivateProfileString" (ByVal AppName$, ByVal KeyName$, ByVal keydefault$, ByVal ReturnString$, ByVal NumBytes As Integer, ByVal FileName$) Declare Function OSWritePrivateProfileString% Lib "Kernel" Alias "WritePrivateProfileString" (ByVal AppName$, ByVal KeyName$, ByVal keydefault$, ByVal FileName$) Declare Function OSGetWindowsDirectory% Lib "Kernel" Alias "GetWindowsDirectory" (ByVal a$, ByVal b%) Sub Form1_Load( ) Dim st As String Dim x As Integer Dim tmp As String tmp = String$( 255, 32 ) ' INI文件内为各种
数据库
格式指明已安装的相应ISAM驱动程序x = OSWritePrivateProfileString(" Installable ISAMS", "Paradox 3.X", "PDX110.DLL", "MyDB.INI" ) x = OSWritePrivateProfileString( "Installable ISAMS", "dBASE III", "XBS110.DLL", "MyDB.INI" ) x = OSWritePrivateProfileString( "Installable ISAMS", "dBASE IV", "XBS110.DLL", "MyDB.INI" ) x = OSWritePrivateProfileString( "Installable ISAMS", "FoxPro 2.0", "XBS110.DLL", "MyDB.INI" ) x = OSWritePrivateProfileString( "Installable ISAMS", "FoxPro 2.5", "XBS110.DLL", "MyDB.INI" ) x = OSWritePrivateProfileString( "Installable ISAMS", "Btrieve", "BTRV110.DLL", "MyDB.INI" ) x = OSWritePrivateProfileString( "dBase ISAM", "Deleted", "On", "MyDB.INI" ) ' 指明 INI文件的位置x = OSGetWindowsDirectory( tmp, 255 ) st = Mid$( tmp, 1, x ) Set
Data
Access
Option 1, st + "\mydb.ini" '获得INI文件一些参数 gwMaxGridRows = Val(GetINIString( " MyDB.INI " ,"MaxRows", "250" )) glQueryTimeout = Val(GetINIString( " MyDB.INI " ,"QueryTimeout", "5" )) glLoginTimeout = Val(GetINIString( " MyDB.INI " ,"LoginTimeout", "20" )) End Sub 三 、数据存取对象变量对外来
数据库
编程的方法及其实例在VB专业版
数据库
编程的三种方法
中
,第二种-使用
数据库
存取对象变量(DAO)的方法最具有功能强大、灵活的特点。 它能够在程序
中
存取ODBC 2.0的管理函数;可以控制多种记录集类型:Dynaset,Snapshot 及Table记录集合对象;可以存储过程和查询动作;可以存取
数据库
集合对象,例如 TableDefs,Fields,Indexes及QueryDefs;具有真正的事物处理能力。因而,这种方法对
数据库
处理的大多数情况都非常适用。 由于VB
中
的记录集对象与所使用的
数据库
格式及类型是相互独立的,所以在非
Access
数据库
中
也可以使用
数据库
存取对象变量的方法。因而 对FoxPro等外来
数据库
而言,使用
数据库
存取对象变量的方法同样也是一种最佳的选择。 有一点需要注意的是,VB的标准版
中
仅能使用数据
控件
(
Data
Control)对
数据库
中
的记录进行访问,主要的
数据库
存取对象
中
也仅有
Data
base、Dynaset对象可通过数据
控件
的属 性提供,其它的重要对象如TableDef、Field、Index、QueryDef、Snapshot、Table等均不能在VB的标准版
中
生成,所以使用数据存取对象变量的方法只能用VB 3.0以上的专业版。 (一)、非
Access
数据库
的新建及库结构的修改VB专业版
中
的
数据库
存取对象变量可以分为两类,一类用于
数据库
结构的维护和管理,另一类用于数据的存取。其
中
表示
数据库
结构时可以使用下面的对象:
Data
Base、TableDef、Field、Index,以及三个集合 (Collection): TableDefs、Fields和Indexes 。每一个集合都是由若干个对象组成的,这些数据对象的集合可以完全看作是一个数组,并按数组的方法来调用。一旦
数据库
对象建立后,就可以用它对
数据库
的结构进行修改和数据处理。对于非
Access
数据库
,大部分都是对应于一个目 录,所以可以使用VB的MkDir语句先生成一个目录,亦即新建一个
数据库
。而每一个非
Access
数据库
文件可看作是此目录下的一个数据表(Table),但实际上它们是互相独立的。 下面是新建一个FoxPro 2.5格式
数据库
的程序实例。 Sub CreateNew ( ) Dim Db1 As
data
base , Td As TableDefs Dim T1 As New Tabledef , F1 As New Field , F2 As New Field , F3 As New Field Dim Ix1 As New Index Dim Path As String Const DB_TEXT = 10 , DB_INTEGER = 3 ChDir "\" Path$ = InputBox( " 请输入新路径名: ", "输入对话框" ) MkDir Path$ ' 新建一个子目录Set Db1 = Open
Data
base(Path$, True, False, "FoxPro 2.5;") Set Td = Db1.TableDefs T1.Name ="MyDB" '新建一个数据表,数据表名为MyDB F1.Name = "Name" , F1.Type = DB_TEXT , F1.Size = 20 F2.Name = "Class" , F2.Type = DB_TEXT , F2.Size = 20 F3.Name = "Grade" , F3.Type = DB_INTEGER T1.Fields.Append F1 '向数据表
中
添加这些字段T1.Fields.Append F2。
基于vb的
DATA
控件
开发定位与数据浏览功能
基于vb的
DATA
控件
开发定位与数据浏览功能,使用
Access
2000
,实现定位和数据浏览功能。
VB进行SQL语句查询的演示程序源代码
摘要:VB源码,
数据库
应用,SQL查询 VB进行SQL语句查询的演示程序源代码,适合输入SQL查询语句,即可对
数据库
进行查询。测试注意:需要先打开VB工程,重新设置窗体
中
Ado
Data
控件
的ConnetionString属性
中
数据库
路径为“MySampleDB.mdb”所在路径,否则运行报错,最好是在Ado
Data
控件
的属性对话框
中
进行
数据库
路径的设置,或者移动
Access
数据库
为指定的录目
中
。 信息来源:乐乐源码网(www.lelecode.com)
数据库(包含打印,安装,报表)
1,216
社区成员
55,954
社区内容
发帖
与我相关
我的任务
数据库(包含打印,安装,报表)
VB 数据库(包含打印,安装,报表)
复制链接
扫一扫
分享
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章