如何用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语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。

Student 类

public class Student

{

private int id

private int age

private int score

private String name

public Student()

{

}

public Student(int id, int age, int score, String name)

{

this.id = id

this.age = age

this.score = score

this.name = name

}

public int getId()

{

return id

}

public void setId(int id)

{

this.id = id

}

public int getAge()

{

return age

}

public void setAge(int age)

{

this.age = age

}

public int getScore()

{

return score

}

public void setScore(int score)

{

this.score = score

}

public String getName()

{

return name

}

public void setName(String name)

{

this.name = name

}

@Override

public String toString()

{

return "学号:" + id + " 姓名:" + name + " 年龄:" + age + " 成绩:" + score

}

}

Manager类

import java.util.ArrayList

import java.util.Iterator

import java.util.List

public class Manager

{

private List<Student>list

public Manager(List<Student>list)

{

this.list = list

}

public List<Student>getList()

{

return list

}

public void setList(List<Student>list)

{

this.list = list

}

//添加学生

public void add(Student s)

{

list.add(s)

}

//根据学生学号返回学生年龄

public int search(int id)

{

for(Iterator<Student>iter = list.iterator()iter.hasNext())

{

Student s = iter.next()

if(s.getId() == id)

{

return s.getAge()

}

}

return -1

}

//删除学生

public void remove(int id)

{

for(Iterator<Student>iter = list.iterator()iter.hasNext())

{

Student s = iter.next()

if(s.getId() == id)

{

list.remove(s)

}

}

}

//计算总成绩

public int allScore()

{

int score = 0

int temp = 0

for(Iterator<Student>iter = list.iterator()iter.hasNext())

{

Student s = iter.next()

temp = s.getScore()

score += temp

}

return score

}

//修改成绩

public void update(int id)

{

for(Iterator<Student>iter = list.iterator()iter.hasNext())

{

Student s = iter.next()

if(s.getId() == id)

{

s.setScore(s.getScore() + 10)

}

}

}

}

测试类 Client

import java.util.ArrayList

import java.util.List

public class Client

{

public static void main(String[] args)

{

List<Student>list = new ArrayList<Student>()

Manager manager = new Manager(list)//创建一个管理者

Student s1 = new Student()//无参构造方法创建的学生实例

//通过方法设置s1的属性

s1.setId(201105)

s1.setAge(20)

s1.setScore(100)

s1.setName("zhangsan")

Student s2 = new Student(201101,21,98,"lisi")//通过带参数的构造方法创建实例

Student s3 = new Student(201108,25,95,"zhaoliu")

Student s4 = new Student(201110,23,80,"xiaoming")

Student s5 = new Student(201106,28,78,"hello")

//放到集合当中

manager.getList().add(s1)//添加学生

manager.getList().add(s2)

manager.getList().add(s3)

manager.getList().add(s4)

manager.getList().add(s5)

System.out.println(list)

System.out.println(manager.allScore())

System.out.println(manager.search(201110))//根据学生学号查询学生年龄

manager.remove(201110)//删除学生

manager.update(201101)//修改成绩

}

}

可以完成你上述的基本要求,如果改动可以自行修改 很简单。

1:Access,建立数据库,数据库命名为Database1.mdb。

(注意:这里的后缀是MDB,如果Access是2007版本的,保存的时候要另存为2003版本的才行,因为,VB不直接支持07版的accdb后缀格式!)

2:数据库建立后就进入了数据表界面,可以输入数据了,输完以后CRRL+S保存,输入表名,这里表名为test,ok,准备工作搞定。

菜单中找到工程→部件→勾选 ,

Microsoft ADO Data Control 6.0

Microsoft Hierarchical Flexgrid Control 6.0

勾选后左侧工具栏里就多了两个控件即 ADODC控件和MSHFlexGrid控件。

选择 ADODC控件和MSHFlexGrid控件,放在窗体的合适位置

设置ADODC控件的属性:

右键窗体内ADODC1控件

1:ADODC属性页→通用→选择使用连接字符串→点击生成→选择Microsoft Jet 4.0 OLE DB Provider 点击下一步→选择之前准备好的数据库→点击测试连接,显示测试成功则ok,确定。

2:ADODC属性页→记录源→命令类型选择2-adcmdtable,表或存储过程名称选择之前建立的数据表test,点击确定,ADODC属性设置完成。

设置MSHFlexGrid控件的属性:

VB右侧属性表里,找到datasource,选择adodc1

就完事了


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

原文地址:https://54852.com/sjk/9766262.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存