刚开始学习数据库时 ,对数据库很不了解,尤其是模块中的代码。照着抄都有很多错的,每一句到底是什么意思呢,根本不懂。于是我就花费了大量的时间去查每一句代码的具体作用,直到我师傅说让我带着问题前进的时候。
Sub Main() '从sub main启动工程 Dim flogin As New frmlogin '登陆窗体的模版 ,其中flogin 是一个窗体,不过为什么不直接登录就不懂了。。。 flogin.Show vbModal '把登陆窗体实例化 If Not flogin.OK Then 'ok是加载在flogin窗体的一个开关,用来确定是否登陆成功 End End If Unload flogin Set fMainForm = New frmMain '窗体实例化,类似flogin fMainForm.Show End Sub
进入登陆界面
点击确定后的代码运行方式
Private Sub cmdok_Click() Dim txtsql As String '定义一个字符串,存放sql的语句。 Dim mrc As ADODB.Recordset ’定义一个结果集(或者说是临时的表格)存放从数据库中调出的数据 Dim MsgText As String ’定义一个字符串,存放连接数据库的结果。一般不再用户界面体现 If Trim(txtUserName.Text) = "" Then '验证用户名栏是否为空 MsgBox "请输入用户名",vbOKOnly,"警告" '如果是空的话,直接警告并退出 exit sub Else txtsql = "select * from user_info where user_ID='" & Trim(txtUserName.Text) & "'" 'sql语句,这句话的意思是从 'user_info 的表格中取出来所有user_id =用户名中 字符的行。 Set mrc = Executesql(txtsql,MsgText) '通过Executesql()这个函数将sql 语句送入,并将操作结束后得到的结果集赋值给 mrc <span style="white-space:pre"> </span>' 括号中的txtsql存放的就是sql字符串,关于executesql()函数的运行方式,下面有详细的描述。 If mrc.EOF Then ’.eof是mrc的一个属性,如果从数据库中进行了sql语句的操作,数据库将从第一句开始查找符合条件的项<span style="white-space:pre"> </span>'进行操作,如果查到了最后一句,并且没有发现任何符合条件的项,就会返回. eof= true 否则返回的<span style="white-space:pre"> </span>'则是 .eof=flase 如果他报错的话,说明连接失败 详情参见:<a target=_blank href="http://blog.csdn.net/liyasong666888/article/details/37931469">mrcc.eof</a> MsgBox "没有该用户,请重新输入!","警告" txtUserName.SetFocus Else '如果从数据库中找到了所要找的项的话进行如下操作(此时数据存入mrc) If Trim(mrc.Fields(1)) = Trim(txtPassword.Text) Then '调出数据中的第一列,看其值是否等于用户输入的密码。 OK = True Me.Hide UserName = txtUserName.Text Else MsgBox "密码错误,请重新输入密码" txtPassword.Text = "" txtPassword.SetFocus End If End If End If end sub