当前位置:文档之家› vb图书管理系统源代码

vb图书管理系统源代码

vb图书管理系统源代码
vb图书管理系统源代码

Borbook:

Public sqltxt As String

Public rno As String '保存读者借书证号

Public bno As String '保存读者图书编号

Public xm As String '保存读者姓名

Public dw As String '保存读者单位

Public rs As ADODB.Recordset

Private Sub Comm1_Click()

rno = Trim(Text1(0).Text)

If rno = "" Then

MsgBox "借书证号不能为空,请输入", vbOKOnly, "信息提示"

Comm2.Enabled = False

Else

sqltxt = "select * from reader where 借书证号='" + rno + "'"

Set rs = exesql(sqltxt)

If rs.RecordCount = 0 Then

MsgBox "该读者未登记,不能借书", vbOKOnly, "信息提示"

Comm2.Enabled = False

Else

Text2(0).Text = rs.Fields("姓名")

Text2(1).Text = str(rs.Fields("借书总数"))

Text2(2).Text = str(rs.Fields("借书总数") - rs.Fields("已借书数"))

If V al(Trim(Text2(2).Text)) > 0 Then

xm = rs.Fields("姓名")

dw = rs.Fields("单位")

Comm2.Enabled = True

Else

MsgBox "该读者已借满图书,不能再借!", vbOKOnly, "信息提示"

Comm2.Enabled = False

End If

End If

End If

End Sub

Private Sub Comm2_Click()

If V al(Trim(Text2(2).Text)) = 0 Then

MsgBox "该读者已借满图书,不能再借!", vbOKOnly, "信息提示"

Comm2.Enabled = False

Exit Sub

End If

bno = Trim(Text1(1).Text)

If bno = "" Then

MsgBox "图书编号不能为空,请输入", vbOKOnly, "信息提示"

Comm2.Enabled = False

Else

sqltxt = "select * from book where 图书编号='" + bno + "'"

Set bs = exesql(sqltxt)

If bs.RecordCount = 0 Then

MsgBox "图书编号不正确,请重新输入", vbOKOnly, "信息提示"

Else

If bs.Fields("借否") = "借" Then

MsgBox "该图书编号对应的图书已借出,不能再借!", vbOKOnly, "信息提示"

Else

sqltxt = "select * from borrow"

Set brs = exesql(sqltxt)

brs.AddNew

brs.Fields("图书编号") = bno

brs.Fields("书名") = bs.Fields("书名")

brs.Fields("作者") = bs.Fields("作者")

brs.Fields("出版社") = bs.Fields("出版社")

brs.Fields("借书证号") = rno

brs.Fields("姓名") = xm

brs.Fields("单位") = dw

brs.Fields("借书日期") = Date

brs.Update

bs.Fields("借否") = "借"

bs.Update

rs.Fields("已借书数") = rs.Fields("已借书数") + 1

rs.Update

Text2(2).Text = str(rs.Fields("借书总数") - rs.Fields("已借书数"))

End If

End If

End If

End Sub

Private Sub retCom_Click()

Unload Me

End Sub

Private Sub Form_Load()

Comm2.Enabled = False

End Sub

Private Sub DataGrid1_Click()

End Sub

Private Sub Form_Load()

'说明:为什么使用recs,而不直接使用adodc1.recordset.recordcount?在调用edbook1窗体添加一个记录(确定)后,再

'返回到本表单,若不在Form_Activate()事件过程中调用adodc1.refresh进行刷新,adodc1.recordset.recordcount值

'仍未增1,这样调用encomm过程时出错;若在Form_Activate()事件过程中调用adodc1.refresh进行刷新,

'adodc1.recordset.recordcount值增1了,调用encomm过程时也正确,但返回本窗体时,当前行总是第一行,显然也不行,

'因为用户在添加或修改后希望在datagrid1中显示当前操作的那条记录.

recs = Adodc1.Recordset.RecordCount

End Sub

Private Sub Form_Activate()

DataGrid1.SetFocus

Call encomm

End Sub

Private Sub Comm1_Click()

flag = 1

edbook1.Show vbModal

End Sub

Private Sub Comm2_Click()

flag = 2

edbook1.Show vbModal

End Sub

Private Sub Comm3_Click()

If MsgBox("真的要删除[" + Trim(Adodc1.Recordset.Fields("书名")) + "]吗?", vbY esNo, "信息提示") = vbY es Then

Adodc1.Recordset.Delete

recs = recs - 1

Call encomm

End If

End Sub

Private Sub Comm4_Click()

Unload Me

Private Sub selcmd1_Click() '确定

Dim str As String

str = "" '条件表达式

If Trim(Text1(0).Text) <> "" Then

If str = "" Then

str = "图书编号='" + Trim(Text1(0).Text) + "'"

Else

str = str + " and 图书编号='" + Trim(Text1(0).Text) + "'"

End If

End If

If Trim(Text1(1).Text) <> "" Then

If str = "" Then

str = "书名='" + Trim(Text1(1).Text) + "'"

Else

str = str + " and 书名='" + Trim(Text1(1).Text) + "'"

End If

End If

If Trim(Text1(2).Text) <> "" Then

If str = "" Then

str = "作者='" + Trim(Text1(2).Text) + "'"

Else

str = str + " and 作者='" + Trim(Text1(2).Text) + "'"

End If

End If

If Trim(Text1(3).Text) <> "" Then

If str = "" Then

str = "出版社='" + Trim(Text1(3).Text) + "'"

Else

str = str + " and 出版社='" + Trim(Text1(3).Text) + "'"

End If

End If

If Trim(Text1(4).Text) <> "" Then

If str = "" Then

str = "借否='" + Trim(Text1(4).Text) + "'"

Else

str = str + " and 借否='" + Trim(Text1(4).Text) + "'"

End If

End If

If str <> "" Then

Adodc1.RecordSource = "select * from book where " + str

Adodc1.Refresh

Else

Adodc1.RecordSource = "select * from book"

Adodc1.Refresh

End If

recs = Adodc1.Recordset.RecordCount

If recs = 0 Then

MsgBox "没有任何满足条件的记录", vbOKOnly, "信息提示" End If

Call encomm

End Sub

Private Sub selcmd2_Click() '重置

Text1(0).Text = ""

Text1(1).Text = ""

Text1(2).Text = ""

Text1(3).Text = ""

Text1(4).Text = ""

End Sub

Private Sub encomm() '自定义子过程:判断Adodc1中是否存在记录If recs = 0 Then

Comm2.Enabled = False

Comm3.Enabled = False

Else

Comm2.Enabled = True

Comm3.Enabled = True

End If

End Sub

Private Sub Text1_KeyPress(Index As Integer, KeyAscii As Integer) Call endata(KeyAscii)

End Sub

Edbook1:

Dim rs As ADODB.Recordset

Private Sub Form_Load()

If flag = 2 Then '修改操作

Text1(0).Text = edbook.Adodc1.Recordset.Fields("图书编号") & ""

Text1(1).Text = edbook.Adodc1.Recordset.Fields("分类号") & ""

Text1(2).Text = edbook.Adodc1.Recordset.Fields("书名") & ""

Text1(3).Text = edbook.Adodc1.Recordset.Fields("作者") & ""

DataCombo1.Text = edbook.Adodc1.Recordset.Fields("出版社") & ""

Text1(4).Text = edbook.Adodc1.Recordset.Fields("定价") & ""

Text1(5).Text = edbook.Adodc1.Recordset.Fields("入库日期") & ""

Text1(0).Enabled = False

Else '添加操作

Text1(5).Text = Date

