社区
Access
帖子详情
通过VB代码在Access数据库中新建一个记录
Rossonerixr
2017-05-26 04:04:17
如上图,我想通过那个Create按钮,实现新建数据到FDetail表中,Interface那个窗体中的四个输入框用来对应FDetail表中的四列。VB代码要怎么写,一直没找到参考代码,求助各位大神
...全文
335
3
打赏
收藏
通过VB代码在Access数据库中新建一个记录
如上图,我想通过那个Create按钮,实现新建数据到FDetail表中,Interface那个窗体中的四个输入框用来对应FDetail表中的四列。VB代码要怎么写,一直没找到参考代码,求助各位大神
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
tzmtx
2017-06-05
打赏
举报
回复
引用 2 楼 tzmtx 的回复:
先取得数据库的连接conn 再conn.exec "insert into....."
错了,pdo才exec,这里应该是conn.execute
tzmtx
2017-06-05
打赏
举报
回复
先取得数据库的连接conn 再conn.exec "insert into....."
Gere Yeung
2017-05-30
打赏
举报
回复
docmd.runsql "INSER INTO interface(cost, sale, profit, department_id) VALUSE (0, 0, 0, 1)"
非
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
中
的SetData
Access
Options语句来设置INI文件。 SetData
Access
Options语句的用法如下:SetData
Access
Options 1 ,IniFileName其
中
IniFileName参数指明的是INI文件的带路径的文件名。值得注意的是,当应用程序找不到这个INI文件时,或在调用 OpenDataBase函数时对其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]”。可在其
中
设置DataType、Server、DataBase、 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 ) SetData
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)对
数据库
中
的
记录
进行访问,主要的
数据库
存取对象
中
也仅有Database、Dynaset对象可通过数据控件的属 性提供,其它的重要对象如TableDef、Field、Index、QueryDef、Snapshot、Table等均不能在
VB
的标准版
中
生成,所以使用数据存取对象变量的方法只能用
VB
3.0以上的专业版。 (一)、非
Access
数据库
的
新建
及库结构的修改
VB
专业版
中
的
数据库
存取对象变量可以分为两类,一类用于
数据库
结构的维护和管理,另一类用于数据的存取。其
中
表示
数据库
结构时可以使用下面的对象: DataBase、TableDef、Field、Index,以及三个集合 (Collection): TableDefs、Fields和Indexes 。每
一个
集合都是由若干个对象组成的,这些数据对象的集合可以完全看作是
一个
数组,并按数组的方法来调用。一旦
数据库
对象建立后,就可以用它对
数据库
的结构进行修改和数据处理。对于非
Access
数据库
,大部分都是对应于
一个
目 录,所以可以使用
VB
的MkDir语句先生成
一个
目录,亦即
新建
一个
数据库
。而每
一个
非
Access
数据库
文件可看作是此目录下的
一个
数据表(Table),但实际上它们是互相独立的。 下面是
新建
一个
FoxPro 2.5格式
数据库
的程序实例。 Sub CreateNew ( ) Dim Db1 As database , 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 = OpenDatabase(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
保存图片到
数据库
中
.rar
VB
保存图片到
Access
数据库
中
,保存图片文件到
数据库
中
,以二进制方式打开图片文件,
新建
记录
,建立图片临时文件,一系列执行过程请参见
代码
文件。
浅谈
Access
数据库
在
VB
中
的实现及应用
本文结合实例探 讨了
VB
对
Access
数据库
的支持,同时还阐述了使用
Access
数据 库存取对象变量、
数据库
的
新建
、库结构修改、显示及其运行 环境设置等方面的实现和应用方法。
VB
开发的用户(人事)管理系统,
Access
数据库
.rar
VB
开发的用户(人事)管理系统,
Access
数据库
,左侧使用数形Tree显示用户类别,操作方便。系统主要实现一些
VB
的
数据库
操作,比如
新建
人员信息、删除、查找用户信息、系统维护和设置等功能,用
VB
写出这样的界面和功能非常不错的源
代码
,附件包
中
使用了一些控件。 小提示:系统登陆的用户名是:admin,密码:veryhuo.com 如有问题,可以联系我们。
mdb
数据库
编辑器
Access
2003.rar
软件介绍:
Access
2003是微软的
数据库
编辑和查看工具,它可以打开mdb格式的
数据库
文件,即可以浏览查看mdb内容,也可以
新建
mdb
数据库
。可以使用设计器或者向导、输入数据方式来创建表,在设计视图或向导
中
创建查询。支持转换
数据库
版本(
access
97-2003),可以压缩和修复
数据库
,管理链接表及拆分
数据库
。可以生成MDE文件。支持设置
数据库
密码及管理用户与组权限,可编码或者解码
数据库
。可以方便地插入表、查询、窗体、报表等。支持宏,内置visual basic编辑器及脚本编辑器,可使用将宏转换为
vb
代码
,支持宏创建菜单及工具栏、创建快捷菜单。
Access
7,714
社区成员
28,799
社区内容
发帖
与我相关
我的任务
Access
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
复制链接
扫一扫
分享
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章