当前位置:文档之家› 通讯录管理系统VB数据库课程设计

通讯录管理系统VB数据库课程设计

通讯录管理系统VB数据库课程设计
通讯录管理系统VB数据库课程设计

西安郵電大學

综合应用软件课程设计报告

题目:通讯录管理系统

学院名称:计算机学院

专业名称:计算机科学与技术

班级:计科1102

学号:04111043(7)

学生姓名:杨康

指导教师:孟彩霞

2013年09月09日

时间:

至 2013年09月23日

一、课程设计目的

在日常生活中,通讯录是不可或缺的一个工具,它能准确记录我们所要联系的人的各种资料,方便我们和别人交流。这个小小的系统设计可以帮助我更好的巩固学过的VB一级数据库方面的知识,让我学会如何可以简单的将前台与后台联系起来。

二、课程设计内容

随着计算机技术的发展,传统的笔记本式的通讯录已经落伍,设计这个程序就是为了更好地对自己经常联系的个人信息进行管理而产生,主要是针对个人信息的管理。包括联系人的姓名、年龄、性别、工作单位、家庭住址,电话号码等等。对这些信息可以通过输入认证密码来添加,删除,修改等管理操作。

三、软硬件环境及系统所采用的体系结构

(1)操作系统:Windows7

(2)数据库系统:Microsoft SQL Server2008企业版

(3)体系结构:系统的体系结构为C/S结构

(4)开发工具:前台为VB,后台数据库为SQL Server

四、需求分析

本软件可以满足用户的基本要求,联系人查询,添加,修改,删除等功能因有尽有,而且通过账户名和密码可以更好的保护个人的隐私,从而加强程序的安全性。

五、系统设计

1,程序流程图

2,数据库设计(1)系统E-R图

(2)逻辑模式

管理员登录 (用户名 密码)

联系人(姓名 年龄 手机 生日 籍贯 QQ Email )

其中,波浪线为主键。

根据这些需要,本系统需要联系人表、密码表。

六、系统的实施

1,建立数据库结构

本设计使用的是Microsoft SQL Server 2008数据库。程序中共应用了两张数据表,分别是“密码”数据表和“联系人”数据表。这两张数据表的结构如表1和表2所示。

1 密码数据表

该表主要用于管理员登录通讯录的权限,只有表中存在的用户才可以登录该系统。

2 联系人数据表

联系人数据表主要用于浏览通讯录的详细信息,该数据表中记录着通信人的姓名、方式及非类信息等。

管理员

联系人

管理

账号

姓名

年龄

手机

生日

密码 Email

QQ

籍贯

2,配置数据源

打开SQL Server企业管理器,配置连接,创建名为“TXL”的数据库。创建数据库后,为数据库添加数据表,

测试成功:

3,程序设计

1 登录界面

Private Sub Command1_Click()

Dim cn As ADODB.Connection

Dim rs As ADODB.Recordset

Dim cm As https://www.doczj.com/doc/844774000.html,mand

Set cn = New ADODB.Connection

Set rs = New ADODB.Recordset

Set cm = New https://www.doczj.com/doc/844774000.html,mand

Dim strcnn As String

strcnn = "driver={sql server};server=(local);database=TXL;"

cn.Open strcnn

cm.ActiveConnection = cn

strsql = "select * from dl where zh='" + Text1.Text + "' and mm='" + Text2.Text + "'" Set rs = cn.Execute(strsql)

If rs.EOF = False Then

Form1.Show

Unload Me

Else

MsgBox ("用户名或密码错误,请重新登录!")

End If

End Sub

Private Sub Command2_Click()

End

End Sub

Private Sub Form_Load()

Text2.Text = ""

Text1.Text = ""

Text2.PasswordChar = "*"

End Sub

Private Sub Picture1_Click()

End Sub

2 主界面

Private Sub msquitsys_Click()

Form5.Show

End Sub

Private Sub msstuinfo_Click()

Form3.Show

End Sub

Private Sub msstuscore_Click()

Form4.Show

End Sub

Private Sub msstusearch_Click()

Form2.Show

End Sub

Private Sub Picture1_Click()