End If

End Sub

Private Sub Form_Activate()

Adodc1.Refresh '数据源刷新

End Sub

Private Sub Comm1_Click()

If Trim(Text1(0).Text) = "" Or Trim(Text1(2).Text) = "" Or Trim(Text1(3).Text) = "" Or Trim(Text1(5).Text) = "" Then

MsgBox "加*数据项不能为空,请重新设置", vbOKOnly, "信息提示"

Exit Sub

End If

If flag = 1 Then '添加操作

sqltxt = "select * from book where 图书编号='" + Trim(Text1(0).Text) + "'" '对book中记录进行判断

Set rs = exesql(sqltxt)

If rs.RecordCount <> 0 Then

MsgBox "存在相同的图书编号", vbOKOnly, "信息提示"

Text1(0).SetFocus

rs.Close

Exit Sub

Else

rs.Close

End If

edbook.Adodc1.Recordset.AddNew

edbook.Adodc1.Recordset.Fields("图书编号") = Trim(Text1(0).Text)

edbook.Adodc1.Recordset.Fields("分类号") = Trim(Text1(1).Text)

edbook.Adodc1.Recordset.Fields("书名") = Trim(Text1(2).Text)

edbook.Adodc1.Recordset.Fields("作者") = Trim(Text1(3).Text)

edbook.Adodc1.Recordset.Fields("出版社") = Trim(DataCombo1.Text)

edbook.Adodc1.Recordset.Fields("定价") = V al(Trim(Text1(4).Text))

edbook.Adodc1.Recordset.Fields("入库日期") = Format(Trim(Text1(5).Text), "yyyy-mm-dd")

edbook.Adodc1.Recordset.Fields("借否") = "否"

edbook.Adodc1.Recordset.Update

recs = recs + 1

Else '修改操作

edbook.Adodc1.Recordset.Fields("图书编号") = Trim(Text1(0).Text)

edbook.Adodc1.Recordset.Fields("分类号") = Trim(Text1(1).Text)

edbook.Adodc1.Recordset.Fields("书名") = Trim(Text1(2).Text)

edbook.Adodc1.Recordset.Fields("作者") = Trim(Text1(3).Text)

edbook.Adodc1.Recordset.Fields("出版社") = Trim(DataCombo1.Text)

edbook.Adodc1.Recordset.Fields("定价") = V al(Trim(Text1(4).Text))

edbook.Adodc1.Recordset.Fields("入库日期") = Format(Trim(Text1(5).Text), "yyyy-mm-dd")

edbook.Adodc1.Recordset.Update

End If

Unload Me

End Sub

Private Sub Comm2_Click()

Unload Me

End Sub

Private Sub selcom_Click()

tna = "press"

cap = "出版社"

edrec.Show vbModal

End Sub

Private Sub Text1_KeyPress(Index As Integer, KeyAscii As Integer)

If Index = 1 Then

If KeyAscii = 13 Then

sqltxt = "select * from book where 分类号='" + Trim(Text1(1).Text) + "'" '对book中记录进行判断

Set rs = exesql(sqltxt)

If rs.RecordCount > 0 Then

Text1(2).Text = rs.Fields("书名")

Text1(3).Text = rs.Fields("作者")

Text1(4).Text = rs.Fields("定价")

DataCombo1.Text = rs.Fields("出版社")

rs.Close

Text1(5).SetFocus

Else

Call endata(KeyAscii)

End If

End If

Else

Call endata(KeyAscii)

End If

End Sub

Private Sub DataCombo1_KeyPress(KeyAscii As Integer) Call endata(KeyAscii)

End Sub

Dim msg As String

Private Sub Form_Load()

recs = Adodc1.Recordset.RecordCount

End Sub

Private Sub Form_Activate()

Call encomm

End Sub

Private Sub Comm1_Click()

flag = 1

edlev1.Show vbModal

End Sub

Private Sub Comm2_Click()

flag = 2

edlev1.Show vbModal

End Sub

Private Sub Comm3_Click()

If MsgBox("真的要删除[" + Trim(Adodc1.Recordset.Fields("级别")) + "]吗?", vbY esNo, "信息提示") = vbY es Then

Adodc1.Recordset.Delete

recs = recs - 1

Call encomm

End If

End Sub

Private Sub Comm4_Click()

Unload Me

End Sub

Private Sub encomm()

If recs = 0 Then

Comm2.Enabled = False

Comm3.Enabled = False

Else

Comm2.Enabled = True

Comm3.Enabled = True

End If

End Sub

Dim cond As String

Private Sub Form_Load()

If flag = 2 Then

Text1(0).Text = edlev.Adodc1.Recordset.Fields("级别")

Text1(1).Text = edlev.Adodc1.Recordset.Fields("过期罚款")

Text1(2).Text = edlev.Adodc1.Recordset.Fields("借书总数")

Text1(3).Text = edlev.Adodc1.Recordset.Fields("借书天数")

End If

End Sub

Private Sub Comm1_Click()

If Trim(Text1(0).Text) = "" Or Trim(Text1(1).Text) = "" Or Trim(Text1(2).Text) = "" Or _ Trim(Text1(3).Text) = "" Then

MsgBox "数据项不全,请重新设置", vbOKOnly, "信息提示"

Text1(0).SetFocus

Exit Sub

End If

If flag = 1 Then '添加操作

If edlev.Adodc1.Recordset.RecordCount > 0 Then '原记录个数大于0

cond = "级别='" + Trim(Text1(0).Text) + "'"

edlev.Adodc1.Recordset.MoveFirst '每次从头开始查找

edlev.Adodc1.Recordset.Find (cond)

If Not edlev.Adodc1.Recordset.EOF() Then

MsgBox "存在完全相同的记录", vbOKOnly, "信息提示"

Text1(0).SetFocus

Exit Sub

End If

End If

edlev.Adodc1.Recordset.AddNew

edlev.Adodc1.Recordset.Fields("级别") = Trim(Text1(0).Text)

edlev.Adodc1.Recordset.Fields("过期罚款") = V al(Trim(Text1(1).Text))

edlev.Adodc1.Recordset.Fields("借书总数") = V al(Trim(Text1(2).Text))

edlev.Adodc1.Recordset.Fields("借书天数") = V al(Trim(Text1(3).Text))

edlev.Adodc1.Recordset.Update

recs = recs + 1

Else '修改操作

n = edlev.Adodc1.Recordset.AbsolutePosition

cond = "级别='" + Trim(Text1(0).Text) + "'"

edlev.Adodc1.Recordset.MoveFirst '每次从头开始查找

edlev.Adodc1.Recordset.Find (cond)

If Not edlev.Adodc1.Recordset.EOF() And edlev.Adodc1.Recordset.AbsolutePosition <> n Then

MsgBox "存在完全相同的记录", vbOKOnly, "信息提示"

edlev.Adodc1.Recordset.MoveFirst '这两个语句恢复原记录位置

edlev.Adodc1.Recordset.Move (n - 1)

Text1(0).SetFocus

Exit Sub

End If

edlev.Adodc1.Recordset.MoveFirst '这两个语句恢复原记录位置edlev.Adodc1.Recordset.Move (n - 1)

edlev.Adodc1.Recordset.Fields("级别") = Trim(Text1(0).Text)

edlev.Adodc1.Recordset.Fields("过期罚款") = V al(Trim(Text1(1).Text))

edlev.Adodc1.Recordset.Fields("借书总数") = V al(Trim(Text1(2).Text))

edlev.Adodc1.Recordset.Fields("借书天数") = V al(Trim(Text1(3).Text))

