vb实例教程之数据库操作:学生信息管理系统开发步骤

admin 综合编程开发技术 3


老师或者教务人员是不是经常遇到这样的问题?想找个学生的信息,翻来翻去半天找不到;统计成绩的时候,算来算去总怕出错。用 VB 做个学生信息管理系统就方便多了,既能存数据又能快速查询,今天兔子哥就一步步教大家怎么做,哪怕你刚接触数据库也不用怕。

先搞清楚:我们需要做个啥样的系统?


简单说,这个系统得能存学生的基本信息,像姓名、学号、班级这些,还得能添加、修改、删除信息,查起来也得方便。那用什么数据库呢?新手的话,Access 数据库就挺好,和 VB 搭配起来简单,不用装复杂的数据库软件。
可能有人会问,不用 Access 行不行?也行,比如 SQL Server,但那个 setup 起来麻烦,对新手不友好,咱们先把简单的学会了再说。


准备工具:软件和素材


做这个系统,你得有这两样东西:
  1. VB6.0 编程软件,前面教程里说过怎么装,忘了的朋友可以翻回去看看。
  2. Access 数据库,Office 套件里就有,一般装 Office 的时候选上就行。

对了,建数据库之前,最好先把要存的信息列个表,比如:
信息名称类型例子
学号文本2023001
姓名文本张三
班级文本高一 (1) 班
成绩数字90

这样后面建表的时候就不会手忙脚乱了。


第一步:创建 Access 数据库


打开 Access,选 “空白数据库”,起个名字比如 “学生信息.mdb”,保存到你容易找到的地方,比如桌面。然后点击 “创建”,会出现一个表,我们要改字段名:
  1. 点一下 “ID” 那个字段,改成 “学号”,数据类型选 “文本”。
  2. 再点旁边的空白字段,改成 “姓名”,数据类型 “文本”。
  3. 接着加 “班级”“成绩” 这两个字段,“成绩” 的数据类型选 “数字”。
  4. 改完后点左上角的 “保存”,表名就叫 “学生表” 吧,然后关闭 Access。

这一步很重要,数据库建不好,后面 VB 连接的时候会出各种问题。


第二步:在 VB 里设计界面


打开 VB,新建 “标准 EXE”。我们需要这些控件:
  • 4 个 Label,分别写 “学号”“姓名”“班级”“成绩”,用来提示。
  • 4 个 TextBox,起名 txtXueHao、txtXingMing 之类的,方便输入。
  • 5 个 CommandButton,分别是 “添加”“修改”“删除”“查询”“清空”。
  • 1 个 DataGrid,用来显示数据库里的所有信息。

摆放的时候不用太讲究美观,能看清就行,但至少要对齐,不然自己看着都费劲。我一般会把 Label 和 TextBox 成对放,这样输入的时候方便。


第三步:连接数据库和 VB


这是关键的一步,很多新手在这里卡壳。别担心,跟着做:
  1. 点菜单栏的 “工程”,选 “部件”,找到 “Microsoft ADO Data Control 6.0”,打上勾,点 “确定”。这时候工具箱里会多一个 Adodc 控件。
  2. 把 Adodc 拖到窗体上,右键点它,选 “属性”,在 “连接字符串” 那里点 “生成”,选 “Microsoft Jet 4.0 OLE DB Provider”,然后点 “选择”,找到你刚才建的 “学生信息.mdb”,点 “确定”。
  3. 再在 “记录源” 那里选 “表”,下面选 “学生表”,然后点 “确定”。
  4. 右键点 DataGrid,选 “属性”,在 “数据源” 那里选 “Adodc1”,这样 DataGrid 就能显示数据库里的内容了。

是不是觉得有点复杂?第一次做都这样,多试两次就熟了。其实这个过程就是告诉 VB,你的数据存在哪里,让它能找到。


第四步:给按钮写代码


先点 “添加” 按钮,双击它,输入代码:
plaintext
Adodc1.Recordset.AddNewAdodc1.Recordset.Fields("学号") = txtXueHao.TextAdodc1.Recordset.Fields("姓名") = txtXingMing.TextAdodc1.Recordset.Fields("班级") = txtBanJi.TextAdodc1.Recordset.Fields("成绩") = txtChengJi.TextAdodc1.Recordset.UpdateAdodc1.Refresh

这段代码的意思就是把文本框里的内容存到数据库里,然后刷新一下,让 DataGrid 显示新添加的信息。
“查询” 按钮的代码可以这样写,根据学号查:
plaintext
Adodc1.Recordset.Find "学号 = '" & txtXueHao.Text & "'"If Adodc1.Recordset.EOF ThenMsgBox "没找到这个学生"ElsetxtXingMing.Text = Adodc1.Recordset.Fields("姓名")txtBanJi.Text = Adodc1.Recordset.Fields("班级")txtChengJi.Text = Adodc1.Recordset.Fields("成绩")End If

其他按钮的代码大同小异,无非就是修改、删除记录,网上能找到很多参考,实在不会的可以问我。


测试一下:看看能不能用


按 F5 运行程序,试着输个学号、姓名什么的,点 “添加”,看看 DataGrid 里是不是多了一行。再输个刚才的学号,点 “查询”,看能不能把信息调出来。如果不行,先检查代码有没有写错,特别是标点符号,一定要用英文的。
我第一次做的时候,点 “添加” 没反应,后来才发现是数据库路径选错了,所以大家一定要注意路径对不对。


自己做出来这个系统后,你会发现数据库操作也没那么难。其实很多功能都能慢慢加上,比如按班级统计人数,或者给成绩排个序。刚开始不用追求完美,先做出一个能跑起来的版本,然后再一点点优化。
做编程就是这样,多动手试,遇到问题别慌,慢慢找原因,总能解决的。希望这个教程能帮到大家,有啥不懂的可以随时问。

标签: Visual Basic VB.NET

发布评论 0条评论)

  • Refresh code

还木有评论哦,快来抢沙发吧~