End Sub

3查询联系人页面

Private Sub Command1_Click()

Dim sqlstr As String

sqlstr = " select * from ps where xm = '" & Text1 & "'"

Adodc1.RecordSource = sqlstr

Adodc1.Refresh

If Adodc1.Recordset.BOF Then

MsgBox "对不起,您查找的联系人不存在!"

End If

End Sub

Private Sub Command2_Click()

Form2.Hide

Form1.Show

End Sub

4 修改联系人页面

Private Sub Command1_Click()

Adodc1.Recordset.AddNew

With Adodc1.Recordset

Adodc1.Recordset.Fields("xm") = Trim(Text1.Text)

Adodc1.Recordset.Fields("age") = Trim(Text2.Text)

Adodc1.Recordset.Fields("tel") = Trim(Text3.Text)

Adodc1.Recordset.Fields("csrq") = Trim(Text4.Text)

Adodc1.Recordset.Fields("jg") = Trim(Text5.Text)

Adodc1.Recordset.Fields("qq") = Trim(Text6.Text)

Adodc1.Recordset.Fields("dzyx") = Trim(Text7.Text)

If Text1.Text = Adodc1.Recordset.Fields("xm") Then

MsgBox "添加成功!"

Text1.Text = ""

Text1.SetFocus

Else

MsgBox "该联系人已存在,不能重复添加!"

Command1.Enabled = True

Command1.Enabled = True

End If

End With

End Sub

Private Sub Command2_Click()

Dim res As Integer

res = MsgBox("是否要删除联系人" + Adodc1.Recordset("xm") + "的记录!", vbExclamation + vbYesNo + vbDefaultButton2)

If res = vbYes Then

Adodc1.Recordset.Delete

Adodc1.Recordset.MoveNext

If Adodc1.Recordset.EOF = True Then

Adodc1.Recordset.MoveLast

End If

End If

Private Sub Command3_Click()

With Adodc1.Recordset

Adodc1.Recordset.Fields("xm") = Trim(Text1.Text)

Adodc1.Recordset.Fields("age") = Trim(Text2.Text)

Adodc1.Recordset.Fields("tel") = Trim(Text3.Text)

Adodc1.Recordset.Fields("csrq") = Trim(Text4.Text)

Adodc1.Recordset.Fields("jg") = Trim(Text5.Text)

Adodc1.Recordset.Fields("qq") = Trim(Text6.Text)

Adodc1.Recordset.Fields("dzyx") = Trim(Text7.Text)

Adodc1.Recordset.Update

MsgBox "修改成功"

End With

End Sub

Private Sub Command4_Click()

Form3.Hide

Form1.Show

End Sub

在初始化程序时,通过ADO对象访问数据库“关系”表中的数据,从而实现导入联系人的数据信息。

七、系统评价及心得体会

经过两周的时间,完成了对通讯录的设计,经过多次程序的改进与调试,基本符合了老师提出的要求。从最初的茫然,到慢慢进入状态,再到对思路的慢慢清晰,整个设计过程难以用语言表达。遇到困难,我会觉得无从下手,通过查找资料最终解决了问题;当困难解决了,我会觉得豁然开朗。思路打开了;当设计经过有一次次的修改后,我觉得很有成就感。虽然此次设计圆满的完成了,但我深知,探求真知的路程永远不会结束。而成才而言,则是一个漫长积累的过程,必须要执着进取,踏实奋斗,才有望品尝成功的喜悦。总之,向着自己的目标前进,充实的过好每一天,只要无悔,便是成功。而成才而言,则是一个漫长积累的过程,必须要执着进取,踏实奋斗,才有望品尝成功的喜悦人在不同的时期会有不同的观点和想法,但这只是形式上的改变,其基础却已深深扎根于思维深处,是再难总之,向着自己的目标前进,充实的过好每一天,只要无悔,便是成功。总之,通过这次毕业设计的实践,提高我需要的知识、技能,素质,或是在实践中锻炼自己相关的素质,为将来进入社会打下良好的基础。

八、参考文献

《数据库系统原理与应用》孟彩霞编著

《Visual Basic程序设计语言》周元哲编著