edlev.Adodc1.Recordset.Update

End If

Unload Me

End Sub

Private Sub Comm2_Click()

Unload Me

End Sub

Edreader:

Private Sub DataGrid1_Click()

End Sub

Private Sub Form_Load()

recs = Adodc1.Recordset.RecordCount

End Sub

Private Sub Form_Activate()

DataGrid1.SetFocus

Call encomm

End Sub

Private Sub Comm1_Click()

flag = 1

edreader1.Show vbModal

End Sub

Private Sub Comm2_Click()

flag = 2

edreader1.Show vbModal

End Sub

Private Sub Comm3_Click()

If MsgBox("真的要删除[" + Trim(Adodc1.Recordset.Fields("姓名")) + "]吗?", vbY esNo, "信息提示") = vbY es Then

Adodc1.Recordset.Delete

recs = recs - 1

Call encomm

End If

End Sub

Private Sub Comm4_Click()

Unload Me

End Sub

Private Sub selcmd1_Click() '设置条件确定

Dim str As String

str = "" '条件表达式

If Trim(Text1(0).Text) <> "" Then

If str = "" Then

str = "借书证号='" + Trim(Text1(0).Text) + "'"

Else

str = str + " and 借书证号='" + Trim(Text1(0).Text) + "'"

End If

End If

If Trim(Text1(1).Text) <> "" Then

If str = "" Then

str = "姓名='" + Trim(Text1(1).Text) + "'"

Else

str = str + " and 姓名='" + Trim(Text1(1).Text) + "'"

End If

End If

If Trim(Text1(2).Text) <> "" Then

If str = "" Then

str = "单位='" + Trim(Text1(2).Text) + "'"

Else

str = str + " and 单位='" + Trim(Text1(2).Text) + "'"

End If

End If

If Trim(Text1(3).Text) <> "" Then

If str = "" Then

str = "级别='" + Trim(Text1(3).Text) + "'"

Else

str = str + " and 级别='" + Trim(Text1(3).Text) + "'"

End If

End If

If Trim(Text1(4).Text) <> "" Then

If str = "" Then

str = "性别='" + Trim(Text1(4).Text) + "'"

Else

str = str + " and 性别='" + Trim(Text1(4).Text) + "'"

End If

End If

If str <> "" Then

Adodc1.RecordSource = "select * from reader where " + str

Adodc1.Refresh

Else

Adodc1.RecordSource = "select * from reader"

Adodc1.Refresh

End If

recs = Adodc1.Recordset.RecordCount

If recs = 0 Then

MsgBox "没有任何满足条件的记录", vbOKOnly, "信息提示" End If

Call encomm

End Sub

Private Sub selcmd2_Click() '设置条件重置

Text1(0).Text = ""

Text1(1).Text = ""

Text1(2).Text = ""

Text1(3).Text = ""

Text1(4).Text = ""

End Sub

Private Sub encomm() '自定义子过程:判断Adodc1中是否存在记录If recs = 0 Then

Comm2.Enabled = False

Comm3.Enabled = False

Else

Comm2.Enabled = True

Comm3.Enabled = True

End If

End Sub

Private Sub Text1_KeyPress(Index As Integer, KeyAscii As Integer) Call endata(KeyAscii)

End Sub

Edreader1:

Dim rs As ADODB.Recordset

Private Sub Form_Load()

If flag = 2 Then '修改操作

Text1(0).Text = edreader.Adodc1.Recordset.Fields("借书证号") & ""

Text1(1).Text = edreader.Adodc1.Recordset.Fields("姓名") & ""

If edreader.Adodc1.Recordset.Fields("性别") = "男" Then

opt1.V alue = True

Else

opt2.V alue = True

End If

DataCombo2.Text = edreader.Adodc1.Recordset.Fields("单位") & ""

DataCombo1.Text = edreader.Adodc1.Recordset.Fields("级别") & ""

Text1(2).Text = edreader.Adodc1.Recordset.Fields("过期罚款") & ""

Text1(3).Text = edreader.Adodc1.Recordset.Fields("借书总数") & ""

Text1(4).Text = edreader.Adodc1.Recordset.Fields("借书天数") & ""

Text1(5).Text = edreader.Adodc1.Recordset.Fields("登记日期") & ""

Text1(0).Enabled = False

Else '添加操作

Text1(5).Text = Date

End If

End Sub

Private Sub Form_Activate()

Adodc1.Refresh '数据源刷新

Adodc2.Refresh '数据源刷新

DataCombo1.Refresh

DataCombo2.Refresh

End Sub

Private Sub Comm1_Click()

If Trim(Text1(0).Text) = "" Or Trim(Text1(1).Text) = "" Or Trim(Text1(5).Text) = "" Or Trim(DataCombo1.Text) = "" Then

MsgBox "加*数据项不能为空,请重新设置", vbOKOnly, "信息提示"

Exit Sub

End If

If flag = 1 Then '添加操作

sqltxt = "select * from reader where 借书证号='" + Trim(Text1(0).Text) + "'" '对reader中记录进行判断

Set rs = exesql(sqltxt)

If rs.RecordCount <> 0 Then

MsgBox "存在相同的借书证号", vbOKOnly, "信息提示"

Text1(0).SetFocus

rs.Close

Exit Sub

Else

rs.Close

End If

edreader.Adodc1.Recordset.AddNew

edreader.Adodc1.Recordset.Fields("借书证号") = Trim(Text1(0).Text)

edreader.Adodc1.Recordset.Fields("姓名") = Trim(Text1(1).Text)

If opt1.V alue = True Then

edreader.Adodc1.Recordset.Fields("性别") = "男"

Else

edreader.Adodc1.Recordset.Fields("性别") = "女"

End If

edreader.Adodc1.Recordset.Fields("单位") = Trim(DataCombo2.Text)

edreader.Adodc1.Recordset.Fields("级别") = Trim(DataCombo1.Text)

edreader.Adodc1.Recordset.Fields("过期罚款") = Trim(Text1(2).Text)

edreader.Adodc1.Recordset.Fields("借书总数") = V al(Trim(Text1(3).Text))

edreader.Adodc1.Recordset.Fields("借书天数") = V al(Trim(Text1(4).Text))

edreader.Adodc1.Recordset.Fields("已借书数") = 0

edreader.Adodc1.Recordset.Fields("登记日期") = Format(Trim(Text1(5).Text), "yyyy-mm-dd")

edreader.Adodc1.Recordset.Update

recs = recs + 1

Else '修改操作

edreader.Adodc1.Recordset.Fields("借书证号") = Trim(Text1(0).Text)

edreader.Adodc1.Recordset.Fields("姓名") = Trim(Text1(1).Text)

If opt1.V alue = True Then

edreader.Adodc1.Recordset.Fields("性别") = "男"

Else

edreader.Adodc1.Recordset.Fields("性别") = "女"

End If

edreader.Adodc1.Recordset.Fields("单位") = Trim(DataCombo2.Text)

edreader.Adodc1.Recordset.Fields("级别") = Trim(DataCombo1.Text)

edreader.Adodc1.Recordset.Fields("过期罚款") = Trim(Text1(2).Text)

edreader.Adodc1.Recordset.Fields("借书总数") = V al(Trim(Text1(3).Text))

edreader.Adodc1.Recordset.Fields("借书天数") = V al(Trim(Text1(4).Text))

edreader.Adodc1.Recordset.Fields("登记日期") = Format(Trim(Text1(5).Text), "yyyy-mm-dd")

edreader.Adodc1.Recordset.Update

