这个是公用模块里的代码,我照书上的搬上来,帮我解释一下好吗?小弟感激不尽啊~~
由于系统中各个功能模块将频繁使用数据库中的各种数据,因此需要一个公共的数据操作函数,用以执行各种SQL语句。
添加函数ExecuteSQL,代码如下:
Public Function ExecuteSQL(BY Val SQL_
as String, MsgString as String)_
AS ADODB.Recordset
' 传递参数SQL传递查询语句,MsgString 传递查询信息
' 自身以一个数据集对象的形式返回
Dim cnn As ADODB.Connection 'ADODB是什么意思?
' 定义连接
Dim rst As ADODB.Connection
' 定义字符串
Dim sTokens() As String
' 异常处理
On Error GoTo ExecuteSQL_Error
' 用Split 函数产生一个包含各个子串的数组
sTokens=Split(SQL) 'Split是什么函数?
' 创建连接
Set cnn = New ADODB.Connection
' 打开连接
cnn.Open ConnectString
' 判断字符串中是否含有指定内容
If InStr ("INSER,DELETE<UPDATE",_
UCase$(sTokens(0))) Then ' 帮我解释一下这句的语法是什么意思
' 执行查询语句
cnn.Execute SQL
' 返回查询信息
MsgString = sTokens(0) & _
"query successful"
Else
' 创建数据集对象
Set rst = New ADODB.Recordset
' 返回查询结果
rst.Open Trim$(SQL),cnn,_
adOpenKeyset,_
adLockOptimistic
' rst.MoveLast 'get RecordCount
'返回记录集对象
Set ExecuteSQL = rst
MsgString = "查询到" & rst.RecordCount & _
" 条记录"
End If
ExecuteSQL_Exit :
' 清空数据集对象
Set cnn = Nothing
' 中断连接
Set cnn = Nothing
Exit Function
' 错误类型判断
ExecuteSQL_Error :
MsgString = "查询错误:"& _
Err.Description
Resume ExecuteSQL_Exit
End Function
以上就是那个程序了,蓝色是我最不懂的地方,有空的话希望斑竹详细的和我解释一下这段程序的意思和函数的用法,谢谢啊~~,我接触vb才不到5天
vb中看不懂的一段代码