九、附录:源代码

Private Sub Command1_Click()

Dim cn As ADODB.Connection

Dim rs As ADODB.Recordset

Dim cm As https://www.doczj.com/doc/844774000.html,mand

Set cn = New ADODB.Connection

Set rs = New ADODB.Recordset

Set cm = New https://www.doczj.com/doc/844774000.html,mand

Dim strcnn As String

strcnn = "driver={sql server};server=(local);database=TXL;"

cn.Open strcnn

cm.ActiveConnection = cn

strsql = "select * from dl where zh='" + Text1.Text + "' and mm='" + Text2.Text + "'" Set rs = cn.Execute(strsql)

If rs.EOF = False Then

Form1.Show

Unload Me

Else

MsgBox ("用户名或密码错误,请重新登录!")

End If

End Sub

Private Sub Command2_Click()

End

End Sub

Private Sub Form_Load()

Text2.Text = ""

Text1.Text = ""

Text2.PasswordChar = "*"

End Sub

Private Sub Picture1_Click()

End Sub

主界面

Private Sub msquitsys_Click()

Form5.Show

End Sub

Private Sub msstuinfo_Click()

Form3.Show

End Sub

Private Sub msstuscore_Click()

Form4.Show

End Sub

Private Sub msstusearch_Click()

Form2.Show

End Sub

Private Sub Picture1_Click()

End Sub

查询页面

Private Sub Command1_Click()

Dim sqlstr As String

sqlstr = " select * from ps where xm = '" & Text1 & "'"

Adodc1.RecordSource = sqlstr

Adodc1.Refresh

If Adodc1.Recordset.BOF Then

MsgBox "对不起,您查找的联系人不存在!"

End If

End Sub

Private Sub Command2_Click()

Form2.Hide

Form1.Show

End Sub

修改页面

Private Sub Command1_Click()

Adodc1.Recordset.AddNew

With Adodc1.Recordset

Adodc1.Recordset.Fields("xm") = Trim(Text1.Text)

Adodc1.Recordset.Fields("age") = Trim(Text2.Text)

Adodc1.Recordset.Fields("tel") = Trim(Text3.Text)

Adodc1.Recordset.Fields("csrq") = Trim(Text4.Text)

Adodc1.Recordset.Fields("jg") = Trim(Text5.Text)

Adodc1.Recordset.Fields("qq") = Trim(Text6.Text)

Adodc1.Recordset.Fields("dzyx") = Trim(Text7.Text)

If Text1.Text = Adodc1.Recordset.Fields("xm") Then

MsgBox "添加成功!"

Text1.Text = ""

Text1.SetFocus

Else

MsgBox "该联系人已存在,不能重复添加!"

Command1.Enabled = True

Command1.Enabled = True

End If

End With

End Sub

Private Sub Command2_Click()

Dim res As Integer

res = MsgBox("是否要删除联系人" + Adodc1.Recordset("xm") + "的记录!", vbExclamation + vbYesNo + vbDefaultButton2)

If res = vbYes Then

Adodc1.Recordset.Delete

Adodc1.Recordset.MoveNext

If Adodc1.Recordset.EOF = True Then

Adodc1.Recordset.MoveLast

End If

End If

End Sub

Private Sub Command3_Click()

With Adodc1.Recordset

Adodc1.Recordset.Fields("xm") = Trim(Text1.Text) Adodc1.Recordset.Fields("age") = Trim(Text2.Text) Adodc1.Recordset.Fields("tel") = Trim(Text3.Text) Adodc1.Recordset.Fields("csrq") = Trim(Text4.Text) Adodc1.Recordset.Fields("jg") = Trim(Text5.Text) Adodc1.Recordset.Fields("qq") = Trim(Text6.Text) Adodc1.Recordset.Fields("dzyx") = Trim(Text7.Text) Adodc1.Recordset.Update

MsgBox "修改成功"

End With

End Sub

Private Sub Command4_Click()

Form3.Hide

Form1.Show

End Sub

退出系统页面

Private Sub Form_Load()

Form1.Hide

End Sub

Private Sub Picture1_Click()

End Sub

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