vb的学习路走的并不是特别顺利,不是因为它的难度,而是自己的态度!
红皮书一直以来我都感觉它很神秘,刚开始来这里的时候,就听到别人说红皮书,当时脑子里便出现了一本红色封皮的,上面戳着几个大字——红皮书! 哈哈,当然到这里才发现,那只是我的脑洞而已!
红皮书封皮确实是红的,但是它的名字却不是”红皮书“而是 《Visual Basic 6.0 数据库开发经典实例精解》,显然这本书是数据库学习的基础!所以我就急匆匆的开始了第一个实例——系统登录对话框
照着书上的代码,很快就敲完了这个例题,所话说的好,慢工出细活,我这如此快工,当然要出问题了!
问题一、很多的代码拼写错误!
这是非常低级的错误,但也是比较容易弥补的错误!希望自己能后在下个实例中,静下心来,认真认真在认真!
问题二、很多语句没有弄明白,导致在调试过程中,出了问题无从下手!
问题三、在运用可视化数据管理器建数据库的时候,没有弄清楚,就乱建,导致后期的程序与数据库的链接出现问题!
问题四、不善于请教别人。我曾听说一句话,这里那么的课程,只靠你一个人是完不成的!要善于站在巨人的肩膀上!
问题五、在我程序运行的过程中,无论输入正确与否都会显示这种情况!
后来经过和平平的代码一步一步的对比,初步确定了问题的出处,
objCn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.3.51;" & _
"Data Source=" & App.Path & "\红皮书实例1.mdb"
这句代码,但是我俩的代码一模一样,我的就不行,复制了她的就行。鬼知道这是为什么!
后来又发现,自己的数据库也有问题,缺少了一个步骤!后来,修复了,就解决了!
问题六、写代码的时候一定要注意格式,否则调试的时候,看着自己乱七八糟的代码,简直想说“SHITE”
问题七、注释要写清楚!
问题分析的差不多了,现在就来记录一些经典的易出错的代码!(只代表我个人的意见)
On Error GoTo gpError
Dim objCn As New Connection, objRs As New Recordset, strCn As String
Dim strSQL As String
'建立数据库连接
objCn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.3.51;" & _
"Data Source=" & App.Path & "\红皮书实例1.mdb"
objCn.Open
'执行查询命令,获得用户登录口令
strSQL = "SELECT 口令 FROM 系统用户 WHERE 用户名='" & UserName & "'"
Set objRs.ActiveConnection = objCn
objRs.Open (strSQL)
'判断有无查询结果
If objRs.EOF Then
Check_PassWord = 0 '没有查询结果,表示该用户为非法用户
Else
'检查口令是否正确
If Password <> Trim(objRs.Fields("口令").Value) Then
Check_PassWord = 1 '口令不正确
Else
Check_PassWord = 2 '口令正确
End If
这一部分大概是简历与数据库的链接,判断用户和口令的过程!(竟说废话,注释写的很清楚)
Select Case Check_PassWord(strName, strPassword)
Case 0 '用户不是系统用户
MsgBox "<" & strName & _
">不是系统用户,请检查用户名输入是否正确!", vbCritical, "登录验证"
txtUserName.SetFocus
txtUserName.SelStart = 0
txtUserName.SelLength = Len(txtUserName)
Case 1
MsgBox "口令输入错误,请重新输入!", vbCritical, "登录验证"
txtPassWord = ""
' txtPassWord.SetFocus
Case 2
Unload Me
MsgBox "登陆成功,将启动系统程序!", vbInformation, "登陆验证"
Case Else
MsgBox "登陆验证未正常完成!请重新运行登陆程序," & vbCrLf _
& "如果仍不能登陆,请报告系统管理员!", vbCritical, "登录验证"
End Select
登录验证
最后在BB两句,实例一我感觉用到的最多的就是MSGBOX的使用!看来这些基础真的是不能忘!你觉得呢?