学生信息管理系统(四)——模块分析
2014-07-27 20:16
295 查看
学生信息管理系统已经敲完了,也进行了第一次验收,结果不是太理想。之前的总结也没有及时发表。现在重新复习一遍,把它发表。
从今天开始,我们就进入了代码分析阶段。现在我们就来分析一下模块中的几个函数。
ExecuteSQL函数:
含义:利用SQL语句查询字符串,返回ADO记录集。
1、split()函数
英文解释:vt.分裂;分开
计算机语言解释: 返回一个下标从零开始的一维数组,它包含指定数目的子字符串。
语法:Split(expression[, delimiter[, count[, compare]]])
个人理解:split(SQL)就是把整个SQL语句拆解为一个数组。
例如:
SQL="select * from user_Info"
split(SQL)
sTokens(0)=select
sTokens(1)=*
sTokens(2)=from
sTokens(3)=user_Info
这样就把一个完整的SQL语句拆解成了一个数组。
2、Instr()函数
含义:字符串处理函数,返回要截取的字符串在源字符串中的位置。
语法:Instr([start,]string1,string2[,compare])
从Start(若省略从第一位开始)位置开始,在string1中寻找string2,如果没有找到则返回0。
例如:
若SQL="select * from user_Info"
则InStr("INSERT,DELETE,UPDATE", UCase$(sTokens(0)))=0
从今天开始,我们就进入了代码分析阶段。现在我们就来分析一下模块中的几个函数。
Public Function ExecuteSQL(ByVal SQL As String, MsgString As String) As ADODB.Recordset 'executes SQL and returns Recordset Dim cnn As ADODB.Connection Dim rst As ADODB.Recordset Dim sTokens() As String On Error GoTo ExecuteSQL_Error sTokens = Split(SQL) Set cnn = New ADODB.Connection cnn.Open ConnectString If InStr("INSERT,DELETE,UPDATE", UCase$(sTokens(0))) Then '非Select语句 cnn.Execute SQL '数据量不大时,可以在连接上,直接执行SQL语句 MsgString = sTokens(0) & " query successful" '虽然MsgString不是返回值,但传递方式是ByRef,实参地址和这个地址相同 Else 'Select语句 Set rst = New ADODB.Recordset rst.Open Trim$(SQL), cnn, adOpenKeyset, adLockOptimistic '得到临时表,游标指向第一条记录 'get RecordCount, Set ExecuteSQL = rst 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
ExecuteSQL函数:
含义:利用SQL语句查询字符串,返回ADO记录集。
1、split()函数
英文解释:vt.分裂;分开
计算机语言解释: 返回一个下标从零开始的一维数组,它包含指定数目的子字符串。
语法:Split(expression[, delimiter[, count[, compare]]])
个人理解:split(SQL)就是把整个SQL语句拆解为一个数组。
例如:
SQL="select * from user_Info"
split(SQL)
sTokens(0)=select
sTokens(1)=*
sTokens(2)=from
sTokens(3)=user_Info
这样就把一个完整的SQL语句拆解成了一个数组。
2、Instr()函数
含义:字符串处理函数,返回要截取的字符串在源字符串中的位置。
语法:Instr([start,]string1,string2[,compare])
从Start(若省略从第一位开始)位置开始,在string1中寻找string2,如果没有找到则返回0。
例如:
若SQL="select * from user_Info"
则InStr("INSERT,DELETE,UPDATE", UCase$(sTokens(0)))=0
相关文章推荐
- 学生信息管理系统(三)——界面分析
- PB学习笔记之二pb程序系统分析学生信息管理系统
- c++封装链表实现-->学生信息管理分析系统
- 学生信息管理系统(三)——接口分析
- 学生信息管理系统之分析Eof和BOF
- 【转载】学生信息管理系统错误分析1
- 学生信息管理分析系统
- 学生信息管理系统之模块的理解
- 学生信息管理系统总结——student数据库中表关系分析
- 学生信息管理分析系统描述
- 学生信息管理系统总结——系统设计分析
- 学生信息管理系统总结——student数据库中表关系分析
- 【知识点】学生信息管理系统模块中ExecuteSQL函数
- 学生信息管理系统 模块代码总结
- 学生信息管理系统分析和感想
- 【学生信息管理系统】模块代码的理解
- 学生信息管理系统总结(二)——回首需求分析,建模
- 学生信息管理系统总结——系统设计分析
- 学生信息管理系统(一)——系统功能分析
- 学生信息管理系统(二)——数据库分析与实现