网站公告列表

  没有公告

加入收藏
设为首页
联系站长
您现在的位置: 网络学院 >> 程序设计 >> VB编程 >> 文章正文
  StuMIS(不完整)            【字体:
StuMIS(不完整)
作者:佚名    文章来源:不详    点击数:    更新时间:2007-8-16    
 

这个工程是初学玩MIS系统建设后自己做的,当时只熟悉VB,所以选择了VB.NET。
正在装载数据……
大概是今年6月中旬吧,老师布置了一个很简单的东西,让我们分组做好了上交,但是说实话只有自己一个人能做了,所以自己花了一天半一夜+一半的时间把这个东西的基本功能完成后上交了。

由于一天半的时间非常有限,VB.NET也是当时一个多小时扫描了一下,所以数据库设计以及代码编写上面进行了很少的思考。数据库也没有什么范式化的技巧,总的来说这就是一个练手的东西了。现在想起来这个工程真的非常幼稚了。也不怕丢脸,反正是自己做的,也算是自己的一个作品了。

 

数据库设计

1.学生基本信息表:student_info

字段名
字段描述
字段类型
字段长度
备注
StuNO
学号
Char
10
主键
StuName
姓名
Varchar
8
Not null
Sex
性别
Char
2
 
Born
出生
Datetime
8
 
Phone
电话
Char
12
 
Native
籍贯
Varchar
10
 
Political
政治面貌
Char
4
 
Class_ID
班级号
Char
7
Not null
Father
父亲
Varchar
8
 
Mother
母亲
Varchar
8
 
Address
地址
Varchar
50
 

 
3.班级(专业)信息表:class_info

字段名
字段描述
字段类型
字段长度
备注
Class_ID
班级编号
Char
7
主键
Class_Name
班级(专业)名
Varchar
30
Not null

 
4.课程信息表:course_info

字段名
字段描述
字段类型
字段长度
备注
Course_ID
课程编号
Char
5
主键
Course_Name
课程名
Varchar
30
Not null
Credit_Hour
学分
Int
4
Not null

 
5.学生成绩表:result_info

字段名
字段描述
字段类型
字段长度
备注
StuNO
学号
Char
10
主键
Course_ID
课程号
Char
5
Not null
Result
成绩
Int
4
Not null

 

 

 

只贴部分代码了,多了也不会有人看,代码都是比较基础的写法,没有什么技术含量。当然现在的技术比这个高多了。

1.成绩管理窗体:

Imports System.Data.Sql
Imports System.Data.SqlClient
Public Class ResultForm

    '填充DataGridView控件
    Sub ResultDataView()
        Resultdgv.DataSource = ds.Tables("Result_View").DefaultView
        bdsour = New BindingSource(ds, "Result_View")
        BindNav.BindingSource = bdsour
        SourRefresh()
    End Sub
    '更新指针位置
    Sub SourRefresh()
        Resultdgv.DataSource = BindNav.BindingSource
    End Sub

    Private Sub ResultForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Resultdgv.Width = Me.Width - 8
        Resultdgv.Left = 0
        IsEdit = False  '不允许编辑标志
        IsManage = False    '未进入管理状态标志

        'TODO: 这行代码将数据加载到表“StudentDataSet.class_info”中。您可以根据需要移动或移除它。
        Me.Class_infoTabA.Fill(Me.StudentDataSet.class_info)
        '连接数据库
        SqlConn()

        userpwd = "123"
    End Sub


    Private Sub btnShowAll_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnShowAll.Click
        sql = "select 学号,姓名,课程,分数,学分,班级 from Result_View"
        SqlCmd()
        SqlResult()
        ResultDataView()
    End Sub

    Private Sub btnSearch_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSearch.Click
        If (Trim(txtSearch.Text) <> "") And (CombType.Text <> "") Then
            sql = "select 学号,姓名,课程,分数,学分,班级 from Result_View where " & CombType.Text & "='" & Trim(txtSearch.Text) & "'"
            SqlCmd()
            SqlResult()
            ResultDataView()
        End If

    End Sub


    Private Sub bindNavEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bindNavEdit.Click
        If IsEdit = False Then  '进入编辑状态
            Resultdgv.ReadOnly = False
            MsgBox("进入编辑模式", MsgBoxStyle.Information Or MsgBoxStyle.OkOnly, "提示信息")
            bindNavEdit.Text = "锁定"
            IsEdit = True
        Else                    '退出编辑状态
            Resultdgv.ReadOnly = True
            bindNavEdit.Text = "编辑"
            MsgBox("退出编辑模式", MsgBoxStyle.Information Or MsgBoxStyle.OkOnly, "提示信息")
            IsEdit = False
        End If

    End Sub

    Private Sub bindNavManage_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bindNavManage.Click
        If IsManage = False Then    '进入管理状态
            UnLockResultForm.ShowDialog()
        Else    '提示已经进入管理状态
            MsgBox("已经进入管理状态", MsgBoxStyle.OkOnly Or MsgBoxStyle.Information, "提示信息")
        End If

    End Sub

    Private Sub bindNavExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bindNavExit.Click

        If IsEdit = True Then
            Resultdgv.ReadOnly = True
            bindNavEdit.Text = "编辑"
            IsEdit = False
        End If
        If IsManage = True Then
            Me.bindNavDelItem.Visible = False
            Me.bindNavEdit.Visible = False
            Me.bindNavRefresh.Visible = False
            Me.bindNavAdd.Visible = False
            IsManage = False
        End If
        Me.Close()
    End Sub


    Private Sub BindingNavigatorMoveNextItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BindingNavigatorMoveNextItem.Click
        SourRefresh()   '更新数据指针位置
    End Sub

    Private Sub BindingNavigatorMovePreviousItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BindingNavigatorMovePreviousItem.Click
        SourRefresh()
    End Sub

    Private Sub BindingNavigatorMoveFirstItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BindingNavigatorMoveFirstItem.Click
        SourRefresh()
    End Sub

    Private Sub BindingNavigatorMoveLastItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BindingNavigatorMoveLastItem.Click
        SourRefresh()
    End Sub

    Private Sub ResultForm_Resize(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Resize
        If Me.Width > 568 And Me.Height > 452 Then
            Resultdgv.Width = Me.Width - 8
            Resultdgv.Height = Me.Height - 2 * Resultdgv.Top
        End If
    End Sub

    Private Sub CombClass_SelectionChangeCommitted(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CombClass.SelectionChangeCommitted
        sql = "select 学号,姓名,课程,分数,学分,班级 from Result_View where 班级='" & CombClass.Text & "'"
        SqlCmd()
        SqlResult()
        ResultDataView()
    End Sub

    Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)

    End Sub

    Private Sub bindNavAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bindNavAdd.Click
        NewResultForm.ShowDialog()
    End Sub

    Private Sub bindNavRefresh_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bindNavRefresh.Click
        Try
            Dim dt1, dt2, dt3, dt4 As DataTable
            Dim adp1, adp2, adp3, adp4 As SqlDataAdapter
            Dim build1, build2, build3, build4 As SqlCommandBuilder
            Dim sql1, sql2, sql3, sql4 As String

            sql1 = "select * from student_info"
            sql2 = "select * from result_info"
            sql3 = "select * from class_info"
            sql4 = "select * from course_info"

            adp1 = New SqlDataAdapter(sql1, conn)
            adp2 = New SqlDataAdapter(sql2, conn)
            adp3 = New SqlDataAdapter(sql3, conn)
            adp4 = New SqlDataAdapter(sql4, conn)

            adp1.Fill(ds, sql1)
            adp2.Fill(ds, sql2)
            adp3.Fill(ds, sql3)
            adp4.Fill(ds, sql4)

            dt1 = New DataTable()
            dt1 = ds.Tables(sql1)
            dt2 = New DataTable()
            dt2 = ds.Tables(sql2)
            dt3 = New DataTable()
            dt3 = ds.Tables(sql3)
            dt4 = New DataTable()
            dt4 = ds.Tables(sql4)

            build1 = New SqlCommandBuilder(adp1)
            build2 = New SqlCommandBuilder(adp2)
            build3 = New SqlCommandBuilder(adp3)
            build4 = New SqlCommandBuilder(adp4)

            Me.Validate()
            bdsour.EndEdit()    '结束编辑
            adp1.Update(dt4.GetChanges)


            MsgBox("更新成功", MsgBoxStyle.Information Or MsgBoxStyle.OkOnly, "提示信息")
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try

    End Sub

End Class

 

2.公共数据模块

Imports System.Data.SqlClient
Imports System.Data.Sql
Module Module1
    '登陆窗口变量
    Public userid As String '登陆用户名存储
    Public userpwd As String '登陆密码存储

    '管理窗口变量
    Public IsEdit As Boolean
    Public IsManage As Boolean

    '数据库相关定义和函数
    '/////////////////////////////////////////////////////////////////////////////////
    '数据类型定义
    '-------------------------------------------
    Public bdsour As BindingSource
    Public conn As SqlConnection
    Public cmd As SqlDataAdapter
    Public ds As DataSet
    Public sql As String
    '-------------------------------------------
    '数据库连接
    Public Function SqlConn()
        Try
            conn = New SqlConnection("server=(local);database=student;uid=sa;password=loveyou")
            Return True
        Catch ex As Exception
            Throw ex
            Return False
        End Try
    End Function
    '登陆用户验证(查询语句通用)
    Public Function SqlLogin()
        Try
            conn.Close()
            cmd = New SqlDataAdapter(sql, conn)
            conn.Open()
            Return True
        Catch ex As Exception
            Throw ex
            Return False
        End Try

    End Function
    '执行SQL语句(插入,删除等操作语句通用)
    Public Function SqlCmd()
        Try
            conn.Close()    '关闭上一次连接
            cmd = New SqlDataAdapter(sql, conn)
            conn.Open()
            cmd.SelectCommand.ExecuteNonQuery()
            Return True
        Catch ex As Exception
            Throw ex
            Return False
        End Try
    End Function

    '成绩表填充数据集合
    Public Function SqlResult()
        Try
            ds = New DataSet()
            ds.Clear()
            cmd.Fill(ds, "Result_View")
            Return True
        Catch ex As Exception
            Throw ex
            Return False
        End Try

    End Function
    '学生基本信息填充数据集合
    Public Function SqlStuInfo()
        Try
            ds = New DataSet()
            ds.Clear()
            cmd.Fill(ds, "StuInfo_View")
            Return True
        Catch ex As Exception
            Throw ex
            Return False
        End Try

    End Function
    '/////////////////////////////////////////////////////////////////////////////////
End Module


'这里主要是公有变量和公共函数

 

 

3.学生信息管理:

Public Class StuInfoForm
    '文本数据绑定
    Sub TextBind()

    End Sub
    'DataGrid数据绑定
    Sub StuInfoDataView()
        StuInfodgv.DataSource = ds.Tables("StuInfo_View").DefaultView
        bdsour = New BindingSource(ds, "StuInfo_View")
        BindNav.BindingSource = bdsour
        SourRefresh()
    End Sub
    '更新指针位置
    Sub SourRefresh()
        StuInfodgv.DataSource = BindNav.BindingSource
    End Sub

    Private Sub StuInfoForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'TODO: 这行代码将数据加载到表“StudentDataSet.class_info”中。您可以根据需要移动或移除它。
        Me.Class_infoTableAdapter.Fill(Me.StudentDataSet.class_info)

        SqlConn()   '连接数据库
    End Sub

    Private Sub bindNavManage_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bindNavManage.Click
        If IsManage = True Then
            MsgBox("已经进入管理模式", MsgBoxStyle.Critical Or MsgBoxStyle.OkOnly, "提示信息")
        Else
            UnLockStuInfoForm.ShowDialog()
        End If
    End Sub

    Private Sub bindNavExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bindNavExit.Click
        If IsEdit = True Then
            Me.GroupBox1.Enabled = False
            Me.CombChoClass.Visible = False
            Me.txtClass.Visible = True
            IsEdit = False
        End If
        If IsManage = True Then
            Me.bindNavEdit.Visible = False
            Me.bindNavAdd.Visible = False
            Me.bindNavDelItem.Visible = False
            Me.bindNavRefresh.Visible = False
            IsManage = False
        End If
        Me.Close()
    End Sub

    Private Sub btnOK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOK.Click
        If (Trim(txtType.Text) <> "") And (CombType.Text <> "") Then
            sql = "select * from StuInfo_View where " & CombType.Text & "='" & Trim(txtType.Text) & "'"
            SqlCmd()
            SqlStuInfo()
            StuInfoDataView()
        End If
    End Sub

    Private Sub BindingNavigatorMoveNextItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
        SourRefresh()
    End Sub

    Private Sub BindingNavigatorMovePreviousItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
        SourRefresh()
    End Sub

    Private Sub BindingNavigatorMoveLastItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
        SourRefresh()
    End Sub

    Private Sub BindingNavigatorMoveFirstItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
        SourRefresh()
    End Sub

    Private Sub btnShowAll_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnShowAll.Click
        sql = "select 学号,姓名,性别,班级,身份证号,电话,籍贯,政治面貌,父亲,母亲,地址,备注 from StuInfo_View"
        SqlCmd()
        SqlStuInfo()
        StuInfoDataView()
    End Sub

    Private Sub bindNavEdit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bindNavEdit.Click
        If IsEdit = False Then  '如果没有进入编辑,则进入
            Me.GroupBox1.Enabled = True
            Me.CombChoClass.Visible = True
            Me.txtClass.Visible = False
            Me.bindNavEdit.Text = "锁定"
            IsEdit = True
            MsgBox("进入编辑模式", MsgBoxStyle.Information Or MsgBoxStyle.OkOnly, "提示信息")
        Else
            Me.GroupBox1.Enabled = False
            Me.CombChoClass.Visible = False
            Me.txtClass.Visible = True
            Me.bindNavEdit.Text = "编辑"
            IsEdit = False
            MsgBox("退出编辑模式", MsgBoxStyle.Information Or MsgBoxStyle.OkOnly, "提示信息")
        End If

    End Sub

    Private Sub bindNavRefresh_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bindNavRefresh.Click
        SourRefresh()
    End Sub

    Private Sub CombClass_SelectionChangeCommitted(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CombClass.SelectionChangeCommitted
        sql = "select 学号,姓名,性别,班级,身份证号,电话,籍贯,政治面貌,父亲,母亲,地址,备注 from StuInfo_View where 班级='" & CombClass.Text & "'"
        SqlCmd()
        SqlStuInfo()
        StuInfoDataView()
    End Sub

    Private Sub bindNavAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bindNavAdd.Click
        NewStuForm.ShowDialog()
    End Sub
End Class




本文来源:http://blog.csdn.net/dollybol/archive/2007/08/12/1739372.aspx
站内文章搜索 高级搜索
文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
     如何在ado中使用connect…
     vb 贪吃蛇 单人版游戏 (…
     关于在vb中进行com组件的…
     用vb6.0编写自我升级的程…
     vb自动登陆网络站点详解…
     vb打造超酷个性化菜单(…
  • page、request、session、ap…

  • JSF 的性能远不及 JSP 或 St…

  • HashTable和HashMap; Vecto…

  • iBatis一级缓存的探讨

  • Struts2学习:在struts2中集…

  • SPRING+STRUTS+HIBERNATE登录…

  • JSP标准模板库(JSTL)入门教…

  • 搭建JSTL运行环境

  • struts多附件上传

  • JavaWeb中的Session、Sessio…

  •   网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    网络学院©2007 www.23book.net
    为您提供web编程,vb编程,vc编程,服务器架设管理,数据库设计等方面的知识 站长:David