edreader.Adodc1.Recordset.Update

End If

Unload Me

End Sub

Private Sub Comm2_Click()

Unload Me

End Sub

Private Sub selcom1_Click()

edlev.Show vbModal

End Sub

Private Sub selcom2_Click()

tna = "depart"

cap = "单位"

edrec.Show vbModal

End Sub

Private Sub Text1_KeyPress(Index As Integer, KeyAscii As Integer)

Call endata(KeyAscii)

End Sub

Private Sub DataCombo1_LostFocus()

If Adodc1.Recordset.RecordCount > 0 Then

If Trim(DataCombo1.Text) <> "" Then

Adodc1.Recordset.MoveFirst

Adodc1.Recordset.Find ("级别='" & Trim(DataCombo1.Text) & "'")

Text1(2).Text = Adodc1.Recordset.Fields("过期罚款")

Text1(3).Text = Adodc1.Recordset.Fields("借书总数")

Text1(4).Text = Adodc1.Recordset.Fields("借书天数")

End If

Else

MsgBox "没有任何级别项可选,请设置", vbOKOnly, "信息提示" End If

End Sub

Private Sub DataCombo1_KeyPress(KeyAscii As Integer)

Call endata(KeyAscii)

End Sub

Private Sub DataCombo2_KeyPress(KeyAscii As Integer)

endata (KeyAscii)

End Sub

Dim msg As String

Private Sub Form_Load()

Adodc1.RecordSource = "select * from " + tna

Adodc1.Refresh

recs = Adodc1.Recordset.RecordCount

DataGrid1.Columns(0).Caption = cap

DataGrid1.Columns(0).DataField = "fn"

End Sub

Private Sub Form_Activate()

Call encomm

End Sub

Private Sub Comm1_Click()

flag = 1

edrec1.Show vbModal

End Sub

Private Sub Comm2_Click()

flag = 2

edrec1.Show vbModal

End Sub

Private Sub Comm3_Click()

If MsgBox("真的要删除[" + Trim(Adodc1.Recordset.Fields("fn")) + "]吗?", vbY esNo, "信息提示") = vbY es Then

Adodc1.Recordset.Delete

recs = recs - 1

Call encomm

End If

End Sub

Private Sub Comm4_Click()

Adodc1.Recordset.UpdateBatch

Adodc1.Recordset.Close

Unload Me

End Sub

Private Sub encomm()

If recs = 0 Then

Comm2.Enabled = False

Comm3.Enabled = False

Else

Comm2.Enabled = True

Comm3.Enabled = True

End If

End Sub

Dim cond As String

Private Sub Form_Load()

Label1.Caption = cap

If flag = 1 Then

Text1.Text = ""

Else

Text1.Text = edrec.Adodc1.Recordset.Fields("fn")

End If

End Sub

Private Sub Comm1_Click()

If Trim(Text1.Text) = "" Then

MsgBox "数据项不能为空,请重新设置", vbOKOnly, "信息提示"

Text1.SetFocus

Exit Sub

End If

If flag = 1 Then '添加操作

If edrec.Adodc1.Recordset.RecordCount > 0 Then '原记录个数大于0

cond = "fn='" + Trim(Text1.Text) + "'"

edrec.Adodc1.Recordset.MoveFirst '每次从头开始查找

edrec.Adodc1.Recordset.Find (cond)

If Not edrec.Adodc1.Recordset.EOF() Then

MsgBox "存在完全相同的记录", vbOKOnly, "信息提示"

Text1.SetFocus

Exit Sub

End If

End If

edrec.Adodc1.Recordset.AddNew

edrec.Adodc1.Recordset.Fields("fn") = Trim(Text1.Text)

edrec.Adodc1.Recordset.Update

recs = recs + 1

Else '修改操作

n = edrec.Adodc1.Recordset.AbsolutePosition

cond = "fn='" + Trim(Text1.Text) + "'"

edrec.Adodc1.Recordset.MoveFirst '每次从头开始查找

edrec.Adodc1.Recordset.Find (cond)

If Not edrec.Adodc1.Recordset.EOF() And edrec.Adodc1.Recordset.AbsolutePosition <> n Then

MsgBox "存在完全相同的记录", vbOKOnly, "信息提示"

edrec.Adodc1.Recordset.MoveFirst '这两个语句恢复原记录位置

edrec.Adodc1.Recordset.Move (n - 1)

Text1.SetFocus

Exit Sub

End If

edrec.Adodc1.Recordset.MoveFirst '这两个语句恢复原记录位置edrec.Adodc1.Recordset.Move (n - 1)

edrec.Adodc1.Recordset.Fields("fn") = Trim(Text1.Text)

edrec.Adodc1.Recordset.Update

End If

Unload Me

End Sub

Private Sub Comm2_Click()

Unload Me

End Sub

附录(图书管理系统程序代码)

附录 主页面(MDImain): Private Sub addbook_Click() add_book.Show End Sub Private Sub addreader_Click() add_reader.Show End Sub Private Sub adduser_Click() add_user.Show End Sub Private Sub backbook_Click() back_book.Show End Sub Private Sub borrowbook_Click() borrow_book.Show End Sub Private Sub cuibackbook_Click() cuiback_book.Show End Sub Private Sub findbook_Click() find_book.Show End Sub Private Sub findreader_Click() find_reader.Show End Sub Private Sub MDIForm_Load() End Sub Private Sub modifybook_Click() change_book.Show End Sub Private Sub modifypwd_Click()

change_pwd.Show End Sub Private Sub modifyreader_Click() change_reader.Show End Sub Private Sub delbook_Click() del_book.Show End Sub Private Sub delreder_Click() del_reader.Show End Sub Private Sub quitsys_Click() End End Sub 登陆(login): Option Explicit Dim cnt As Integer '记录确定次数 Private Sub Command1_Click() Dim sql As String Dim rs_login As New ADODB.Recordset If Trim(txtuser.Text) = "" Then '判断输入的用户名是否为空MsgBox "没有这个用户", vbOKOnly + vbExclamation, "" txtuser.SetFocus Else sql = "select * from 用户表where 用户名='" & txtuser.Text & "'" rs_login.Open sql, conn, adOpenKeyset, adLockPessimistic If rs_login.EOF = True Then MsgBox "没有这个用户", vbOKOnly + vbExclamation, "" txtuser.SetFocus Else '检验密码是否正确 If Trim(rs_login.Fields(1)) = Trim(txtpwd.Text) Then userID = txtuser.Text userpow = rs_login.Fields(2) rs_login.Close Unload Me MsgBox "欢迎登录到图书管理系统!", vbOKOnly + vbExclamation, "" MDImain.Show Else

C++图书管理系统源代码

