• access 2007 vba 开发中学到的知识(一)


    使用ado连接本身的数据库,需要先创建一个 adodb.connection的连接对象
    Set cn = CreateObject("ADODB.Connection")
    数据库的提供者 cn.Provider = "Microsoft.ACE.OLEDB.12.0"
    CurrentProject.Path是取得当前access数据库程序所在的路径 strCn = "Data Source = " & CurrentProject.Path & "Accessdatabase.accdb;Jet OLEDB:Database Password= " 打开连接
    cn.Open (strCn) 创建recorderset,用来接收查询到的数据
    Set rs = CreateObject("ADODB.Recordset")
    需要执行的检索sql文 rs.Open "SELECT * FROM tablename " & wherecondition, cn, 3, 1 rs.fields() 取得表中字段的值,列头的序号是从0开始的,这个例子中我写的是1,也就是表格中的第二列 kkn = rs.fields(1)

    删除的sql文
    使用连接的execute方法,第一个参数是sql文,第二参数是删除的记录条数,如果成功则返回1,失败返回0
    cn.Execute "DELETE FROM tablename WHERE name = '" & Value & "' AND birthday = CDate('" & Value & "') ", cnt

    更新的sql文
    参数同上,cnt是返回更新的记录条数,1是成功,0是失败
     cn.Execute “UPDATE tablename SET 更新字段=更新的值 WHERE name = '" & Value & "' AND birthday = CDate('" & Value & "') ", cnt

    插入的sql文
    参数同上,cnt是返回插入的记录条数,1是成功,0是失败
    cn.Execute ”insert into tablename values(每个字段的值)",cnt

    查询count(*)的sql文
    因为这个查询后只有一个字段,所以使用rs.fields(0),1是已存在,0是不存在
    rs.Open "SELECT COUNT(1) FROM tablename WHERE name = '" & Value & "' AND birthday = CDate('" & Value & "') ", cn, 3, 1
    cnt = rs.fields(0)

    checkbox是否选中的判断
     Me.chk.Value = -1是选中

    IsNull()判断是否为null
    Len()判断数据的长度

    email地址的判断

    Set tkExp = CreateObject("VBScript.RegExp")
    tkExp.Pattern = "^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$"
    If tkExp.Test(email) = False Then
    MsgBox "email 格式不正確。", 48
    Me.自宅email .SetFocus
    Exit Function
    End If

    带有返回结果的msgbox,33的含义是 32+1,32是带有问号图标的提示框,1是显示“确定”和“取消”按钮,所以当你需要指定按钮和图标的时候可以把它们代表的数字加起来
    当你点击取消的时候返回值是2,而vbCancel 的值是2,如果返回值和vbcancel的值一致的话,那么你点击的就是取消按钮,msgbox之后会详细列出来

    msgRet = MsgBox("msg", 33)
    If msgRet = vbCancel Then
    Exit Sub
    End If

    打开新窗体,用法单独说明
    DoCmd.OpenForm "openedFormName", , , , , , "需要传递的参数"
    openedFormName中接收的写法是,变量=strTransitFormName = Me.OpenArgs

    子窗体调用主窗体的方法并关闭自己

    Dim main As MainForm
    Set main = MainForm
    main.検索_Click
    DoCmd.Close acForm, "ChildForm"

     子窗体右键可以删除数据的设置,设计视图许可设成 否
  • 相关阅读:
    【大厂面试06期】谈一谈你对Redis持久化的理解?
    【大厂面试05期】说一说你对MySQL中锁的了解?
    【大厂面试04期】讲讲一条MySQL更新语句是怎么执行的?
    【大厂面试03期】MySQL是怎么解决幻读问题的?
    【大厂面试02期】Redis过期key是怎么样清理的?
    【大厂面试01期】高并发场景下,如何保证缓存与数据库一致性?
    透过面试题掌握Redis【持续更新中】
    MySQL慢查询优化(线上案例调优)
    分享一个集成.NET Core+Swagger+Consul+Polly+Ocelot+IdentityServer4+Exceptionless+Apollo+SkyWalking的微服务开发框架
    微服务框架Demo.MicroServer运行手册
  • 原文地址:https://www.cnblogs.com/akatuki/p/4177840.html
Copyright © 2020-2023  润新知