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篇)相关推荐

  1. mac php 连接mysql数据库_Mac环境下php操作mysql数据库的方法分享

    Mac环境下php操作mysql数据库的方法分享 今天在mac上搭建好了php的环境,我们就把php操作mysql数据库的方法分享给大家,有需要的小伙伴参考下. Mac本地环境搭建 在Mac系统,我们 ...

  2. mac php 连接mysql数据库_Mac环境下php操作mysql数据库的方法分享_PHP教程

    Mac环境下php操作mysql数据库的方法分享 今天在mac上搭建好了php的环境,我们就把php操作mysql数据库的方法分享给大家,有需要的小伙伴参考下. Mac本地环境搭建 在Mac系统,我们 ...

  3. mac下php mysql数据库文件怎么打开_Mac环境下php操作mysql数据库的方法分享

    今天在mac上搭建好了php的环境,我们就把php操作mysql数据库的方法分享给大家,有需要的小伙伴参考下. Mac本地环境搭建 在Mac系统,我们可以使用MAMP Pro 软件来搭建本地服务器.安 ...

  4. 解决nodejs环境下端口号被占用的方法

    解决nodejs环境下端口号被占用的方法 参考文章: (1)解决nodejs环境下端口号被占用的方法 (2)https://www.cnblogs.com/guoliangstar/p/1014930 ...

  5. 非域环境下使用证书部署数据库(SqlServer2008R2)镜像

    非域环境下使用证书部署数据库(SqlServer2008R2)镜像 前言 部署数据库镜像一般有两种方式域环境下部署http://liulike.blog.51cto.com/1355103/33918 ...

  6. 一、在windows环境下修改pip镜像源的方法(以python3为例)

    在windows环境下修改pip镜像源的方法(以python3为例) 1.在windows文件管理器中,输入 %APPDATA% 2.会定位到一个新的目录下,在该目录下新建pip文件夹,然后到pip文 ...

  7. cache数据库和mysql_并发环境下,先操作数据库还是先操作缓存?

    原标题:并发环境下,先操作数据库还是先操作缓存? 来源:捡田螺的小男孩 前言 在分布式系统中,缓存和数据库同时存在时,如果有写操作,先操作数据库还是先操作缓存呢?本文将分5种方案 展开阐述对比,谢谢阅 ...

  8. 在linux的环境下 连接深澜校园网的方法

    在linux的环境下 连接深澜校园网的方法 在学校必须用用校园网客户端联网,而又没有能力写linux下的客户端的,而且无线网卡驱动不支持的情况下,想了一些招式来连接深澜校园网,最后终于成功了 < ...

  9. k8s安装sqlite3_kubernetes环境部署单节点redis数据库的方法

    kubernetes部署redis数据库(单节点) redis简介 Redis 是我们常用的非关系型数据库,在项目开发.测试.部署到生成环境时,经常需要部署一套 Redis 来对数据进行缓存.这里介绍 ...

最新文章

  1. python实现观察者模式_观察者模式--python
  2. binary_search函数
  3. 程序员刚结婚3天,老婆疑似骗婚?聊天记录曝光,网友:拜金实锤
  4. Eclipse-Java代码规范和质量检查插件-FindBugs
  5. 钉钉小程序------子组件监测父组件的数据更新
  6. 如何将Wav文件做到EXE文件里
  7. jwt配置 restful_SpringBoot实现JWT保护前后端分离RESTful API
  8. 将下载都是大写字母的网页里面的html转换为小写的简单方式
  9. PyTorch 1.0 中文文档:Tensor(张量)的属性
  10. 【Elastischearch】Elastischearch 的 ID 生成器 UUIDGenerator
  11. 简单了解阿里云Web应用防火墙(下篇)
  12. 机器学习数学知识积累总结
  13. qq四国军旗2.1 beat03 builde018记牌器开发思路(四)
  14. 这几个好用的简单流程图模板,你可不能错过
  15. ASP.NET Core 2.1 开发跨平台应用教程
  16. 2022-2028全球与中国防爆照明LED灯市场现状及未来发展趋势
  17. 软件开发、设计、架构的五大原则
  18. android平板和手机的区别,平板和手机有什么区别?
  19. 2023美赛数学建模思路 - 案例:线性回归
  20. MAC 版QQ同时打开两个QQ的方法

热门文章

  1. Linux clock子系统【3】-i2c控制器打开时钟的流程分析(devm_clk_get)(consumer侧)
  2. 什么是mysql节点_什么是MySQL集群
  3. Redis源码解析(15) 哨兵机制[2] 信息同步与TILT模式
  4. 软件测试工程师华为面经
  5. 计算机win7内容已满,Win7电脑C盘满了如何清理?
  6. 克里金插值---MATLAB程序
  7. Vue2 轮播图组件 原生slide组件
  8. group by 分组后 再对所有的数据求和
  9. YbtOj#20073. 「NOIP2020 模拟赛 B 组 Day6」钻石守卫
  10. go - time包的定时器/断续器