图书管理系统 系统功能: 1.借书:根据借书人提出的图书编号(id)查询该图书,如果该图书现存量(store)不为0,则提示输入借阅者的学号(num),为借书人办理借书手续,提示用户该书已被 借出。 2.归书:根据借书人的学号查询该读者的信息,若有该读者,则提示输入所借书籍的编号(id),为该读者办理还书手续,提示该书已还。 3.书籍管理:弹出书籍管理界面,输入所要执行操作的号码: (1)增加书籍:弹出注册新书的窗口,按照提示输入所增加书籍的信息,最后,提示用户该书已被注册。 (2)删除书籍:弹出删除书籍的窗口,输入所要删除书籍的编号(id),输出该书的信息,确认是否删除该书,1为删除,0为放弃。 (3)修改书籍:弹出修改书籍的窗口,输入所要修改书籍的编号(id),输出该书的信息,确认是否修改该书,1为修改,0为放弃。之后按照提示重新输入书籍的信息。 4.读者管理:弹出读者管理界面,输入所要执行操作的号码: (1)增加读者:弹出注册读者的窗口,按照提示输入所增加读者的信息,最后,提示用户该读者已被注册。 (2)删除书籍:弹出删除读者的窗口,输入所要删除读者的学号(num),输出该读者的信息,确认是否删除该读者,1为删除,0为放弃。 (3)修改书籍:弹出修改读者的窗口,输入所要修改读者的学号(num),输出该读者的信息,确认是否修改该读者,1为修改,0为放弃。之后按照提示重新输入读者的信息。 5.搜索:此搜索包括两方面的搜索,书籍搜索以及读者搜索,弹出搜索的窗口,按照提示输 入所要搜索的内容,1为书籍搜索,2为读者搜索: (1)搜索书籍:弹出搜索书籍的窗口,按照提示输入所要搜索的方式,包括按<1>书名搜索, <2>书号搜索,<3>作者搜索,<4>出版社搜索,<5>出版时间搜索;根据所选方式输入相 应的内容,若是该书籍存在,则输出该书籍的信息,否则,返回主界面。 (2)搜索读者:弹出搜索读者的窗口,按照提示输入所要搜索的方式,包括按<1>名字搜索, <2>学号搜索;根据所选方式输入相应的内容,若是该读者存在,则输出该读者的信息, 否则,返回主界面。 6.退出:退出图书管理系统。 图书类设计:

酒店管理系统详细设计

酒店管理系统详细设计 1.引言 1.1 编写目的 编写本说明书的目的是说明对程序系统的设计考虑,包括程序系统的基本处理流程、程序系统的组织结构、功能分配、模块化粉、接口设计、运行设计、数据结 构设计和出错设计等,比概要设计更为详细,为编码的实现打下基础。 预期读者为:软件开发的人员,项目评审人员,及软件测试人员。 1.2 背影 说明: ①待开发的软件系统的名称:酒店管理系统; ②本项目的任务提出者:酒店管理人员; ③本项目的任务开发者:酒店管理系统软件开发小组; ④用户及实现该软件的计算中心:酒店计算机; 1.3 定义 顾客就餐管理:对就餐的顾客进行管理,并存储顾客消费记录。 顾客住宿管理:对就餐的住宿进行管理,并存储顾客住宿记录。 顾客信息:存放顾客的,证件类型,证件号,性别,年龄,籍贯,工作单位等 各项基本信息,还有就餐住宿信息,管理员负责管理顾客基本信息。 房间信息:包括房间编号,房间等级,房间价格,房间类型等信息 菜肴信息:包括菜肴编号,菜肴名称,菜肴价格,菜肴类型等信息 1.4 参考资料 ①《现代软件工程》希望电子涌等编著 ②详细设计说明书(GB8567——88).doc 2. 程序系统的结构 用一系列图表列出本程序系统的每个程序(包括每个模块和子程序)的名称、标识符和它们之间的层次结构关系。

3. 用户输入模块(USERINPUT)设计说明 3.1 程序描述 该程序是用户登录时所必须要用到的,登陆之前需要验证用户身份的合法性,故而需要用户输入程序,输入用户名及密码来进行身份验证。

本程序为非常驻存,是子程序、可重用、是顺序处理,在输入之后方能进行验证3.2 功能 3.3 性能 精度要求精确到整型的个位、字符型完全正确,不支持部分匹配; 时间特性要求:要求等待时间<0.5s 3.4 输入项 输入项名称:用户名 类型:字符串型 输入方式:手工输入 数据来源:系统自带的数据库中的信息 输入项名称:密码 类型:字符串型 输入方式:手工输入 数据来源:系统的数据库中的信息 安全条件:在输入密码时用户界面上显示为****** 3.5 输出项 输出项:用户名错误输出 数据类型:字符串型 输出以信息对话框的形式输出 输出容是用户名错误,请重新输入 输出项:密码错误输出

Java图书管理系统-附源码

目录 题目简述 -------------------------------- 01 需求分析 -------------------------------- 01 数据结构 -------------------------------- 01 功能模块 -------------------------------- 02 程序设计 -------------------------------- 02 运行截图 -------------------------------- 04 分析总结 -------------------------------- 08 程序源码 -------------------------------- 08

图书信息管理系统 题目简述: 题目名称:图书信息管理系统 要求:使用图形用户界面,用数据库建立1或2个图书信息表,能连接数据库并实现查询、增加、删除、修改等功能。 需求分析: 图书信息管理系统应该具备图书的信息管理功能和流通管理功能。其中,信息管理功能包括查找,增加,修改,删除,显示全部信息等模块。流通管理功能包括图书借阅,归还等模块。因此分别设计各个模块,实现不同的功能。 数据结构: 用SQL Sever 建立数据库的表,用一张表存放图书的ID号码,图书名称,图书的所有者,图书状态,图书的使用者(允许为空)。具体设计如下图所示: 图书ID,图书名称,图书所有者,图书的状态,图书使用者(允许为空)均为varchar(50)类型,在Java中可以方便的查询。图书存储信息的具体内容如下图所示:

功能模块: 程序设计: 主框架设计: 主框架上方包含三个按钮,分别是“系统管理”、“图书信息管理”和“图书流通管理”,定义JMenuBar类的对象、JMenu类的对象和JMenuItem类的对象,分别表示菜单栏、菜单组和菜单选项,然后调用初始化函数,将不同类的对象通过setText()函数设定不同的文本,然后将其添加到窗口容器中。对每个按钮分别添加不同的消息监听,响应相应的消息,调用不同的类完成不同的功能。消息监听功能详见源代码bookMain类。 图书信息管理模块包括增加图书,删除图书,编辑图书,查找图书和显示图书信息。具体的方法实现在bookBean中实现,当用户点击相应的按钮时,消息监听模块就会调用bookBean的构造函数产生一个bookBean的对象,然后通过对象调用bookBean类中的相应方法,完成事件的相应。 增加图书信息模块: 调用bookAdd类的构造函数产生一个该类的对象,在初始化函数中显示信息输入对话

图书管理系统含源代码可以运行

第一章需求分析 1.1设计内容 利用c++的文件操作能力设计开发一个小型的图书管信息管理系统,至少具有如下功能:查寻所有图书信息、通过输入图书编号来完成查找某一本图书信息、添加图书信息、删除图书信息以及通过学生学号实现图书借阅功能。操作界面要符合用户的一般习惯,界面易于读者明白理解,图形或文本界面都可以。 1.2 设计任务 要求:明确课程设计的目的,能根据课程设计的要求,查阅相关文献,为完成设计准备必要的知识;提高学生用高级语言进行程序设计的能力,重点提高用C++进行文件操作和绘图应用的编程技术水平;初步了解软件开发的一般方法和步骤;提高撰写技术文档的能力。掌握模块化编程的基本方法与步骤;巩固和加深学生对C++课程基本知识的理解与掌握,培养学生利用C++进行软件操作的能力和技巧。 1.3 基本要求 (1)通过提示菜单选择可以进行的操作。 (2)将图书的信息存入文件中,并命名为BookInfo.txt。 (3)将图书借阅情况信息存入文件中,并命名为SendInfo.txt。 (4)在本系统中可以进行管理系统包含的基本操作,其中包括: a)查看所有图书的信息。

