executssql 函数的每一句代码的意思

    Public Function Executesql(ByVal sql As String, Msgstring As String) As ADODB.Recordset

           Dim cnn As ADODB.Connection             '定义cnn 为数据库的连接形式,配合cnnectstring() 函数连接并打开数据库   cnnectstring的函数下面会有介绍
           Dim rst As ADODB.Recordset             '定义一个临时列表,存放从数据库中取出的数据
           Dim sTokens() As String                   '定义一个数组,将sql语句按数组的形式存放
    
           On Error GoTo Executesql_error     '如果出错,进行的应急处理
  sTokens = Split(sql)                               '通过split函数将sql 语句按单词存入数组,例:如果sql语句是 select * from student ,那么运行的结果就是——stokens(0)= "select",stokents(1)="*" ,stokens(2)="from",stokens(3)="student"

           Set cnn = New ADODB.Connection      '将cnn实例化
           cnn.Open ConnectString                '通过connectstring将数据库连接,并且打开
    
           If InStr("INSERT,DELET,UPDATE", UCase$(sTokens(0))) Then    '判断是否通过select语句进行查询操作
                  cnn.Execute sql<span style="white-space:pre">					</span>'直接执行操作,不返回操作结果。
                   Msgstring = sTokens(0) & "query successful"
          Else
                    Set rst = New ADODB.Recordset               '临时列表的实例化
                     rst.Open Trim$(sql), cnn, adOpenKeyset, adLockOptimistic     'rst打开,trim&()中保存的是要进行的操作字符串;cnn是字符串表达式,登录的 ODBC 数据源的名称,打开方式。;dOpenKeyset ,确定游标类型(即查找的方式) 为使用键集游标。不能访问其他用户删除的记录,但除无法查看其他用户添加的记录外,它和动态游标相似。其他用户所做的数据更改依然可见;adlockoptimistic,当数据源正在更新时,系统并不会锁住其他用户的动作,其他用户可以对数据进行增、删、改的操作。
                     Set Executesql = rst                 '将得到的临时列表赋值给executesql函数,尤它传回并进一步赋值给mrc
                      Msgstring = "查询到" & rst.RecordCount & "条记录"
    End If
    
Executesql_exit:                                '函数退出前的一个清空临时列表的操作。
    Set rst = Nothing
    Set cnn = Nothing
    Exit Function
Executesql_error:                               '错误标识,错误出现时的处理
    Msgstring = "查询错误:" & _
    Err.Description
    Resume Executesql_exit
    
End Function

ConnectString ()函数的介绍

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 24
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 24
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值