连接数据库的语句,有的地方不明白什么意思,解释一句5分!!!
需要解释的地方我已经给表明了,后面有'//'符号的就是不明白的,请大家给解释一下
谢谢
Public Function ExecuteSQL(ByVal SQL As String, MsgString As String) As ADODB.Recordset
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim sTokens() As String
On Error GoTo ExecuteSQL_Error
sToken = Split(SQL) //Split用法
Set conn = New ADODB.Connection
conn.Open Connectstring
If InStr("INSERT,DELETE,UPDATE", UCase$(sToken(0))) Then //我想知道的是InStr,UCase,$的意义
conn.Execute (SQL)
MsgString = sTokens(0) & "query successful"
Else
Set rs = New ADODB.Recordset
rs.Open Trim$(SQL), conn
Set ExecuteSQL = rs
MsgString = "search" & rs.RecordCount & "notes"
End If
ExecuteSQL_Exit:
Set rs = Nothing
Set conn = Nothing
Exit Function
ExecuteSQL_Error:
MsgString = "search false:" & Err.Description //Description
Resume ExecuteSQL_Exit
End Function
Public Function Connectstring() As String
Connectstring = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=home;Data Source=(local)" //Provider=SQLOLEDB.1, Persist Security Info=False
End Function
这个是我连接数据库的语句
没有问题
但上面的地方不是很理解
所以想请各位给解释一下
问题点数:70、回复次数:8Top
1 楼truewill(无处不在)回复于 2004-08-04 14:56:23 得分 0
这些msdn都有吧
split就是按空格分成数组
$是表示as string的意思,又没有一样Top
2 楼LGYAN(紫衣随想)回复于 2004-08-04 15:01:05 得分 8
Split函数
描述
返回一个下标从零开始的一维数组,它包含指定数目的子字符串。
语法
Split(expression[, delimiter[, count[, compare]]])
Split函数语法有如下几部分:
部分 描述
expression 必需的。包含子字符串和分隔符的字符串表达式 。如果expression是一个长度为零的字符串(""),Split则返回一个空数组,即没有元素和数据的数组。
delimiter 可选的。用于标识子字符串边界的字符串字符。如果忽略,则使用空格字符(" ")作为分隔符。如果delimiter是一个长度为零的字符串,则返回的数组仅包含一个元素,即完整的 expression字符串。
count 可选的。要返回的子字符串数,–1表示返回所有的子字符串。
compare 可选的。数字值,表示判别子字符串时使用的比较方式。关于其值,请参阅“设置值”部分。
设置值
compare参数的设置值如下:
常数 值 描述
vbUseCompareOption –1 用Option Compare语句中的设置值执行比较。
vbBinaryCompare 0 执行二进制比较。
vbTextCompare 1 执行文字比较。
vbDatabaseCompare 2 仅用于Microsoft Access。基于您的数据库的信息执行比较。
Top
3 楼LGYAN(紫衣随想)回复于 2004-08-04 15:01:28 得分 8
InStr 函数
返回 Variant (Long),指定一字符串在另一字符串中最先出现的位置。
语法
InStr([start, ]string1, string2[, compare])
InStr 函数的语法具有下面的参数:
部分 说明
start 可选参数。为数值表达式,设置每次搜索的起点。如果省略,将从第一个字符的位置开始。如果 start 包含 Null,将发生错误。如果指定了 compare 参数,则一定要有 start 参数。
string1 必要参数。接受搜索的字符串表达式。
string2 必要参数。被搜索的字符串表达式。
Compare 可选参数。指定字符串比较。如果 compare 是 Null,将发生错误。如果省略 compare,Option Compare 的设置将决定比较的类型。
设置
compare 参数设置为:
常数 值 描述
vbUseCompareOption -1 使用Option Compare 语句设置执行一个比较。
vbBinaryCompare 0 执行一个二进制比较。
vbTextCompare 1 执行一个按照原文的比较。
vbDatabaseCompare 2 仅适用于Microsoft Access,执行一个基于数据库中信息的比较。
返回值
如果 InStr返回
string1 为零长度 0
string1 为 Null Null
string2 为零长度 Start
string2 为 Null Null
string2 找不到 0
在 string1 中找到string2 找到的位置
start > string2 0
说明
InStrB 函数作用于包含在字符串中的字节数据。所以 InStrB 返回的是字节位置,而不是字符位置。
Top
4 楼LGYAN(紫衣随想)回复于 2004-08-04 15:01:53 得分 8
UCase 函数
返回 Variant (String),其中包含转成大写的字符串。
语法
UCase(string)
必要的 string 参数为任何有效的字符串表达式。如果 string 包含 Null,将返回 Null。
说明
只有小写的字母会转成大写;原本大写或非字母之字符保持不变。
Top
5 楼adamcn(adamcn)回复于 2004-08-04 15:11:25 得分 8
MsgString = "search false:" & Err.Description
Err.Description 是出错信息,if err.number<>0 then msgbox Err.Description
如果出错,弹出出错信息
Provider=SQLOLEDB.1:
说明链接的数据库是sqlserverTop
6 楼xzyan80(up)回复于 2004-08-04 15:20:01 得分 0
谢谢上面各位的解答
Persist Security Info=False
这个是什么意思呢?Top
7 楼SoHo_Andy(冰)回复于 2004-08-04 15:28:49 得分 8
Persist Security Info=False 是指哪一种验证类型
如果为false则需要给定用户名和密码,就是SQL Server 验证
如果为True 就是windows 混合验证,无须用户名和密码,有也无妨
Top
8 楼xzhy80(算了吧,散了吧)回复于 2004-08-04 15:44:16 得分 30
楼上的都说完了
Top