b)输入一本图书的图书编号,从当前图书中进行查找,如果找到则显示该图书的相关信息,如果没有找到则给出提示信息。 c)添加一本图书的基本信息,通过输入图书编号,首先查找是否存在该图书编号的图书,如果存在则提示重新输入,否则将该图书按照顺序插入到相应位置。 d)删除一本图书的基本信息,通过输入图书编号,首先查找是否存在该图书编号的图书,如果存在则将该图书删除,否则给出提示信息,提示该图书不存在。 e)借阅一本图书,需要给出学号和图书编号,如果图书编号不存在则重新输入,直到输入正确为止,并将学号和相应的图书编号存入SendInfo.txt文件中。 (5)图书基本信息包括图书编号、书名、作者、出版社和价钱这些简单信息。 (6)图书信息文件中每一行存放一本图书的信息。 (7)借阅信息文件中每一行存放一本书的借阅情况。 (8)对老师.学生的信息进行登记处理,包括姓名、学号教师编号、学院班级等。 (9)对图书的金额进出管理,对一丢失的图书进行处罚、对超期归还的图书进行赔偿金额计算。 第二章系统功能设计

图书馆管理系统源代码

源程序清单 1、文件名 login(login.frm) 功能说明:整个系统的登陆界面,需要输入用户名和登陆密码才能进入到系统中,进行借阅等操作。 源代码: Option Explicit Dim cnt As Integer Private Sub Command1_Click() Dim sql As String Dim rs_login As New ADODB.Recordset If Trim(Combo1.Text) = "" Then MsgBox "没有这个用户", vbOKOnly + vbExclamation, "" Combo1.SetFocus Else sql = "select * from 系统管理 where 用户名='" & Combo1.Text & "'" rs_login.Open sql, conn, adOpenKeyset, adLockPessimistic If rs_login.EOF = True Then MsgBox "没有这个用户", vbOKOnly + vbExclamation, "" Combo1.SetFocus Else If Trim(rs_login.Fields(1)) = Trim(txtpwd.Text) Then userID = Combo1.Text rs_login.Close Unload Me form1.Show Else MsgBox "密码不正确", vbOKOnly + vbExclamation, "" txtpwd.SetFocus End If

End If cnt = cnt + 1 If cnt = 3 Then Unload Me End If Exit Sub End Sub Private Sub Command2_Click() Unload Me End Sub Private Sub Form_Load() Dim connectionstring As String connectionstring = "provider=Microsoft.Jet.oledb.4.0;" & _ "data source=book.mdb" conn.Open connectionstring cnt = 0 End Sub Private Sub txtuser_Change() End Sub 2、文件名 form1(form1.frm) 功能说明:整个系统的主界面,其中包括图书管理、读者管理、图书借阅管理、系统管理、关于,以及在这下面的子菜单。 源代码: Private Sub add_admin_Click() frmadduser.Show End Sub Private Sub add_back_book_Click() frmbackbookinfo.Show

酒店管理系统源代码

酒店管理系统源代码 #include #include #include #include typedef struct tagCustomer { char m_ID[19]; /*身份证号码*/ char m_name[10]; /*顾客姓名*/ int m_age; /*顾客年龄*/ char m_sex[6]; /*顾客性别*/ int num; }Customer;/*顾客结构*/ typedef struct tagRoom { int m_num; /*房间号*/ int m_floor; /*楼层*/ int m_price; /*价格*/ int m_use; /*是否已入住*/

}Room;/*房间结构*/ int i,j=0,age,num,floor,price,use,n; int reg =0; Customer cus[5]; Room r[5]; int count=5; char ID[18],name[10],sex[6]; FILE *fproom; FILE *fpcustomer; void Customer_Input() { if(count<=5) { printf("请输入身份证号(18位数字):"); scanf("%s",&cus[j].m_ID); printf("请输入姓名(10位字符)"); scanf("%s",&cus[j].m_name); printf("请输入年龄(数字型)"); scanf("%d",&cus[j].m_age); printf("请输入性别(男或女):"); scanf("%s",&cus[j].m_sex);

图书馆管理系统程序的设计代码

1.1程序设计代码 登录模块 if(username.Text.Trim()==""||password.Text.Trim()=="") MessageBox.Show("请输入用户名和密码","提示"); else { if (radioManage.Checked == true) { string strcon = "Data Source=SIMON-VAIO;Initial Catalog=lkl2;Integrated Security=True;"; //连接数据库的字符串,用于指定数据库地址,名称,账号,密码,连接方式SqlConnection sqlCon = new SqlConnection(strcon); //实例化并定义一个数据库连接 sqlCon.Open(); //打开数据库连接 string sql = "select * from login where usernum=usernum and userpassword=suerpassword"; //定义要查询sql语句 SqlCommand cmd = new SqlCommand(sql, sqlCon); //实例化并定义sql语句和数据库路径 cmd.Parameters.Add("usernum", SqlDbType.NChar, 20); //定义cmd查询命令的字段属性,loginname sqldbtype nchar(20) cmd.Parameters.Add("suerpassword", SqlDbType.NChar, 20); //同上 cmd.Parameters["usernum"].Value = username.Text; //将username中的text保存到变量loginname cmd.Parameters["suerpassword"].Value = password.Text; //同上 SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read()) { this.Visible=false; Form2 Formmain = new Form2(); //应该是实例化一个主窗体的 this.Hide(); //应该是切换到主窗口的或关闭自己的 Formmain.Show(); //应该是打开一个主窗体的 dr.Close();//关闭dr的数据库连接 } else// if (dr.Read())读取失败则执行如下代码 MessageBox.Show("密码错误,请重新输入!"); //显示提示信息 } else if (radioPerson.Checked==true)

基于java的图书管理系统源代码

基于java的图书管理系统源代码声明:本系统是基于C/S的图书管理系统,主要使用的是Oracle数据库,下面附所有实现代码 package library; import java.awt.BorderLayout; import java.awt.Container; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.sql.ResultSet; import javax.swing.JButton; import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JTextField; public class book_add extends JFrame implements ActionListener{ DataBaseManager db=new DataBaseManager(); ResultSet rs; JPanel panel1,panel2; JLabel book_id_label,book_name_label,author_label, press_label,press_date_label,price_label,book_num_label,borrowed_num _label,a ddress;

图书标准管理系统含源代码可以运行

图书标准管理系统含源代码可以运行

组长:何关瑶学号11107200105 组员:汪芳 李玉珏 马文磊 雷盛华 第一章需求分析 1.1设计内容 利用c++的文件操作能力设计开发一个小型的图书管信息管理系统,至少具有如下功能:查寻所有图书信息、通过输入图书编号来完成查找某一本图书信息、添加图书信息、删除图书信息以及通过学生学号实现图书借阅功能。操作界面要符合用户的一般习惯,界面易于读者明白理解,图形或文本界面都可以。 1.2 设计任务 要求:明确课程设计的目的,能根据课程设计的要求,查阅相关文献,为完成设计准备必要的知识;提高学生用高级语言进行程序设计的能力,重点提高用C++进行文件操作和绘图应用的编程技术水平;初步了解软件开发的一般方法和步骤;提高撰写技术文档的能力。掌握模块化编程的基本方法与步骤;巩固和加深学生对C++课程基本知识的理解与掌握,培养学生利用C++进行软件操作的能力和技巧。 1.3 基本要求 (1)通过提示菜单选择可以进行的操作。 (2)将图书的信息存入文件中,并命名为BookInfo.txt。 (3)将图书借阅情况信息存入文件中,并命名为SendInfo.txt。 (4)在本系统中可以进行管理系统包含的基本操作,其中包括: a)查看所有图书的信息。 b)输入一本图书的图书编号,从当前图书中进行查找,如果找到则显

示该图书的相关信息,如果没有找到则给出提示信息。 c)添加一本图书的基本信息,通过输入图书编号,首先查找是否存在该图书编号的图书,如果存在则提示重新输入,否则将该图书按照顺序插入到相应位置。 d)删除一本图书的基本信息,通过输入图书编号,首先查找是否存在该图书编号的图书,如果存在则将该图书删除,否则给出提示信息,提示该图书不存在。 e)借阅一本图书,需要给出学号和图书编号,如果图书编号不存在则重新输入,直到输入正确为止,并将学号和相应的图书编号存入SendInfo.txt 文件中。 (5)图书基本信息包括图书编号、书名、作者、出版社和价钱这些简单信息。 (6)图书信息文件中每一行存放一本图书的信息。 (7)借阅信息文件中每一行存放一本书的借阅情况。 (8)对老师.学生的信息进行登记处理,包括姓名、学号教师编号、学院班级 等。 (9)对图书的金额进出管理,对一丢失的图书进行处罚、对超期归还的图书 进行赔偿金额计算。

