跪求VB打开ACCESS的方法

作者&投稿:职怕 (若有异议请与网页底部的电邮联系)
vb.net读取Access数据库的方法~

建立数据集,绑定到窗口。不会的话,把要用的表从数据集拖到窗口,再删除就行了
提取方法
数据及名称.表格名称.rows(2).item(3).tostring 就是了

首先,我们需要引用ADO.具体的方法是,在"工程" -- "引用" 中,找到"Microsoft ActiveX Data Object *.* Library",这里的"*.*"是指的时ADO的版本号,一般来说,应用程序或ActiveX控件都具有向下兼容性,所以我们尽可能选择比较新的版本.以确保程序在能识别旧版本Access的同时,也能识别较新版本的Access.
然后我们需要在程序中创建一个对象.就好比我们在窗体上添加一个FileBox才能看到文件名一样,只有创建了ADO对象,我们才能够访问数据库.常用的对象有两个,Connection和Recordset.
创建这两个对象的具体方法是:
1.在引用后,使用New关键字,如
Private Conn As New ADODB.Connection
Private Reco As New ADODB.Recordset
2.在没引用时,用CreateObject创建对象:
Dim Conn,Reco
Set Conn = CreateObject("ADODB.Connection")
Set Reco = CreateObject("ADODB.Recordset")
创建了对象之后,下一步我们要做的就是打开数据库了.
先看下面的代码,可以成功的打开数据库.
Conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Main.mdb"
这句代码打开了D盘中的Main.mdb这个数据库.
Connection.Open方法的第一个参数是连接代码,它将传递给系统的数据库引擎.前半部分"Provider= Microsoft.Jet.OLEDB.4.0",它表示了数据库的类型.不同的数据库可能会不同.后半句"Source=d:\main.mdb"它表示了数据库所在的绝对路径.
打开数据库之后,还要打开表.假如数据库中有一个表,表名为"Users",字段有两个,一个为用户名,一个为密码.那么看以下代码.
1.想返回"Users"中,[用户名]为"去年烟花"的[密码]
Recordset.open "Select 密码 From Users Where 用户名='去年烟花'",Connection,1,1

之后我们就可以把用户输入的密码进行比较,看是否允许登录.
If Recordset.eof and Recordset.bof then
Msgbox "用户不存在!",16
Else
If PassWord =Recordset("密码").value then
msgbox "登录成功!",64
Else
msgbox "密码错误!",32
End If
End If
Recordset.Close
2.假设Admin已经成功登录系统,我们想把所有的用户名和密码都显示出来
Recordset.open "Select * From Users",Connection,1,1
这时,表已经被打开,我们就用以下代码把它显示出来.
Do whlie Not Recordset.eof
Print "用户名: " & Recordset("用户名").value & "密码: " & Recordset("密码").value
Recordset.MoveNext
Loop
Recordset.Close
由以上代码示例可以看出,打开表时,可以只打开其中的一个字段,也可以打开所有.第一个参数是SQL语句.
Select [字段名] From 表名 [Where 条件]
这里的条件可以省略.且字段名也可以用"*"来代替所有字段.
需要注意的是,如果你用(1)中的方法打开,那么(2)后面显示的代码就不能再用在(1)中.因为(1)里并没有打开[用户名]字段,所以这一句Recordset("密码")就没有值存在,还有可能出错.
后面的条件,可以用"="、">"、" 32".(这里假设[ID]为数字型.)

这是打开的部分.第二个很重要的部分就是查询记录.
数据库它并不是把所有记录全部放到一个变量中备用的.而是以"当前记录"的形式来返回一个值.所以我们想从中找到有用的信息,就必须要对信息进行定位/筛选.
定位:
移动到下一条 Recordset.MoveNext
移动到上一条 Recordset.MovePrevious
移动到最后一条 Recordset.MoveLast
移动到第一条 Recordset.MoveFrist
移动到某一条 Recordset.Move Number
筛选:
Recordset.Find "条件"
如:[用方法(2)打开表之后]
Private Sub Command1_Click()
Recordset.Find "用户名=" & "text1.text"
If Recordset.Eof True Then
Msgbox "该用户的密码是:" & Recordset("密码").value,64
Else
Msgbox "未找到该用户的资料!",16
End If
End Sub
MoveNext 只有当Eof不为True时,才可用,否则发生错误.而MovePrevious刚是Bof不为True时....
而只要Eof 和 Bof中有一个不为真时,也就是说只要有一条记录时,它就可以使用.

