VB和VB.net环境下链接Access、SQL数据库的方法及技巧(Access篇)
ACCESS数据库:
VB环境下
方法一:用代码链接
步骤一:
在 工程引用Microsoft ActiveX Data Objects 2.8 Library
'2.5 2.6 2.7 2.8 随你
步骤二:
用代码和mdb文件建立连接
Private Sub OpenDataBase()
On Error GoTo err
Dim str As String
Dim IniName As String
IniName = "C:\SystemSetup.ini"
If Dir(IniName) = "" Then
MsgBox "请指定数据库的路径!", vbInformation
a: With CommonDialog1
.FileName = ""
.CancelError = True
.Filter = "*.mdb,*.accdb"
.ShowOpen
End With
DataFilename1 = CommonDialog1.FileName
Call INIWrite("数据库地址", "地址路径", DataFilename1, IniName)
Else
DataFilename1 = INIRead("数据库地址", "地址路径", IniName) '读取配置文件内容赋值给变量aa
End If
If DataFilename1 <> "" Then
If Conn.State = 1 Then Conn.Close
Conn.CursorLocation = adUseClient
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DataFilename1 & ";User ID=;Persist Security Info=False;Jet OLEDB:Database Password="
End If
Exit Sub
err:
If err.Number = "-2147467259" Then
GoTo a
Else
MsgBox err.Number & "--" & err.Description, vbInformation, "打开数据库失败!"
End If
End Sub
代码解释:
首先新建一个Ini文件用于存储数据库的绝对地址。然后用Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DataFilename1 & ";User ID=;Persist Security Info=False;Jet OLEDB:Database Password="与数据库建立连接。Microsoft.Jet.OLEDB.4.0这是数据库驱动。
方法二: 新建数据设计环境建立VB与数据库的链接:
在工程文件里面新建DataEnvironment,然后通过这个与数据库建立连接,具体方法参考链接https://wenku.baidu.com/view/31127585f01dc281e43af0a5.html
VB.net环境下:
方法一:(用代码链接)
Dim cnStr As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & AppDisk & "\db123.mdb" & ";Persist Security Info=False"
Dim cn As OleDbConnection = New OleDbConnection(cnStr)
用这两句代码即可链接上数据库!
方法二:通过添加数据源
将要连接的Access数据库添加到工程文件即可。
接下来介绍常用的数据库操作方法,VB和VB.net两种环境下通用
在VB环境下要对数据库进行操作,首先定义一个记录集变量 Dim rst As New ADODB.Recordset
只要把数据库里面的表赋值给这个记录集,通过对记录集的操作来操作数据库里面的数据。
下面介绍几种常见的操作方法:
一:Add New 往数据库里面新增记录
二:Edit 编辑选定的记录
三: RS.MoveFirst 、RS.MoveLast、RS.MoveNext、RS.MovePrevious这几句是移动记录集的指针的时候常用的几句。
四:RS.EOF和RS.BOF:前者是指记录集的指针移到了记录集地址结尾之外,后者是指记录集指针移动到了记录集地址的开头之外。在编程的时候可以使用这两条语句来判断记录集的位置,作为循环标志。
五:RS.Filed系列
1、RS.Filed(字段的名字)、RS.Filed(1)这两句的作用一样,都指定表里面的某个字段,在编程的时候建议灵活运用。
2、RS.Filed(字段名).Name返回字段名,RS.Filed(字段名).Value返回字段的值
六: RS.Filter
这个是记录集筛选器,在程序里面做查询的时候建立使用,配合好SQL语句可以实现很多功能。
七:RS.update
更改了数据库里面的内容后,要用这一句更新数据库表里面的内容,不然之前的操作无效。
八:RS.Delete
这一句用于删除记录集里面的内容
下面共享两段代码。功能分别是删除数据库里面的表、在数据库里面新建一张表
Public Sub DeleteTabel(strU As String)
Dim str As String
str = "drop table [Work_report" & strU & "]"
Conn.Execute str
Conn.Close
Conn.Open
End Sub
Public Sub CreateSJK(str As String)
Dim i As Double
Dim tabelname As String
Dim tabelname1 As String
Dim str1 As String
tabelname = "Work_report" & str
str1 = "Select * Into " & tabelname & " From [Work_reportadmin] Where false"
Conn.Execute str1
End Sub
用SQL语句操作数据库里面的内容:
新增:Insert Into (表名) (字段一,字段二,字段三,字段四,字段五) Values('" & String1 & "','" & String2 & "','" & String3 & "','" & String4 & "','" & String5 & "')"
编辑&修改 "Update Tabel2(表名) Set 字段一='" & String1 & "', "
& "字段二='" & String2 & "', " _
& "字段三='" & String3 & "', " _
& "字段四='" & String4 & "', " _
& "字段五='" & String5 & "' " _
& "WHERE ID = " & Val(TextBox6.Text)
删除记录 : "Delete From Tabel1(表名) WHERE ID =" & Val(TextBox6.Text)
Dim MyDataReader As OleDbDataReader
Dim MyOleDbCommand As OleDbCommand = New OleDbCommand()
在VB.NET里面可以通过定义OleDbDataReader 和OleDbCommand来执行相应的SQL操作
、 Public Function FillTextBox(ByVal Sqlstring As String)
If cn.State = 0 Then
cn.Open()
End If
MyOleDbCommand.Connection = (cn)
MyOleDbCommand.CommandText = Sqlstring
MyDataReader = MyOleDbCommand.ExecuteReader
Try
Do While MyDataReader.Read
TextBox6.Text = (MyDataReader.Item(0))
TextBox1.Text = (MyDataReader.Item(1))
TextBox2.Text = (MyDataReader.Item(2))
TextBox3.Text = (MyDataReader.Item(3))
TextBox4.Text = (MyDataReader.Item(4))
TextBox5.Text = (MyDataReader.Item(5))
If TabelName = "Tabel3" Then Store = Val(TextBox5.Text)
Loop
Catch err As System.Exception
MyDataReader.Close()
End Try
MyDataReader.Close()
End Function
这段代码是在VB.NET环境下面用于读取数据表里面的内容。
今天先谈到这里,SQL数据库的操作技巧下一篇再更新!
VB和VB.net环境下链接Access、SQL数据库的方法及技巧(Access篇)相关推荐
- mac php 连接mysql数据库_Mac环境下php操作mysql数据库的方法分享
Mac环境下php操作mysql数据库的方法分享 今天在mac上搭建好了php的环境,我们就把php操作mysql数据库的方法分享给大家,有需要的小伙伴参考下. Mac本地环境搭建 在Mac系统,我们 ...
- mac php 连接mysql数据库_Mac环境下php操作mysql数据库的方法分享_PHP教程
Mac环境下php操作mysql数据库的方法分享 今天在mac上搭建好了php的环境,我们就把php操作mysql数据库的方法分享给大家,有需要的小伙伴参考下. Mac本地环境搭建 在Mac系统,我们 ...
- mac下php mysql数据库文件怎么打开_Mac环境下php操作mysql数据库的方法分享
今天在mac上搭建好了php的环境,我们就把php操作mysql数据库的方法分享给大家,有需要的小伙伴参考下. Mac本地环境搭建 在Mac系统,我们可以使用MAMP Pro 软件来搭建本地服务器.安 ...
- 解决nodejs环境下端口号被占用的方法
解决nodejs环境下端口号被占用的方法 参考文章: (1)解决nodejs环境下端口号被占用的方法 (2)https://www.cnblogs.com/guoliangstar/p/1014930 ...
- 非域环境下使用证书部署数据库(SqlServer2008R2)镜像
非域环境下使用证书部署数据库(SqlServer2008R2)镜像 前言 部署数据库镜像一般有两种方式域环境下部署http://liulike.blog.51cto.com/1355103/33918 ...
- 一、在windows环境下修改pip镜像源的方法(以python3为例)
在windows环境下修改pip镜像源的方法(以python3为例) 1.在windows文件管理器中,输入 %APPDATA% 2.会定位到一个新的目录下,在该目录下新建pip文件夹,然后到pip文 ...
- cache数据库和mysql_并发环境下,先操作数据库还是先操作缓存?
原标题:并发环境下,先操作数据库还是先操作缓存? 来源:捡田螺的小男孩 前言 在分布式系统中,缓存和数据库同时存在时,如果有写操作,先操作数据库还是先操作缓存呢?本文将分5种方案 展开阐述对比,谢谢阅 ...
- 在linux的环境下 连接深澜校园网的方法
在linux的环境下 连接深澜校园网的方法 在学校必须用用校园网客户端联网,而又没有能力写linux下的客户端的,而且无线网卡驱动不支持的情况下,想了一些招式来连接深澜校园网,最后终于成功了 < ...
- k8s安装sqlite3_kubernetes环境部署单节点redis数据库的方法
kubernetes部署redis数据库(单节点) redis简介 Redis 是我们常用的非关系型数据库,在项目开发.测试.部署到生成环境时,经常需要部署一套 Redis 来对数据进行缓存.这里介绍 ...
最新文章
- python实现观察者模式_观察者模式--python
- binary_search函数
- 程序员刚结婚3天,老婆疑似骗婚?聊天记录曝光,网友:拜金实锤
- Eclipse-Java代码规范和质量检查插件-FindBugs
- 钉钉小程序------子组件监测父组件的数据更新
- 如何将Wav文件做到EXE文件里
- jwt配置 restful_SpringBoot实现JWT保护前后端分离RESTful API
- 将下载都是大写字母的网页里面的html转换为小写的简单方式
- PyTorch 1.0 中文文档:Tensor(张量)的属性
- 【Elastischearch】Elastischearch 的 ID 生成器 UUIDGenerator
- 简单了解阿里云Web应用防火墙(下篇)
- 机器学习数学知识积累总结
- qq四国军旗2.1 beat03 builde018记牌器开发思路(四)
- 这几个好用的简单流程图模板,你可不能错过
- ASP.NET Core 2.1 开发跨平台应用教程
- 2022-2028全球与中国防爆照明LED灯市场现状及未来发展趋势
- 软件开发、设计、架构的五大原则
- android平板和手机的区别,平板和手机有什么区别?
- 2023美赛数学建模思路 - 案例:线性回归
- MAC 版QQ同时打开两个QQ的方法
热门文章
- Linux clock子系统【3】-i2c控制器打开时钟的流程分析(devm_clk_get)(consumer侧)
- 什么是mysql节点_什么是MySQL集群
- Redis源码解析(15) 哨兵机制[2] 信息同步与TILT模式
- 软件测试工程师华为面经
- 计算机win7内容已满,Win7电脑C盘满了如何清理?
- 克里金插值---MATLAB程序
- Vue2 轮播图组件 原生slide组件
- group by 分组后 再对所有的数据求和
- YbtOj#20073. 「NOIP2020 模拟赛 B 组 Day6」钻石守卫
- go - time包的定时器/断续器