如何用SQL建立一个学生成绩管理系统数据库?

如何用SQL建立一个学生成绩管理系统数据库?,第1张

首先在SQL中利用企业管理器或向导建立一个数据库,命名为学生管理系统,

启动SQL Sever服务,运行企业管理器,单击要创建数据库的服务器左边的加号图标,展开树形目录,在“数据库”节点上右击鼠标,在d出的快捷菜单中选则“新建数据库”命令,然后按照提示一步步建立数据库,不再详细叙述。

假设学生管理系统下有三个表,分别为学生表、课程表、修课表,表的结构分别如下:

学生表(student) (

学号(sno) 普通编码定长字符类型,长度7,主码,

姓名(sname) 普通编码定长字符类型,长度8,非空,

性别(ssex) 统一编码定长字符类型,长度1,

年龄(sage) 微整型,

所在系(sdept) 统一编码可变长字符类型,长度20

课程表(course) (

课程号(cno) 普通编码定长字符类型,长度6,主码,

课程名(cname) 统一编码定长字符类型,长度10,非空,

学分(credit) 小整型,

学期(semester) 小整型

修课表(sc)(

学号(sno) 普通编码定长字符类型,长度7,主码,外码

课程号(cno) 普通编码定长字符类型,长度6,主码,外码

成绩(grade) 小整型,

修课类别(type)普通编码定长字符类型,长度4

则创建表的语句分别为:

create table Student(

Sno char(7) primary key,

Sname char(8) not null,

Ssex nchar(1),

Sage tinyint,

Sdept nvarchar(20)

)

create table Course(

Cno char(6) primary key,

Cname nchar(10) not null,

Credit smallint,

Semester smallint

)

create table SC(

Sno char(7),

Cno char(6),

Grade smallint,

Type char(4),

primary key(Sno,Cno),

Foreign key(Sno)    References Student (Sno),

Foreign key(Cno)    References Course (Cno)

)

各表的结构大体如此,如有变化可自行修改。 以上数据库和表就基本建立好了,然后就可以通过数据导入或SQL语句等向数据库中添加学生的各项具体数据了。

SQL语言,是结构化查询语言(Structured Query Language)的简称。SQL语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。

对大学生社团管理系统进行数据库设计,要包括以下内容:

分析大学生社团管理应包含的实体、实体包含的属性。分析实体之间的关系,如强制参与、可选参与等,实体数应不低于 6 个

对实体中相应的数据项给出详细的数据字典描述,语义要合理

以 PowerDesigner 为建模工具,对数据库进行逻辑设计,图中含实体、属性、多样性、实体联系、主键、外键等

设计的关系模式需进行规范化处理,每个关系模式应能达到 3NF

针对选定的系统设计不低于 20 个事务,涉及到检索和更新等,事务要合理

绘制事务图,使用路径指示 ER 模型支持的用户事务

import javax.swing.*

import java.awt.*

import java.awt.event.*

class MyPanel extends JPanel{

Image img=Toolkit.getDefaultToolkit().getImage("a.jpg")

public void paint(Graphics g){

g.drawImage(img,0,0,this)

}

}

public class MainForm extends JFrame implements ActionListener{

JMenu mSystem=new JMenu("系统")

JMenuItem mExit=new JMenuItem("退出")

JMenu mOperate=new JMenu("数据 *** 作")

JMenuItem mAdd=new JMenuItem("添加")

JMenuItem mDel=new JMenuItem("删除")

JMenuItem mModify=new JMenuItem("修改")

JMenuItem mBrowse=new JMenuItem("浏览")

JMenu mQuery=new JMenu("查询")

JMenuItem mNumber=new JMenuItem("按学号查询")

JMenuItem mScore=new JMenuItem("按成绩查询")

JMenu mHelp=new JMenu("帮助")

JMenuItem mAbout=new JMenuItem("关于")

JMenuBar mBar=new JMenuBar()

MainForm(){

super("学生成绩管理系统")

setSize(700,630)

setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE)

mSystem.add(mExit)

mOperate.add(mAdd)

mOperate.add(mDel)

mOperate.add(mModify)

mOperate.add(mBrowse)

mQuery.add(mNumber)

mQuery.add(mScore)

mHelp.add(mAbout)

mBar.add(mSystem)

mBar.add(mOperate)

mBar.add(mQuery)

mBar.add(mHelp)

setJMenuBar(mBar)

mExit.addActionListener(this)

mAdd.addActionListener(this)

mDel.addActionListener(this)

mModify.addActionListener(this)

mBrowse.addActionListener(this)

mNumber.addActionListener(this)

mScore.addActionListener(this)

mAbout.addActionListener(this)

setContentPane(new MyPanel())

setVisible(true)

}

public void actionPerformed(ActionEvent ae){

if(ae.getSource()==mExit)

System.exit(0)

else if(ae.getSource()==mAbout)

JOptionPane.showMessageDialog(this,"学生管理系统 V1.0\n\n安徽师范大学数学计算机科学学院\n\n2010年11月","关于",JOptionPane.INFORMATION_MESSAGE)

else if(ae.getSource()==mAdd)

new AddForm().setVisible(true)

else if(ae.getSource()==mDel)

new DeleteForm().setVisible(true)

else if(ae.getSource()==mModify)

new ModifyForm().setVisible(true)

else if(ae.getSource()==mBrowse)

new BrowseForm().setVisible(true)

else if(ae.getSource()==mNumber)

new NumberQueryForm().setVisible(true)

else if(ae.getSource()==mScore)

new ScoreQueryForm().setVisible(true)

}

public static void main(String[] args) {

new MainForm()

}

}

这个是主界面。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9892358.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存