酒店管理系统操作流程

酒店管理系统基本操作流程 一、电脑的基本操作 1.电脑正常开关机: 开机:先打开主机电源,看到电源指示灯亮后,再打开显示器的电源开关,当显示器的电源灯由黄色变为蓝色后,说明电脑正常开机,大约5-20秒后即进入WINDOWS操作系统。 关机:对于WINDOWS操作系统,可以直接从桌面左下角“开始”菜单中选择“关闭系统”弹出的窗口下“关闭计算机”项,即可实现正常关机。 2.鼠标的使用: 单击:按下鼠标左边键一次为单击,所有操作系统中“按钮”或“下拉式列表”等控件选择时,基本采用单击。 双击:迅速按下鼠标左边按键两次(两次时间间隔要短,如果过长就会变为两次单击)为双击;操作系统中,图标选择及表格项目选择基本上采用双击。 右击:按下鼠标右边按键一次为右击。 拖动:将鼠标指针移到目标上,按住鼠标左边按键不放然后移动鼠标为拖动。 3.电脑死机处理: 一般死机:电脑在运行过程中,因人为因素或电脑环境因素而出现没有响应预定的操作结果,同时通过正常操作也无法退出的情况下;可通过同时按Ctrl+Alt+Del三个键强行关闭当前操作,等电脑弹出“关闭程序”窗口后,在窗口中按“结束任务”按钮,操作

系统就会强行结束当前操作,结束后再弹出对话框,再次按“结束任务”按钮,电脑即可恢复操作。 严重死机:电脑出现死机时,通过上述恢复操作还不能正常运作,或者是键盘鼠标根本不起作用;这样的情况就是严重死机,解决的唯一办法是:连续按住主机电源开关,直到关闭电源为止。 4.TAB键的运用 WINDOWS所有界面操作中,将光标从一个对象移动到另一个对象时,默认采用键盘上左上角的“TAB”键,而不是回车键。 二、酒店管理系统登录操作说明 1. 在WINDOWS桌面上,找到名字为(酒店管理)或(HOTEL)的快 捷图标,将鼠标指针移到该图标上,并双击鼠标左键以进入(酒店管理系统)登录界面。 2. 依次填入你的用户名(系统管理员给予你的工号)、口令(属于 你自己的密码,最长六位)以及班次(你所当值的班次)。然后单击登录窗口左下方的“确定”按钮以登录系统,进入主界面。 三、酒店营销子系统功能操作程序说明(接待) 1. 散客客人登记: 单击(酒店管理系统)主界面上方的“接待”按扭弹出接待下拉式菜单,在接待下拉式菜单中选择“入住登记”并单击它以进入(入住登记)实时房态窗口,以下操作都在此窗口中进行,敬请留意! 快束登记: a)在窗口中选择一空净房间,并双击该房间图标弹出功能菜单界

图书馆管理系统设计附带源代码

毕业设计_图书管理系统 一、数据库设计数据库设CREATE DATABASE TSGL GO USE TSGL GO CREATE TABLE Bmanage ( bId varchar(10) PRIMARY KEY, bName varchar(50), --添加图书--图书编号 --书名 bNumber varchar(10), --书数目) GO bSore varchar(50) --分类 CREATE TABLE Madmin ( mName varchar(10)PRIMARY KEY, mPwd varchar(25), mAge varchar(8), mSex varchar(4), mNumber varchar(15), mrole varchar(8) ) GO --图书员管理 --图书管理员姓名--图书管理员密码 --图书管理员年龄 --图书管理员性别 --图书管理员电话 --图书管理员角色

CREATE TABLE Reader ( rSno varchar (10) PRIMARY KEY , rName varchar (10), rPwd varchar (25), rAge varchar (8), rSex varchar (4), rState varchar (8), rNumber varchar (15), rEmail varchar (25), --读者信息表reader --读者号 --姓名 --密码 --年龄 --性别 --状态 --电话号码 --电子邮件rAdress varChar (50), --地址) GO rGrade varChar (15), rClass varchar (15), rRole varchar (8) --年级 --班级 --角色 CREATE TABLE Rrecord ( rSno varchar (10) PRIMARY KEY , rName varChar (10), bId varchar (10), bName varChar (50), bTime varchar (10), bBackTime varchar (10) ) GO CREATE TABLE SysSet ( rRole varchar (8)PRIMARY KEY , rState varchar (8), Fine float (25), rDay varchar (8) --读者编号学号 --读者姓名 --图书编号 --图书名称 --借书时间 --还书时间 --读者角色 --读者可借书数 --过期罚款设置 --可借书天数 ) 二、界面截图及说明 1) 登录窗口(实现管理员与馆长的登陆)

图书管理系统源代码

xxxx学院 课 程 设 计 报 告 设计名称:数据库课程软件设计 班级: 姓名: 学号: 指导教师: xx 时间: 2010.6.1—2010.6.16

一、课程设计目的 二、课程设计任务与要求1.设计任务 2.设计要求 三、原始依据 四.课程设计说明书 1. 需求分析 (1)问题描述 (2)基本要求 (3)测试数据 2. 概要设计 (1).数据结构 (2).程序模块及之间的调用关系(3). 详细分析 (4). 调试与结果 借书图示: 还书图示 还书图示 图书维护菜单 读者维护菜单 帮助文件

五、课程设计心得 一.课程设计目的 软件应用课程设计是计算机及相关专业的实践环节之一,是学习完《面向对象程序设计》课程后进行的一次全面的综合练习。其目的在于巩固和加深对C++语言课程的基本知识的理解和掌握;掌握C++语言编程和程序调试的基本技能;利用C++语言进行软件设计的基本思路和方法;提高运用C++语言解决实际问题的能力。 二.课程设计任务与要求: 1.设计任务 基本要求: [1]: 工作人员登陆后,可以进行的操作 (1)添加学生的信息(学号,姓名,院系,最大借阅的图书数量等); (2)修改学生的信息(学号,姓名,院系,最大借阅的图书数量); (3)删除学生的信息(学号,姓名,院系,最大借阅的图书数量),如果某个学生退学,就要清除他的信息; (4)查看学生的信息; (5)添加图书的信息(图书号,书名,作者,出版社,数量等); (6)修改图书的信息(图书号,书名,作者,出版社,数量等); (7)删除图书的信息(图书号,书名,作者,出版社,数量等); (8)查看图书的信息; [2]: 学生登陆后,可以进行的操作 (1)查看学生自己借阅的数目信息; (2)借阅图书; (3)归还图书; 备注:要求将学生和图书信息存放到外存上,每次从外存读取数据。 2.设计要求 (1).对指导教师下达的题目进行系统分析。 (2).根据分析结果完成系统设计。 (3).编程:在计算机上实现题目的代码实现。 (4).完成对该系统的测试和调试。 (5).提交课程设计报告,课程设计报告内容包括:需求分析、概要设计、详细设计,调试与结果和设计心得体会五个部分。 三.原始依据 已完成C++语言课程学习,有语言编程基础,能够熟练运用C++语言进行程