Find 方法中的条件和Open时的第一个参数中的条件表述方法是完全一致的.当在已打开的记录集中,找不到该记录时,Eof为True.找到则当前的值就是符合条件的记录.

第三个部分就是添加/修改记录.
修改记录很简单,先按以上的方法找到相关记录之后,给记录赋值就可以了.
比如:[(修改密码)按方法(1)打开表之后]
Recordset("密码").value = "123456"
Recordset.Updata
需要注意的就是,在修改完成后,要调用Updata方法,这样修改才能生效.
而添加记录则可以用以下代码来实现:
Recordset.addnew
Recordset("用户名").value = "Admin"
Recordset("密码").value = "Admin"
Recordset.Updata
这里,先要调用Addnew方法,增加一条新记录,然后对这个新记录中的各字段赋值,最后再调用Updata方法.
到这里就差不多了,最后说一下上面提到的几个方法.
Recordset.Open SQL语句,数据源,游标类型,打开方法
SQL语句不用说了,就是Select那啥的,目的就是按要求从表中返回数据
数据源就是一个打开之后的Connection对象.
去他妈的游标类型,填1就可以了 [偷笑ing]
打开方法对应了几个常数,具体哪几个可以从对象浏览器里看.
对应数值的意义:
1 只读 2 独占 3 可写 4 自已可写,别人可读
Connection.open 连接代码,服务器用户名,密码
这里的连接代码就不在多说了,服务器用户名,密码只有在连接远程数据库时才用到.

1,添加microsoft ADO control 6.0部件
2,将刚加入的部件放在窗体上,然后打开其属性connectionstring,在弹开的“通用”选项卡中选下面的生成。
3,在新弹出的对话框中选择microsoft jet 4.0 ole db provider,然后点下一步,在新打开的对话框中连接到你的“数据库设计.mdb"文件,然后一路确定回去。
4,打开Adodc1的属性:RecordSource,在打开的记录源选项卡的命令类型里选择2-adCmdTable,然后面下面的表里选择出现的students,那个就是你数据库里的表然后一路确定回去。
5,新建一个文本,并在文本属性的datasource中选择Adodc1,然后在datafield中选择要显示的字段,如marks,course等,
这样就可以和数据库连在一起了,此时可以用命令去改,至于用法,很麻烦,我也在摸索中,没办法更细的回答。

我有现成的代码,在我的程序中正在使用,包括打开带密码的数据库


