g'标记当前用户ID
PublicuserpowAsString'标记用户权限
Publicbook_numAsString'要借的书的编号
二、登录窗体:
1、界面及最终运行效果如图5-1
图5-1
2、用户可输入系统管理员的用户名,如"aa",然后输入密码,系统对输入的用户名及相应的密码进行校验。具体流程图如下图所示:
图5-2密码验证流程图
3、有关代码如下:
PrivateSubCommand1_Click()
DimsqlAsString
Dimrs_loginAsNewADODB.Recordset
IfTrim(txtuser.Text)=""Then'判断输入的用户名是否为空
MsgBox"没有这个用户",vbOKOnly+vbExclamation,""
txtuser.SetFocus
Else
sql="select*from系统管理where用户名='"&txtuser.Text&"'"
rs_login.Opensql,conn,adOpenKeyset,adLockPessimistic
Ifrs_login.EOF=TrueThen
MsgBox"没有这个用户",vbOKOnly+vbExclamation,""
txtuser.SetFocus
Else'检验密码是否正确
IfTrim(rs_login.Fields(1))=Trim(txtpwd.Text)Then
userID=txtuser.Text
userpow=rs_login.Fields(2)
rs_login.Close
UnloadMe
Form1.Show
Else
MsgBox"密码不正确",vbOKOnly+vbExclamation,""
txtpwd.SetFocus
EndIf
EndIf
EndIf
cnt=cnt+1
Ifcnt=3Then
UnloadMe
EndIf
ExitSub
EndSub
PrivateSubCommand2_Click()
UnloadMe
EndSub
PrivateSubForm_Load()
DimconnectionstringAsString
connectionstring="provider=Microsoft.Jet.oledb.4.0;"&_
"datasource=book.mdb"
conn.Openconnectionstring
cnt=0
EndSub
三、系统运行主界面:
图5-3
四、借书
1、首先进行馆藏图书的查询(具体界面的设置见图5-3):
图5-4
然后单击命令按钮"借这本书",若这本书已被借出,则弹出如下的对话框:
图5-5
否则进入到"借书"界面:
图5-6
2、流程图如下:
3、有关代码如下:
a、馆藏图书查询表单的有关代码:
OptionExplicit
DimpanduanAsString
PrivateSubCommand1_Click()
Dimrs_findbookAsNewADODB.Recordset
DimsqlAsString
IfCheck1.Value=vbCheckedThen
sql="书名='"&Trim(Text1.Text&"")&"'"
EndIf
IfCheck2.Value=vbCheckedThen
IfTrim(sql)=""Then
sql="类别='"&Trim(Combo1.Text&"")&"'"
Else
sql=sql&"and书名='"&Trim(Combo1.Text&"")&"'"
EndIf
EndIf
IfCheck3.Value=vbCheckedThen
IfTrim(sql)=""Then
sql="作者='"&Trim(Text2.Text&"")&"'"
Else
sql=sql&"and作者='"&Trim(Text2.Text&"")&"'"
EndIf
EndIf
IfCheck4.Value=vbCheckedThen
IfTrim(sql)=""Then
sql="出版社='"&Trim(Text3.Text&"")&"'"
Else
sql=sql&"and出版社='"&Trim(Text3.Text&"")&"'"
EndIf
EndIf
IfCheck5.Value=vbCheckedThen
IfTrim(sql)=""Then
sql="书籍编号='"&Trim(Text4.Text&"")&"'"
Else
sql=sql&"and书籍编号='"&Trim(Text4.Text&"")&"'"
EndIf
EndIf
IfTrim(sql)=""Then
MsgBox"请选择查询方式!",vbOKOnly+vbExclamation
ExitSub
EndIf
sql="select*from书籍信息where"&sql
rs_findbook.CursorLocation=adUseClient
rs_findbook.Opensql,conn,adOpenKeyset,adLockPessimistic
DataGrid1.AllowAddNew=False
DataGrid1.AllowDelete=False
DataGrid1.AllowUpdate=False
SetDataGrid1.DataSource=rs_findbook
'rs_findbook.Close
EndSub
PrivateSubCommand2_Click()
UnloadMe
EndSub
PrivateSubCommand3_Click()
IfTrim(book_num)=""Then
MsgBox"请选择要借阅的图书!",vbOKOnly+vbExclamation
ExitSub
EndIf
Ifpanduan="是"Then
MsgBox"此书已被借出!",vbOKOnly+vbExclamation
ExitSub
EndIf
frmborrowbook.Show
EndSub
PrivateSubDataGrid1_RowColChange(LastRowAsVariant,ByValLastColAsInteger)
book_num=DataGrid1.Columns(0).CellValue(DataGrid1.Bookmark)
panduan=DataGrid1.Columns(7).CellValue(DataGrid1.Bookmark)
EndSub
PrivateSubForm_Load()
Dimrs_findAsNewADODB.Recordset
DimsqlAsString
sql="select*from图书类别"
rs_find.Opensql,conn,adOpenKeyset,adLockPessimistic
rs_find.MoveFirst
IfNotrs_find.EOFThen
DoWhileNotrs_find.EOF
Combo1.AddItemrs_find.Fields(0)
rs_find.MoveNext
Loop
Combo1.ListIndex=0
EndIf
rs_find.Close
EndSub
b、借书表单的有关代码:
PrivateSubCommand1_Click()
Dimrs_borrowbookAsNewADODB.Recordset
DimsqlAsString
sql="select*from读者信息where读者编号='"&Combo1.Text&"'"
rs_borrowbook.Opensql,conn,adOpenKeyset,adLockPessimistic
leibie=rs_borrowbook.Fields(3)
shumu=rs_borrowbook.Fields(8)
rs_borrowbook.Close
sql="select*from读者类别where种类名称='"&leibie&"'"
rs_borrowbook.Opensql,conn,adOpenKeyset,adLockPessimistic
qixian=rs_borrowbook.Fields(2)
maxnum=rs_borrowbook.Fields(1)
rs_borrowbook.Close
Ifshumu>=maxnumThen
MsgBox"该读者借书数额已满!",vbOKOnly+vbExclamation
ExitSub
EndIf
sql="select*from借阅信息"
rs_borrowbook.Opensql,conn,adOpenKeyset,adLockPessimistic
rs_borrowbook.AddNew
rs_borrowbook.Fields(1)=Combo1.Text
rs_borrowbook.Fields(2)=Combo2.Text
rs_borrowbook.Fields(3)=Label8.Caption
rs_borrowbook.Fields(4)=Label9.Caption
rs_borrowbook.Fields(5)=Date
rs_borrowbook.Fields(6)=DateAdd("Ww",qixian,Date)
rs_borrowbook.Update
rs_borrowbook.Close
sql="select*from书籍信息where书籍编号='"&book_num&"'"
rs_borrowbook.Opensql,conn,adOpenKeyset,adLockPessimistic
rs_borrowbook.Fields(7)="是"
rs_borrowbook.Update
rs_borrowbook.Close
sql="select*from读者信息where读者编号='"&Combo1.Text&"'"
rs_borrowbook.Opensql,conn,adOpenKeyset,adLockPessimistic
rs_borrowbook.Fields(8)=rs_borrowbook.Fields(8)+1
rs_borrowbook.Update
rs_borrowbook.Close
MsgBox"本书借阅成功!",vbOKOnly+vbExclamation
UnloadMe
EndSub
PrivateSubCommand2_Click()
UnloadMe
EndSub
PrivateSubForm_Load()
Dimrs_borrowAsNewADODB.Recordset
Dimrs_readerAsNewADODB.Recordset
DimsqlAsString
sql="select*from书籍信息where书籍编号='"&book_num&"'"
rs_borrow.Opensql,conn,adOpenKeyset,adLockPessimistic
Label8.Caption=rs_borrow.Fields(0)
Label9.Caption=rs_borrow.Fields(1)
Label10.Caption=rs_borrow.Fields(2)
Label11.Caption=rs_borrow.Fields(3)
Label12.Caption=rs_borrow.Fields(4)
Label13.Caption=rs_borrow.Fields(5)
Label14.Caption=rs_borrow.Fields(6)
sql="select*from读者信息"
rs_reader.Opensql,conn,adOpenKeyset,adLockPessimistic
IfNotrs_reader.EOFThen
DoWhileNotrs_reader.EOF
Combo1.AddItemrs_reader.Fields(1)
Combo2.AddItemrs_reader.Fields(0)
rs_reader.MoveNext
Loop
Else
MsgBox"请先登记读者!",vbOKOnly+
上一篇:
VB固定资产管理系统AC(论文和程序)
下一篇:
浅析普外科围手术期抗菌药物的应用