图书管理系统的C 代码 完整版

C#代码清单 共1个项目,包含5个类。 项目:librarysystem 类: 主类代码: namespace librarysystem { PublicationISBN = PublicationISBN; = PublicationName; = PublicationAuthor; = PublicationType; = PublicationStatus; } } } 读者类代码: namespace librarysystem { 询图书"); ("2.借书服务"); ("3.还书服务"); ("4.新出版物入库"); ("5.录入新读者"); ("6.查询读者的借阅信息"); ("7.退出管理系统"); ("-------------------------------------------------------------------"); bool flag; do { flag = false; ("请选择:"); string key = (); switch (key) { case"1": ("请输入需要查询图书的书名:"); ShowPubInfo(); break; case"2": ("请输入您的姓名:");

(); ShowBorrowInfo(); break; case"3": ("请输入您的姓名:"); (); ShowReturnInfo(); break; case"4": ("请按照提示逐步输入需要入库出版物的信息……"); ShowAddPublications(); break; case"5": ("请按照提示逐步输入新注册读者的信息……"); ShowAddReaders(); break; case"6": ("请输入您的姓名: "); (); ShowRedPubInfo; break; case"7": flag = false; break; default: ("无此业务,是否重新选择(y/n)?"); string answer = (); if (answer != "y") { flag = false; } else { flag = true; } break; } } while (flag); } /*显示查询到的出版物信息*/ public void ShowPubInfo() {

酒店管理系统详细设计

酒店管理系统 详细设计A 2011/2012 学年第一学期 学院:电子与计算机科学技术学院 专业:软件工程 学生姓名:徐星星学号: 课程设计题目:商务酒店运营管理与流程控制系统 ——酒店业务管理子系统 起迄日期:2011年11月28 日~ 2011年12月23日 课程设计地点:软件工程实验室 指导教师:周海英 系主任:潘广贞 1.引言 1.1 编写目的 编写本说明书的目的是说明对程序系统的设计考虑,包括程序系统的基本处理流程、程序系统的组织结构、功能分配、模块化粉、接口设计、运行设计、数据结构设计和出 错设计等,比概要设计更为详细,为编码的实现打下基础。 预期读者为:软件开发的人员,项目评审人员,及软件测试人员。 1.2背景 说明: ①待开发的软件系统的名称:酒店管理系统; ②本项目的任务提出者:酒店管理人员; ③本项目的任务开发者:酒店管理系统软件开发小组; ④用户及实现该软件的计算中心:酒店计算机; 1.3 定义

顾客就餐管理:对就餐的顾客进行管理,并存储顾客消费记录。 顾客住宿管理:对就餐的住宿进行管理,并存储顾客住宿记录。 顾客信息:存放顾客的姓名,证件类型,证件号,性别,年龄,籍贯,工作单位等 各项基本信息,还有就餐住宿信息,管理员负责管理顾客基本信息。 房间信息:包括房间编号,房间等级,房间价格,房间类型等信息 菜肴信息:包括菜肴编号,菜肴名称,菜肴价格,菜肴类型等信息 1.4 参考资料 ①《现代软件工程》北京希望电子出版社孙涌等编著 ②详细设计说明书(GB8567——88).doc 2. 程序系统的结构 用一系列图表列出本程序系统内的每个程序(包括每个模块和子程序)的名称、标识符

图书管理系统程序代码

#i n c l u d e<> #include <> #include <> #define SIZE (struct booklist *)malloc(sizeof(struct booklist)) .(Y/N) :"); ch = getchar(); if(ch == 'y' || ch == 'Y') store(head); getchar(); break; } case 2: { if(head == NULL ) { printf("请先录入图书源信息!\n"); getchar(); break; } else { borrow_head = borrow_creat(head); .(Y/N) :" ); ch = getchar(); if(ch == 'y' || ch == 'Y') borstore(borrow_head); getchar(); break; } } case 3: { if(head == NULL ) { printf("请先录入图书源信息!\n"); getchar(); break; } else { flag = pre_creat(head); if(flag == 1)

printf("没有录入预借图书信息!\n\n"); if(flag == 2) pre_head = prebor_creat(); .(Y/N) :"); ch = getchar(); if(ch == 'y' || ch == 'Y') store(head); getchar(); break; } } case 4: .(Y/N) :"); ch = getchar(); if(ch == 'y' || ch == 'Y') store(head); getchar(); break; } } case 5: .(Y/N) :"); ch = getchar(); if(ch == 'y' || ch == 'Y') store(head); getchar(); break; } } case 9: .)\n\n"); printf("请选择功能:"); scanf("%d", &n); getchar(); if(n == 0) { x = 0; } getchar(); } else { printf("请输入学号:"); gets(c); strcpy(p -> prebook_num, a); strcpy(p -> prestu_num, c); if((fp = fopen("","a+")) == NULL)

图书管理系统程序代码

模块设计 基础模块 SqlSession: 利用mybatis获取jdbc,其中有inter.select,update,select等方法 String resource = "mybatis-config.xml"; InputStream inputStream = Resources.getResourceAsStream(resource); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); SqlSession sesson = sqlSessionFactory.openSession(); Dao基础模块 所有的dao都继承于BaseDao; 代码 /** *保存利用mybatis的xml * model 保存的对象 *id mybatis的id名 */ Public void Save(BaseModel model,String id){ sesson.inster(id model); } …… Model基础模块 所有的模型都继承于BaseModel; 代码片段 /** *字段编号 */ Private int id; Public void setId(String id){ This.id = id; } Public String getId(){

Return id; } 添加书籍 代码片段 Book book = new Book(); book.setId(…..); …….. Book.setTitle(….); BooksManageDao bookDao = new BooksManageDao(); bookDao .save(“addBook”,book); 删除书籍 代码片段 BookDao bookDao = new BookDao(); Book book = (Book) bookDao .getModel(id); BooksManageDao bookDao = new BooksManageDao(); bookDao .delete(“delete Book”,book); 更新书籍

图书管理系统程序源代码

源程序 1.主窗体 Private Sub add_back_Click() frmbackbookinfo.Show End Sub Private Sub add_binf_Click() frmaddbookinfo.Show End Sub Private Sub add_book_style_Click() frmaddbookstyle.Show End Sub Private Sub add_manager_Click() frmadduser.Show End Sub Private Sub add_rinf_Click() frmaddreaderinfo.Show End Sub Private Sub add_rstyle_Click() frmaddreaderstyle.Show End Sub Private Sub change_binf_Click() frmmodifybookinfo.Show End Sub Private Sub change_book_style_Click() frmmodifybookstyle.Show End Sub Private Sub delete_binf_Click() frmmodifybookinfo.Show End Sub Private Sub delete_book_style_Click() frmmodifybookstyle.Show End Sub Private Sub delete_rstyle_Click() frmmodifyreaderstyle.Show End Sub Private Sub exit_Click() End End Sub Private Sub find_binf_Click() frmfindbook.Show End Sub Private Sub find_lend_Click() frmfindborrowinfo.Show

相关主题
文本预览
相关文档 最新文档