Public fMainform As frmMain '他们是类型变量
Public UserName As String '定义全局变量已知道登录用户信息
Sub Main()
Dim fLogin As New frmLogin
fLogin.Show vbModal '显示登录窗体实例
'OK为fMainForm类的成员
If Not fLogin.OK Then '如果是flogin
'Login Failed so exit app
End
End If
Unload fLogin
Set fMainform = New frmMain
fMainform.Show '显示主窗体实例
End Sub
'
'以文件DSN标记,访问ODBC数据源
Public Function Connectstring() As String
' Connectstring = "Provider=SQLOLEDB;server=192.168.26.43;database=Student;UID=sa;PWD=1",这是远程异地发布的代码
Connectstring = "FileDSN=studentinfo.dsn;UID=sa;PWD=1"
End Function
Public Function ExecuteSQL(ByVal SQL As String, MsgString As String) As ADODB.Recordset '执行sql语句
'传递参数SQL传递查询语句,msgstring传递查询信息
'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) '用split函数产生一个包含各字串的数组
Set cnn = New ADODB.Connection ‘建立连接
cnn.Open Connectstring ’打开连接
'instr返回要截取的字符串在源字符串中的位置。instr是一个非常好用的字符串处理函数,几乎所有的字符串分隔都用到此函数。
'UCase用来将小写字母转化为大写字母
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
'得到临时表,游标指向第一条记录
'返回记录集
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
Public Function testtxt(txt As String) As Boolean
If Trim(txt) = "" Then '定义一个testtxt函数,检查输入内容是否为空
testtxt = False
Else
testtxt = True
End If
End Function
学生信息系统模块注释
最新推荐文章于 2022-08-11 21:28:27 发布