关于VB6.0对access97的简单编程问题
最简单的最实用的方法:在VB中引用EXCEL和ACCESS,然后定义 Dim ACCEapp As Access.Application Dim EXCEapp As Excel.Application Set ACCEapp = New Access.Application 'or set ACCEapp = getobject(,"Access.Application")Set EXCEapp = New Excel.Application 'or set ACCEapp = getobject(,"Exce...

vb,acess,ADO,VBA之间是什么关系
VB 是 开发程序语言 ACCEASS 是 一个功能不是很完善的数据库(有人说是 他只是一个数据结构,不是数据库)ADO 是 VB或者vb.NET 连接数据库的 一种方法(DAO 也是一种连接数据库的方法)VBA 是 办公室自动化语言 常用的有 ACCESS VBA,EXCEL VBA 等等 ...

会计专业实习报告
使得在财务软件中嵌入适时跟踪监控的审计程序难以实现,使审计人员采集数据出现一定困难.少量的财务软件虽有数据转化功能,也只是对于会计账簿的格式进行了简单的转化.现代财务软件的编译采用多种计算机高级语言,如Acce,VB,VC,PowerPoint等,但由于软件的编译过程没有规范...

...text文本连到list中?注(text文本来自于绑定Acce
这个弄法有挑战性,如果直接随机提取的话,很可能绕来绕去都是重复的,说不定运行了十天半月也没个结果。所以应该先把所有的可能的组合都罗列出来,再随机选取几组。

面试自我介绍
同时能较熟练操作C、Foxpro、VB、Acce、ASp、JSp等语言,同时对SQL、Oracle也有一定程度上的认识,能熟练操作Dreamweaver、Flash、Fireworks、photoshop、Authoware等。 作为一名计算机专业的大学生,我热爱我的专业并为其投入了巨大的热情和精力.在学习生活中,我所学习的内容包括了从计算机的基础知识到运用等许多方面.通过对...

去面试简单的自我介绍
同时能较熟练操作C、Foxpro、VB、Acce、ASp、JSp等语言,同时对SQL、Oracle也有一定程度上的认识,能熟练操作Dreamweaver、Flash、Fireworks、photoshop、Authoware等。 作为一名计算机专业的大学生,我热爱我的专业并为其投入了巨大的热情和精力。在学习生活中,我所学习的内容包括了从计算机的基础知识到运用等许多方面。通过...

平山县18751976992: 怎么用VB调用access数据库 -
宗政琦桂附: 首先,我们需要引用ADO.具体的方法是,在"工程" -- "引用" 中,找到"Microsoft ActiveX Data Object *.* Library",这里的"*.*"是指的时ADO的版本号,一般来说,应用程序或ActiveX控件都具有向下兼容性,所以我们尽可能选择比较新...

平山县18751976992: 点击VB的命令按钮后,如何直接打开access窗体?? -
宗政琦桂附: 楼上正解,我试了,好用.现在举例说明 Dim Office_Path As String 'Access安装路径 Office_Path = "C:\Program Files\Microsoft Office\OFFICE11\" 'call Shell(Office_Path & "Msaccess.exe " & "D:\TBCS08\TBCS08D.MDB", 3)'这是引用...

平山县18751976992: 最简单的VB打开ACCESS数据库的程序 -
宗政琦桂附: 以下代码用到两个控件:(1)Adodc控件(2)DataGrid控件 Private Sub Command1_Click() With Adodc1 .ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" _ & "D:\我的文档" _ & "\实验室排课.mdb;...

平山县18751976992: vb打开access
宗政琦桂附: 你可以通过ado方法或通过adodc 控件将vb与access连接起来 例如: Public Sub connection() Public conn As New ADODB.connection Public rs As New ADODB.Recordset Dim strSQL As String Dim str1 As String Dim str2 As String str1 = "...

平山县18751976992: vb打开access -
宗政琦桂附: 修改答案:哦,dos不支持长路径,那你用这段代码吧 Private Declare Function ShellExecute Lib "shell32.dll" Alias _"ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, _ ByVal lpFile As String, ByVal lpParameters As ...

平山县18751976992: 如何在VB中连接access数据库
宗政琦桂附: 请用MICROSOFT jet 4.0 OLE DB Provider引擎连接ACCESS数据库,方法如下: 新建工程时选数据工程,此时VB6集成调试环境左边工具箱内已加载了有关数据库编程必须的控件. 然后在FORM1窗体中添加ADODC控件和DATAGRID控件,...

平山县18751976992: VB程序如何远程调用ACCESS数据库 -
宗政琦桂附: 第一步:你要知道那台电脑的计算机名或者ip地址; 第二步:共享数据库所在的文件夹,要将共享权限设置为能够读写的权限; 第三步:在你的电脑上运行一下那个共享路径:\\计算机名\共享文件夹,看能不能打开,如果能 打开,说明共享成...

平山县18751976992: 如何用VB语言去连接Access数据库啊?我的程序就是连不上啊?各位请指教! -
宗政琦桂附: 最简单的方法: 1:用vb自带的DATA控件,不用设置代码就能连接MDB文件. 2:用代码 (DAO) : dim db as database '定义一个数据库连接 dim rs as recordset '定义一个记录集 set db = opendatabase(app.path & "\me.mdb") '连接MDB文件 set rs = db.OpenRecordset("select * from nameOFtable") '连接MDB库里的一个表.此处的SELECT语句可以和WHERE\ORDER BY 等关键字合用. 谢谢!

平山县18751976992: 求一个VB连接ACCESS数据库的代码 -
宗政琦桂附: 用text我不知道,建议使用datagrid和adodc吧command1_click代码如下:Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path &#...

平山县18751976992: vb怎么调用access数据库中报表 -
宗政琦桂附: 在VB中运行Microsoft Access报表的好方法在VB中如何使用直观、简便的报表一直是很多人关心的问题, Crystal Reports用起来又不太理想.现介绍一在VB中运行Microsoft Access报表的方法,用起来还不错.利用Automation运行Microsoft...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网