-
2021-02-05 07:04:17
大家好,我是时间财富网智能客服时间君,上述问题将由我为大家进行解答。
数据库创建学生信息表的方法是:
1、新建表:单击数据库“studentDb”前图标,然后右键“表”文件包,单击“新建表”选项,进入“新建表”窗口。
2、设定表标识字段id:填写第一个列名“id”,设定数据类型为“int”,同时在“列属性”位置中“标识规范”中设定“是标识”的值为“是”。
3、设定表其它字段:依次填写字段学号stuNumber(varchar(50),不为空)、姓名stuName(varchar(50),可为空)、性别stuXb(varchar(50),可为空)、年龄stuAge(int,可为空)、出生日期stuBirth(datetime,可为空)。
4、单击表的右上角“ × ”图标,进入“保存对以下各项的更改吗”对话框。
5、单击“是”,进入“选择名称”对话框,填写表名为“student”。特别强调:表名不能采用常见的关键词(如for、name、where、to等)命名。
6、单击“确定”,学生个人信息student表创建完成。
7、单击数据库“studentDb”前面“×”图标,然后单击“表”前面的“”图标,右键“student”表,单击“打开表”选项,即可向表中填入数据,注意:id字段值自动填入,不能手填。
8、单击student表的右上角“× ”图标,关闭表同时自动保存学生个人信息。
更多相关内容 -
学生信息管理系统 SQL数据库
2019-02-19 02:00:27以学生管理为主要内容,设计有关学生信息管理的数据库系统。要求:涵盖学生基本情况、学生成绩、奖惩、宿舍管理、社团管理、课表管理、缴费注册信息等。包含触发器及存储过程,十个查询,需求分析、E-R图、数据字典... -
Java学生信息管理系统源码(含数据库脚本等).zip
2019-12-24 11:22:27学生信息管理系统 功能说明 学生信息管理,包括学生、班级、院系、课程、成绩等的管理。 本程序仅供学习食用。 工程环境 JDK IntelliJ IDEA MySQL 运行说明 1、安装JDK。 2、导入SQL脚本并配置。 使用前... -
学生信息管理数据库实例,实例数据库文件
2018-04-27 17:42:09学生信息管理数据库实例,实例数据库文件学生信息管理数据库实例,实例数据库文件,用于数据库查询练习! -
SQL server+java实现的学生信息管理系统-数据库原理课程设计报告(含代码)
2020-01-03 21:45:34SQL server+java实现的学生信息管理系统-数据库原理课程设计报告。SQL server+java实现的学生信息管理系统-数据库原理课程设计报告。SQL server+java实现的学生信息管理系统-数据库原理课程设计报告。 -
androidStudio--基于SQLite数据库的学生信息管理系统
2020-01-17 12:53:21这是基于android开发的学生信息管理系统,包括学生的增加、删除、查询、修改、详细信息查看;除此之外,该系统应用到了手机内置的sqlite数据库来进行数据的存储,所以,是学生学习android的一次不错的选择,应用工具... -
Android 数据库编程SQLite实现学生信息管理应用
2021-06-09 22:46:16Android 数据库编程SQLite实现学生信息管理应用https://blog.csdn.net/qq_45808700/article/details/117535524?spm=1001.2014.3001.5501 -
数据库学生成绩管理系统
2018-11-08 11:35:07能够进行数据库的数据定义、数据操纵、数据控制等处理功能,进行联机处理的相应时间要短。具体功能应包括:系统应该提供课程安排数据的插入、删除、...成绩的添加、修改、删除、查询,学生及教职工基本信息查询的功能。 -
学生信息管理系统--java连接mysql
2020-12-04 08:58:56通过java代码连接mysql数据库(JDBC),实现对数据库中表格的增删查改操作,同时增加了"注册"功能,内有java源代码和简单的PPT介绍,适用于初学数据库的人员。 -
学生信息管理系统(JavaWeb+MySQL)简单的学生信息管理系统,自己建个数据库就可完美运行。
2018-12-16 05:34:34简单的学生信息管理系统,自己建个数据库就可完美运行。 -
数据库课程设计【学生社团管理系统】
2019-01-21 11:11:39武汉科技大学,基于Java的数据库课程设计,学生社团管理系统,包含题目,说明,代码,ER图,报告等 -
数据库课程设计-JAVA实现学生信息管理系统
2012-01-09 13:49:09数据库课程设计-JAVA实现学生信息管理系统源代码,是自己进行课程设计的时候做的,运行没有问题!可以做参考! -
C++基于数据库Mysql学生信息管理系统.zip
2022-04-30 13:24:53C++基于数据库Mysql学生信息管理系统.zip C++基于数据库Mysql学生信息管理系统.zip C++基于数据库Mysql学生信息管理系统.zip C++基于数据库Mysql学生信息管理系统.zip C++基于数据库Mysql学生信息管理系统.zip ... -
学生成绩管理系统(带数据库)
2019-04-15 23:18:11这是一个简单的学生成绩管理系统,可以对学生及成绩信息进行增改删查。也可以对班级、学生、课程及成绩进行分类查询。 -
学生信息管理系统(python+GUI+mysql).zip
2021-06-08 19:42:30python写的学生信息管理系统,GUI界面+mysql数据库,实现了增删改查等基本功能,详情请看我的博客 -
学生信息管理系统(含数据库和源代码)
2016-06-09 13:25:54简易学生信息管理系统,采用java编写,数据库采用sqlsever,含数据库文件和java源文件,包含sqljdbc驱动,用于连接sqlsever2005,2012 -
基于django的学生信息管理系统
2018-06-13 18:47:27这是用pycharm软件编写的基于django的学生信息管理系统,含有MySQL数据库,数据库得自己配,具体配置方法需要百度,数据库表配置文件在models,数据库配置文件在setting里database,有问题可以评论 -
数据库学生信息管理系统
2020-06-16 14:03:51本数据库管理系统基于学生表进行数据的存储和读取,首先由一个登陆界面,输入正确的学生的学号和密码才能进入系统,如果学生登陆成功,曾通过菜单命令显示所有学生信息、添加学生、插入学生、删除学生、根据姓名查询...数据库学生信息管理系统
设计任务:
本管理系统基于学生表进行数据的存储和读取,首先由一个登陆界面,输入正确的学生的学号和密码才能进入系统,如果学生登陆成功,曾通过菜单命令显示所有学生信息、添加学生、插入学生、删除学生、根据姓名查询学生信息,查看学生平均成绩和成绩统计
分析等。需求分析:
用户需要一个用户登录系统以保证数据库的隐私,通过姓名学号检验是否有登录权限,之后设计一个主页面,设计简易下拉框来实现页面简洁性,下拉框包括查询,查询包括按姓名查询,ID查询;更新功能,更新功能又可实现数据的增加,删除,修改,这可以再通过一个小窗口实现;成绩查询,学生平均分显示,不及格人数查询,优秀人数查询。这就是一个简单的学生信息管理系统。细节分析
标题通过sql语句创建数据库,建立需要的表,同时插入所需要的的数据,然后建立数据库连接类,使用JDBC连接数据库需要四步,第一步加载驱动程序;第二步,连接数据库;第三步,访问数据库;第四步,执行查询;其中在第四步执行查询时,要用statement类的executeQuery()方法来下达select指令以查询数据库,executeQuery()方法会把数据库响应的查询结果存放在ResultSet类对象中供我们使用。建立好数据库连接类后开始实现所需要的功能的类,先将要使用的Connection con,PreparedStatement pstat,ResultSet rs变量定义好,首先是查询类,通过姓名进行查询,通过ID进行查询,查询全部,然后调用连接类连接oracle数据库,再通过查找所需要的对应的sql语句设置查找条件,再对返回的结果集进行处理,最后关闭数据库;紧接着是修改类,然后调用连接类连接oracle数据库,再通过修改信息所需要的对应的sql语句设置修改条件,再对返回的结果集进行处理,这里设置返回结果为布尔型,便于用户看到修改是否成功,最后关闭数据库;之后是增加学生类,然后调用连接类连接oracle数据库,再通过增加信息所需对应的sql语句设置增加条件,再对返回的结果集进行处理,这里设置返回结果为布尔型,便于用户看到增加是否成功,最后关闭数据库。之后是删除类,然后调用连接类连接oracle数据库,再通过删除信息所需对应的sql语句设置删除条件,再对返回的结果集进行处理,这里设置返回结果为布尔型,便于用户看到删除是否成功,最后关闭数据库。第五步,实现用户窗体页面,创建登录窗体类,通过调用查询类查询用户密码是否存在,再创建主窗体类,登陆成功后进入主窗体,主窗体包括查询,更改,删除,增加的一个下拉框,平均成绩,成绩统计的一个下拉框。通过设置button按钮监听,实现对各个功能类的调用。最后达到用户的需求。
#附部分功能截图
备注:需完整word请到主页下载。 -
MySQL数据库实验(六):创建学生信息管理系统
2020-04-22 17:11:15学生信息管理系统内容: 学生表student(Sno,Sname,Ssex,Sage,Sdept) 课程表course(Cno,Cname,Cpno,Ccredit) 学生选课表SC(Sno,Cno,Grade) 一、 创建数据库并使用 mysql> use dx; Database changed 二、 创建...学生信息管理系统内容:
学生表student(Sno,Sname,Ssex,Sage,Sdept)
课程表course(Cno,Cname,Cpno,Ccredit)
学生选课表SC(Sno,Cno,Grade)一、 创建数据库并使用
mysql> use dx; Database changed
二、 创建数据库表并显示数据课表结构
学生选课表SC(Sno,Cno,Grade)
mysql> create table SC -> (Sno varchar(255), -> Cno varchar(255), -> Grade smallint -> ); Query OK, 0 rows affected (0.06 sec) mysql> desc sc; +-------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+--------------+------+-----+---------+-------+ | Sno | varchar(255) | YES | | NULL | | | Cno | varchar(255) | YES | | NULL | | | Grade | smallint(6) | YES | | NULL | | +-------+--------------+------+-----+---------+-------+ 3 rows in set (0.05 sec) mysql>
学生表student(Sno,Sname,Ssex,Sage,Sdept)
mysql> create table student(Sno varchar(255),Sname varchar(255),Sage int,Sdept varchar(255)); Query OK, 0 rows affected (0.08 sec) mysql> desc student; +-------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+--------------+------+-----+---------+-------+ | Sno | varchar(255) | YES | | NULL | | | Sname | varchar(255) | YES | | NULL | | | Sage | int(11) | YES | | NULL | | | Sdept | varchar(255) | YES | | NULL | | +-------+--------------+------+-----+---------+-------+ 4 rows in set (0.01 sec) mysql>
课程表course(Cno,Cname,Cpno,Ccredit)
mysql> create table course(Cno varchar(255),Cname varchar(255),Cpno int,Ccredit varchar(255)); Query OK, 0 rows affected (0.09 sec) mysql> desc course; +---------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +---------+--------------+------+-----+---------+-------+ | Cno | varchar(255) | YES | | NULL | | | Cname | varchar(255) | YES | | NULL | | | Cpno | int(11) | YES | | NULL | | | Ccredit | varchar(255) | YES | | NULL | | +---------+--------------+------+-----+---------+-------+ 4 rows in set (0.01 sec)
显示数据库中是数据库表:
mysql> show tables; +--------------+ | Tables_in_dx | +--------------+ | course | | sc | | student | +--------------+ 3 rows in set (0.00 sec)
三、 在数据库表中插入数据
在数据库表SC中插入数据:
mysql> insert into SC values('20161018','1',90); Query OK, 1 row affected (0.00 sec) mysql> insert into SC values('20161019','2',90); Query OK, 1 row affected (0.00 sec) mysql> insert into SC values('20161020','3',100); Query OK, 1 row affected (0.00 sec) mysql> insert into SC values('20161021','4',89); Query OK, 1 row affected (0.00 sec) mysql> select * from SC; +----------+------+-------+ | Sno | Cno | Grade | +----------+------+-------+ | 20161018 | 1 | 90 | | 20161019 | 2 | 90 | | 20161020 | 3 | 100 | | 20161021 | 4 | 89 | +----------+------+-------+ 4 rows in set (0.00 sec)
其他数据库表插入数据也一样,不过需要注意的是变量的形式(字符型、整型、浮点数)
mysql> select * from student; +----------+-------+------+------+-------+ | Sno | Sname | Ssex | Sage | Sdept | +----------+-------+------+------+-------+ | 20161018 | 里勇 | 男 | 20 | CS | | 20161019 | 刘成 | 女 | 19 | IS | | 20161020 | 王敏 | 女 | 19 | MA | | 20161021 | 张里 | 男 | 18 | MA | +----------+-------+------+------+-------+ 4 rows in set (0.00 sec) mysql> select Sno,Sname from student; +----------+-------+ | Sno | Sname | +----------+-------+ | 20161018 | 里勇 | | 20161019 | 刘成 | | 20161020 | 王敏 | | 20161021 | 张里 | +----------+-------+ 4 rows in set (0.00 sec) mysql> select Sname,2016-Sage from student; +-------+-----------+ | Sname | 2016-Sage | +-------+-----------+ | 里勇 | 1996 | | 刘成 | 1997 | | 王敏 | 1997 | | 张里 | 1998 | +-------+-----------+ 4 rows in set (0.00 sec)
mysql> select * from course; +-----+----------+------+---------+ | Cno | Cname | Cpno | Ccredit | +-----+----------+------+---------+ | 1 | 高数 | 1 | 6 | | 2 | 大物 | 2 | 4 | | 3 | 数电 | 3 | 6 | | 4 | 大学英语 | 4 | 5 | | 5 | 数据库 | 5 | 3 | +-----+----------+------+---------+ 5 rows in set (0.04 sec)
四、将数据库表进行改名
mysql> select Sname as 姓名,'Year of Birth:',2016-Sage 出生年份,lower(Sdept) 学院 from student; +------+----------------+----------+------+ | 姓名 | Year of Birth: | 出生年份 | 学院 | +------+----------------+----------+------+ | 里勇 | Year of Birth: | 1996 | cs | | 刘成 | Year of Birth: | 1997 | is | | 王敏 | Year of Birth: | 1997 | ma | | 张里 | Year of Birth: | 1998 | ma | +------+----------------+----------+------+ 4 rows in set (0.00 sec)
五、 对数据库表进行各种操作
mysql> select Sno from SC; +----------+ | Sno | +----------+ | 20161018 | | 20161019 | | 20161020 | | 20161021 | +----------+ 4 rows in set (0.00 sec) mysql> select distinct Grade from SC; +-------+ | Grade | +-------+ | 90 | | 100 | | 89 | +-------+ 3 rows in set (0.00 sec) mysql> select distinct Sno from SC where Grade > 90; +----------+ | Sno | +----------+ | 20161020 | +----------+ 1 row in set (0.00 sec) mysql> select Sname,Ssex -> from student -> where Sdept = 'IS' or Sdept = 'MA' or Sdept = 'CS'; +-------+------+ | Sname | Ssex | +-------+------+ | 里勇 | 男 | | 刘成 | 女 | | 王敏 | 女 | | 张里 | 男 | +-------+------+ 4 rows in set (0.00 sec) mysql> select count(*) from student; +----------+ | count(*) | +----------+ | 4 | +----------+ 1 row in set (0.00 sec) mysql> select avg(Grade) from SC; +------------+ | avg(Grade) | +------------+ | 92.2500 | +------------+ 1 row in set (0.00 sec) mysql> select Cno,count(Sno) -> from SC -> group by Cno; +------+------------+ | Cno | count(Sno) | +------+------------+ | 1 | 1 | | 2 | 1 | | 3 | 1 | | 4 | 1 | +------+------------+ 4 rows in set (0.00 sec) mysql> select Cno,avg(Grade) -> from SC -> group by Cno; +------+------------+ | Cno | avg(Grade) | +------+------------+ | 1 | 90.0000 | | 2 | 90.0000 | | 3 | 100.0000 | | 4 | 89.0000 | +------+------------+ 4 rows in set (0.00 sec) mysql> select student.*,sc.* -> from student,sc -> where student.Sno = sc.Sno; +----------+-------+------+------+-------+----------+------+-------+ | Sno | Sname | Ssex | Sage | Sdept | Sno | Cno | Grade | +----------+-------+------+------+-------+----------+------+-------+ | 20161018 | 里勇 | 男 | 20 | CS | 20161018 | 1 | 90 | | 20161019 | 刘成 | 女 | 19 | IS | 20161019 | 2 | 90 | | 20161020 | 王敏 | 女 | 19 | MA | 20161020 | 3 | 100 | | 20161021 | 张里 | 男 | 18 | MA | 20161021 | 4 | 89 | +----------+-------+------+------+-------+----------+------+-------+ 4 rows in set (0.00 sec) mysql> select student.Sno,Sname,Ssex,Sage,Sdept,Cno,Grade -> from student,sc -> where student.Sno = sc.Sno; +----------+-------+------+------+-------+------+-------+ | Sno | Sname | Ssex | Sage | Sdept | Cno | Grade | +----------+-------+------+------+-------+------+-------+ | 20161018 | 里勇 | 男 | 20 | CS | 1 | 90 | | 20161019 | 刘成 | 女 | 19 | IS | 2 | 90 | | 20161020 | 王敏 | 女 | 19 | MA | 3 | 100 | | 20161021 | 张里 | 男 | 18 | MA | 4 | 89 | +----------+-------+------+------+-------+------+-------+ 4 rows in set (0.00 sec) mysql> select student.Sno,Sname,Cname,Grade -> from student,sc,course -> where student.Sno = sc.Sno and sc.Cno = course.Cno; +----------+-------+----------+-------+ | Sno | Sname | Cname | Grade | +----------+-------+----------+-------+ | 20161018 | 里勇 | 高数 | 90 | | 20161019 | 刘成 | 大物 | 90 | | 20161020 | 王敏 | 数电 | 100 | | 20161021 | 张里 | 大学英语 | 89 | +----------+-------+----------+-------+ 4 rows in set (0.00 sec) mysql>
这篇博文主要是利用数据库对学生信息进行管理,它可以利用各种操作对学生信息进行增删减查,非常的方便!!!
当然最重要的是你自己动手去做,不然一切免谈,也不要指望着别人。。。嘻嘻嘻。。。送我个赞呗。。。
各位老铁们,给我个三连击呗,可以让更多的人看到这篇文章,同时也激励一下我
各位老铁们,给我个三连击呗,可以让更多的人看到这篇文章,同时也激励一下我
各位老铁们,给我个三连击呗,可以让更多的人看到这篇文章,同时也激励一下我 -
学生考勤管理系统(javaee包含数据库和文档)
2017-05-21 11:09:45学生考勤管理系统(javaee包含数据库和文档) -
JAVA学生信息管理系统(数据库实现)
2022-01-06 14:59:24这次的项目是用数据库实现学生的信息管理系统,有三步组成,写项目>>链接数据库>>实现相关的操作 开发工具:eclipse、MySQL、navicat、mysql-connector-java-8.0.27 1.数据库建表简单介绍:
这次的项目是用数据库实现学生的信息管理系统,有三步组成,写项目>>链接数据库>>实现相关的操作
开发工具:eclipse、MySQL、navicat、mysql-connector-java-8.0.27
1.数据库建表
-- 创建数据库 CREATE DATABASE niit DEFAULT CHARACTER SET utf8mb4; SHOW DATABASES; -- 使用数据库niit USE niit; -- 创建表Student CREATE TABLE Student ( ID INT PRIMARY KEY, NAME VARCHAR(4), GENDER CHAR(1), DOB DATE, BATCH INT ); -- 插入记录 INSERT INTO Student VALUES (1,'张','男','1988-1-2',1), (2,'李四','女','1988-12-3',1), (3,'王五','男','1978-11-1',1), (4,'若若','女','1989-2-5',2), (5,'夏春','女','1998-4-3',2), (6,'梅花','女','1999-12-6',2); -- 查看表中所有记录 语法:select * from 表名 SELECT * FROM Student;
2,相关代码(主页面+增删查改)
(1)主页面
package studentManage; import java.awt.Color; import java.awt.EventQueue; import java.awt.Font; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; public class MainFrame extends JFrame { private JPanel contentPane; /** * Launch the application. */ // 有了main函数才可以单独运行 public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { MainFrame frame = new MainFrame(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public MainFrame() { // 设置大小不可改变 setResizable(false); // 设置标题 setTitle("学生管理系统"); // 由于这是主页面,所有当主页面关闭的时候,程序就直接退出 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // setBounds(int x,int y,int width,int height); // x 和 y 是窗口打开时的位置 // width 和 height 是窗口打宽度和高度 setBounds(100, 100, 450, 350); // setLocationRelativeTo(c) // 设置窗口相对于 c 的位置,当 c 为空或者 null 时,默认为是相对于屏幕中央 setLocationRelativeTo(null); // 实例化一个 pane contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(null); JLabel lblNewLabel = new JLabel("学生管理系统"); lblNewLabel.setForeground(Color.RED); lblNewLabel.setFont(new Font("宋体", Font.BOLD, 25)); lblNewLabel.setBounds(140, 10, 163, 44); contentPane.add(lblNewLabel); JButton addButton = new JButton("添加学生"); // addActionListener 注册监听器 addButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { // 设置新窗口可见 new AddFrame().setVisible(true); } }); addButton.setFont(new Font("宋体", Font.PLAIN, 18)); addButton.setBounds(167, 64, 114, 37); contentPane.add(addButton); JButton changeButton = new JButton("修改信息"); changeButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { // 同上 new ChangeFrame().setVisible(true); } }); changeButton.setFont(new Font("宋体", Font.PLAIN, 18)); changeButton.setBounds(167, 121, 114, 37); contentPane.add(changeButton); JButton deleteButton = new JButton("删除学生"); deleteButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { // 同上 new DeleteFrame().setVisible(true); } }); deleteButton.setFont(new Font("宋体", Font.PLAIN, 18)); deleteButton.setBounds(167, 180, 114, 37); contentPane.add(deleteButton); JButton queryButton = new JButton("查询信息"); queryButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { // 同上 new QueryFrame().setVisible(true); } }); queryButton.setFont(new Font("宋体", Font.PLAIN, 18)); queryButton.setBounds(167, 240, 114, 37); contentPane.add(queryButton); } }
(2)添加界面
package studentManage; import java.awt.EventQueue; import java.awt.Font; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.sql.SQLException; import javax.swing.BoxLayout; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JTextField; import javax.swing.border.EmptyBorder; public class AddFrame extends JFrame { private JPanel contentPane; private JTextField idField; private JTextField nameField; private JTextField genderField; private JTextField dobField; private JTextField batchField; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { AddFrame frame = new AddFrame(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public AddFrame() { // 和前面类似 setResizable(false); setTitle("添加学生"); // 这个地方,添加学生只是这个程序的一部分,所以当关闭这部分的时候,程序不直接退出,只是关闭该部分程序 setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); setBounds(100, 100, 450, 470); setLocationRelativeTo(null); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(new BoxLayout(contentPane, BoxLayout.Y_AXIS)); JPanel panel = new JPanel(); contentPane.add(panel); panel.setLayout(null); JLabel TitleLabel = new JLabel("请输入新学生的信息:"); TitleLabel.setFont(new Font("宋体", Font.BOLD, 20)); TitleLabel.setBounds(71, 34, 220, 45); panel.add(TitleLabel); JLabel idLabel = new JLabel("学号:"); idLabel.setFont(new Font("宋体", Font.PLAIN, 16)); idLabel.setBounds(71, 105, 50, 30); panel.add(idLabel); idField = new JTextField(); idField.setBounds(143, 99, 240, 45); panel.add(idField); idField.setColumns(10); JLabel nameLabel = new JLabel("姓名:"); nameLabel.setFont(new Font("宋体", Font.PLAIN, 16)); nameLabel.setBounds(71, 160, 50, 30); panel.add(nameLabel); nameField = new JTextField(); nameField.setColumns(10); nameField.setBounds(143, 154, 240, 45); panel.add(nameField); JLabel genderLabel = new JLabel("性别:"); genderLabel.setFont(new Font("宋体", Font.PLAIN, 16)); genderLabel.setBounds(71, 215, 50, 30); panel.add(genderLabel); genderField = new JTextField(); genderField.setColumns(10); genderField.setBounds(143, 209, 240, 45); panel.add(genderField); JLabel dobLabel = new JLabel("出生日期:"); dobLabel.setFont(new Font("宋体", Font.PLAIN, 16)); dobLabel.setBounds(41, 270, 80, 30); panel.add(dobLabel); dobField = new JTextField(); dobField.setColumns(10); dobField.setBounds(143, 264, 240, 45); panel.add(dobField); JLabel batchLabel = new JLabel("班级:"); batchLabel.setFont(new Font("宋体", Font.PLAIN, 16)); batchLabel.setBounds(71, 325, 50, 30); panel.add(batchLabel); batchField = new JTextField(); batchField.setColumns(10); batchField.setBounds(143, 319, 240, 45); panel.add(batchField); JButton addButton = new JButton("添加"); // 添加鼠标监听事件 addButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { // 先取出数据 // getText() 返回字符串类型的 // Integer.parseInt 数据类型转换 int id = Integer.parseInt(idField.getText()); String nameString = nameField.getText(); String genderString = genderField.getText(); String dobfieldString = dobField.getText(); int batch = Integer.parseInt(batchField.getText()); // 输出一下学生的信息,方便修改 System.out.println(id + "\t" + nameString + "\t" + genderString + "\t" + dobfieldString + "\t" + batch); // SQLHelp 是自己写的一个工具类 SQLHelp sqlHelp = new SQLHelp(); try { // 调用添加学生信息的方法 sqlHelp.addStudent(id, nameString, genderString, dobfieldString, batch); // 弹出对话框,提示用户添加成功 JOptionPane.showMessageDialog(AddFrame.this, "添加成功!"); } catch (SQLException e1) { // 这里捕获一下异常,因为学生的学号是唯一的,所以当学号已经存在的时候,提示用户,该学生信息已存在 // 异常代码为 23000 if(e1.getSQLState().equals("23000")) { JOptionPane.showMessageDialog(AddFrame.this, "添加失败!该学生已存在"); } e1.printStackTrace(); } } }); addButton.setFont(new Font("宋体", Font.PLAIN, 18)); addButton.setBounds(182, 389, 97, 33); panel.add(addButton); } }
(3)删除界面
package studentManage; import java.awt.EventQueue; import java.awt.Font; import javax.swing.BoxLayout; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JTextField; import javax.swing.border.EmptyBorder; import java.awt.event.ActionListener; import java.sql.SQLException; import java.awt.event.ActionEvent; public class DeleteFrame extends JFrame { private JPanel contentPane; private JTextField idField; private JTextField nameField; private JTextField genderField; private JTextField dobField; private JTextField batchField; private JTextField searchField; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { DeleteFrame frame = new DeleteFrame(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public DeleteFrame() { setResizable(false); setTitle("删除学生"); setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); setBounds(100, 100, 450, 470); setLocationRelativeTo(null); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(new BoxLayout(contentPane, BoxLayout.Y_AXIS)); JPanel panel = new JPanel(); contentPane.add(panel); panel.setLayout(null); JLabel lblNewLabel = new JLabel("请输入要删除的学生的学号:"); lblNewLabel.setFont(new Font("宋体", Font.PLAIN, 16)); lblNewLabel.setBounds(71, 0, 208, 29); panel.add(lblNewLabel); JLabel lblNewLabel_1 = new JLabel("学号:"); lblNewLabel_1.setFont(new Font("宋体", Font.PLAIN, 16)); lblNewLabel_1.setBounds(71, 105, 50, 30); panel.add(lblNewLabel_1); idField = new JTextField(); idField.setEditable(false); idField.setBounds(143, 99, 240, 45); panel.add(idField); idField.setColumns(10); JLabel lblNewLabel_1_1 = new JLabel("姓名:"); lblNewLabel_1_1.setFont(new Font("宋体", Font.PLAIN, 16)); lblNewLabel_1_1.setBounds(71, 160, 50, 30); panel.add(lblNewLabel_1_1); nameField = new JTextField(); nameField.setColumns(10); nameField.setBounds(143, 154, 240, 45); panel.add(nameField); JLabel lblNewLabel_1_1_1 = new JLabel("性别:"); lblNewLabel_1_1_1.setFont(new Font("宋体", Font.PLAIN, 16)); lblNewLabel_1_1_1.setBounds(71, 215, 50, 30); panel.add(lblNewLabel_1_1_1); genderField = new JTextField(); genderField.setColumns(10); genderField.setBounds(143, 209, 240, 45); panel.add(genderField); JLabel lblNewLabel_1_1_1_1 = new JLabel("出生日期:"); lblNewLabel_1_1_1_1.setFont(new Font("宋体", Font.PLAIN, 16)); lblNewLabel_1_1_1_1.setBounds(41, 270, 80, 30); panel.add(lblNewLabel_1_1_1_1); dobField = new JTextField(); dobField.setColumns(10); dobField.setBounds(143, 264, 240, 45); panel.add(dobField); JLabel lblNewLabel_1_1_1_2 = new JLabel("班级:"); lblNewLabel_1_1_1_2.setFont(new Font("宋体", Font.PLAIN, 16)); lblNewLabel_1_1_1_2.setBounds(71, 325, 50, 30); panel.add(lblNewLabel_1_1_1_2); batchField = new JTextField(); batchField.setColumns(10); batchField.setBounds(143, 319, 240, 45); panel.add(batchField); JButton deleteButton = new JButton("删除"); deleteButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { int id = Integer.parseInt(searchField.getText()); try { SQLHelp sqlHelp = new SQLHelp(); sqlHelp.deletestudent(id); JOptionPane.showMessageDialog(DeleteFrame.this, "删除成功!"); } catch (SQLException e1) { JOptionPane.showMessageDialog(DeleteFrame.this, "删除失败"); e1.printStackTrace(); } } }); deleteButton.setFont(new Font("宋体", Font.PLAIN, 18)); deleteButton.setBounds(182, 389, 97, 33); panel.add(deleteButton); searchField = new JTextField(); searchField.setBounds(71, 39, 208, 45); panel.add(searchField); searchField.setColumns(10); JButton searchButton = new JButton("查找"); searchButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { int id = Integer.parseInt(searchField.getText()); try { SQLHelp sqlHelp = new SQLHelp(); Student student = sqlHelp.queryStudent(id); if(student != null) { idField.setText(String.valueOf(id)); nameField.setText(student.getName()); genderField.setText(student.getGender()); dobField.setText(student.getDob()); batchField.setText(String.valueOf(student.getBatch())); } else { JOptionPane.showMessageDialog(DeleteFrame.this, "无此学生"); } } catch (SQLException e) { e.printStackTrace(); } } }); searchButton.setFont(new Font("宋体", Font.PLAIN, 18)); searchButton.setBounds(289, 42, 97, 39); panel.add(searchButton); } }
(4)修改界面
package studentManage; import java.awt.EventQueue; import java.awt.Font; import javax.swing.BoxLayout; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JTextField; import javax.swing.border.EmptyBorder; import java.awt.event.ActionListener; import java.sql.SQLException; import java.awt.event.ActionEvent; public class ChangeFrame extends JFrame { private JPanel contentPane; private JTextField idField; private JTextField nameField; private JTextField genderField; private JTextField dobField; private JTextField batchField; private JTextField searchField; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { ChangeFrame frame = new ChangeFrame(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public ChangeFrame() { setResizable(false); setTitle("修改信息"); setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); setBounds(100, 100, 450, 470); setLocationRelativeTo(null); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(new BoxLayout(contentPane, BoxLayout.Y_AXIS)); JPanel panel = new JPanel(); contentPane.add(panel); panel.setLayout(null); JLabel lblNewLabel = new JLabel("请输入要修改的学生的学号:"); lblNewLabel.setFont(new Font("宋体", Font.PLAIN, 16)); lblNewLabel.setBounds(71, 0, 208, 29); panel.add(lblNewLabel); JLabel lblNewLabel_1 = new JLabel("学号:"); lblNewLabel_1.setFont(new Font("宋体", Font.PLAIN, 16)); lblNewLabel_1.setBounds(71, 105, 50, 30); panel.add(lblNewLabel_1); idField = new JTextField(); idField.setEditable(false); idField.setBounds(143, 99, 240, 45); panel.add(idField); idField.setColumns(10); JLabel lblNewLabel_1_1 = new JLabel("姓名:"); lblNewLabel_1_1.setFont(new Font("宋体", Font.PLAIN, 16)); lblNewLabel_1_1.setBounds(71, 160, 50, 30); panel.add(lblNewLabel_1_1); nameField = new JTextField(); nameField.setColumns(10); nameField.setBounds(143, 154, 240, 45); panel.add(nameField); JLabel lblNewLabel_1_1_1 = new JLabel("性别:"); lblNewLabel_1_1_1.setFont(new Font("宋体", Font.PLAIN, 16)); lblNewLabel_1_1_1.setBounds(71, 215, 50, 30); panel.add(lblNewLabel_1_1_1); genderField = new JTextField(); genderField.setColumns(10); genderField.setBounds(143, 209, 240, 45); panel.add(genderField); JLabel lblNewLabel_1_1_1_1 = new JLabel("出生日期:"); lblNewLabel_1_1_1_1.setFont(new Font("宋体", Font.PLAIN, 16)); lblNewLabel_1_1_1_1.setBounds(41, 270, 80, 30); panel.add(lblNewLabel_1_1_1_1); dobField = new JTextField(); dobField.setColumns(10); dobField.setBounds(143, 264, 240, 45); panel.add(dobField); JLabel lblNewLabel_1_1_1_2 = new JLabel("班级:"); lblNewLabel_1_1_1_2.setFont(new Font("宋体", Font.PLAIN, 16)); lblNewLabel_1_1_1_2.setBounds(71, 325, 50, 30); panel.add(lblNewLabel_1_1_1_2); batchField = new JTextField(); batchField.setColumns(10); batchField.setBounds(143, 319, 240, 45); panel.add(batchField); JButton changeButton = new JButton("修改"); changeButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { int id = Integer.parseInt(searchField.getText()); String nameString = nameField.getText(); String gendeString = genderField.getText(); String dobString = dobField.getText(); int batch = Integer.parseInt(batchField.getText()); SQLHelp sqlHelp = new SQLHelp(); try { sqlHelp.changeStudent(id, nameString, gendeString, dobString, batch); JOptionPane.showMessageDialog(ChangeFrame.this, "修改成功!"); } catch (SQLException e) { JOptionPane.showMessageDialog(ChangeFrame.this, "修改失败!"); e.printStackTrace(); } } }); changeButton.setFont(new Font("宋体", Font.PLAIN, 18)); changeButton.setBounds(182, 389, 97, 33); panel.add(changeButton); searchField = new JTextField(); searchField.setBounds(71, 39, 208, 45); panel.add(searchField); searchField.setColumns(10); JButton searchButton = new JButton("查找"); searchButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e){ int id = Integer.parseInt(searchField.getText()); try { SQLHelp sqlHelp = new SQLHelp(); Student student = sqlHelp.queryStudent(id); if(student != null) { // id 是直接读入的,所以就不需要从数据库中读出了 idField.setText(String.valueOf(id)); nameField.setText(student.getName()); genderField.setText(student.getGender()); dobField.setText(student.getDob()); batchField.setText(String.valueOf(student.getBatch())); } else { JOptionPane.showMessageDialog(ChangeFrame.this, "无此用户"); } } catch (SQLException e1) { e1.printStackTrace(); } } }); searchButton.setFont(new Font("宋体", Font.PLAIN, 18)); searchButton.setBounds(289, 42, 97, 39); panel.add(searchButton); } }
(5)查找界面
package studentManage; import java.awt.EventQueue; import java.awt.Font; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.sql.SQLException; import javax.swing.BoxLayout; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JTextField; import javax.swing.border.EmptyBorder; public class QueryFrame extends JFrame { private JPanel contentPane; private JTextField idField; private JTextField nameField; private JTextField genderField; private JTextField dobField; private JTextField batchField; private JTextField searchField; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { QueryFrame frame = new QueryFrame(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public QueryFrame() { setResizable(false); setTitle("查询信息"); setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); setBounds(100, 100, 450, 470); setLocationRelativeTo(null); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); contentPane.setLayout(new BoxLayout(contentPane, BoxLayout.Y_AXIS)); JPanel panel = new JPanel(); contentPane.add(panel); panel.setLayout(null); JLabel lblNewLabel = new JLabel("请输入要查找的学生的学号:"); lblNewLabel.setFont(new Font("宋体", Font.PLAIN, 16)); lblNewLabel.setBounds(71, 0, 208, 29); panel.add(lblNewLabel); JLabel lblNewLabel_1 = new JLabel("学号:"); lblNewLabel_1.setFont(new Font("宋体", Font.PLAIN, 16)); lblNewLabel_1.setBounds(71, 105, 50, 30); panel.add(lblNewLabel_1); idField = new JTextField(); idField.setEditable(false); idField.setBounds(143, 99, 240, 45); panel.add(idField); idField.setColumns(10); JLabel lblNewLabel_1_1 = new JLabel("姓名:"); lblNewLabel_1_1.setFont(new Font("宋体", Font.PLAIN, 16)); lblNewLabel_1_1.setBounds(71, 160, 50, 30); panel.add(lblNewLabel_1_1); nameField = new JTextField(); nameField.setColumns(10); nameField.setBounds(143, 154, 240, 45); panel.add(nameField); JLabel lblNewLabel_1_1_1 = new JLabel("性别:"); lblNewLabel_1_1_1.setFont(new Font("宋体", Font.PLAIN, 16)); lblNewLabel_1_1_1.setBounds(71, 215, 50, 30); panel.add(lblNewLabel_1_1_1); genderField = new JTextField(); genderField.setColumns(10); genderField.setBounds(143, 209, 240, 45); panel.add(genderField); JLabel lblNewLabel_1_1_1_1 = new JLabel("出生日期:"); lblNewLabel_1_1_1_1.setFont(new Font("宋体", Font.PLAIN, 16)); lblNewLabel_1_1_1_1.setBounds(41, 270, 80, 30); panel.add(lblNewLabel_1_1_1_1); dobField = new JTextField(); dobField.setColumns(10); dobField.setBounds(143, 264, 240, 45); panel.add(dobField); JLabel lblNewLabel_1_1_1_2 = new JLabel("班级:"); lblNewLabel_1_1_1_2.setFont(new Font("宋体", Font.PLAIN, 16)); lblNewLabel_1_1_1_2.setBounds(71, 325, 50, 30); panel.add(lblNewLabel_1_1_1_2); batchField = new JTextField(); batchField.setColumns(10); batchField.setBounds(143, 319, 240, 45); panel.add(batchField); searchField = new JTextField(); searchField.setBounds(71, 39, 208, 45); panel.add(searchField); searchField.setColumns(10); JButton searchButton = new JButton("查找"); searchButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { // 1.读出要查询的学生输入的id // 因为学生的学号是唯一的,所以我们根据学号查询后,只会有一条数据 // 转化一下数据类型 int id = Integer.parseInt(searchField.getText()); // 2.执行JDBC语句 try { SQLHelp sqlHelp = new SQLHelp(); Student student = sqlHelp.queryStudent(id); // 3.将查询结果填到文本框中 // 前提是学生存在 if(student != null) { idField.setText(String.valueOf(id)); nameField.setText(student.getName()); genderField.setText(student.getGender()); dobField.setText(student.getDob()); batchField.setText(String.valueOf(student.getBatch())); } else { // 此时学生不存在,提示用户,不存在该学生 JOptionPane.showMessageDialog(QueryFrame.this, "无此学生"); } } catch (SQLException e) { e.printStackTrace(); } } }); searchButton.setFont(new Font("宋体", Font.PLAIN, 18)); searchButton.setBounds(289, 42, 97, 39); panel.add(searchButton); } }
(6)数据库链接
package studentManage; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; public class SQLHelp { public static final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver"; public static final String DB_URL = "jdbc:mysql://localhost:3306/niit?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC"; public static final String username = "root"; public static final String password = "123456"; private Connection connection = null; private PreparedStatement pStatement = null; private ResultSet rSet = null; // 加载驱动 // 静态初始化块(只执行一次) static { try { Class.forName(JDBC_DRIVER); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } } // 链接数据库 public void connectDB() { try { connection = DriverManager.getConnection(DB_URL,username,password); System.out.println("数据库链接成功"); } catch (SQLException e) { System.out.println("数据库链接失败"); e.printStackTrace(); } } // 关闭资源 public void close() { if(rSet != null) { try { rSet.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } if(pStatement != null) { try { pStatement.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } if(connection != null) { try { connection.close(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } public void addStudent(int id, String nameString, String genderString, String dobString, int batch) throws SQLException { // try finally 无论是否抛出异常都将执行 finally 中的语句 try { // 先链接到数据库 connectDB(); // sql 语句 // 静态 sql 语句需要进行字符串拼接 // 动态 sql 语句 String addsql = "insert into student values(?, ?, ?, ?, ?)"; pStatement = connection.prepareStatement(addsql); pStatement.setInt(1, id); pStatement.setString(2, nameString); pStatement.setString(3, genderString); pStatement.setString(4, dobString); pStatement.setInt(5, batch); pStatement.executeUpdate(); } finally { close(); } } public void changeStudent(int id, String nameString, String genderString, String dobString, int batch) throws SQLException { try { connectDB(); String changesql = "update student set name = ?, gender = ?, dob = ?, batch = ? where id = ?"; pStatement = connection.prepareStatement(changesql); pStatement.setString(1, nameString); pStatement.setString(2, genderString); pStatement.setString(3, dobString); pStatement.setInt(4, batch); pStatement.setInt(5, id); pStatement.executeUpdate(); } finally { close(); } } public void deletestudent(int id) throws SQLException { try { connectDB(); String deleteString = "select * from student where id = ?"; pStatement = connection.prepareStatement(deleteString); pStatement.setInt(1, id); pStatement.execute(); } finally { close(); } } public Student queryStudent(int id) throws SQLException { try { connectDB(); String querysql = "select * from student where id = ?"; pStatement = connection.prepareStatement(querysql); pStatement.setInt(1, id); // 三种方法执行 // execute() 都可以使用,返回true或false // executeQuery() 专门用于查询,返回结果集 // executeUpdate() 专门用于删除、更新 rSet = pStatement.executeQuery(); if(rSet.next()) { String nameString = rSet.getString(2); String genderString = rSet.getString(3); String dobString = rSet.getString(4); int batchString = rSet.getInt(5); // 查询到学生信息返回结果集 return new Student(nameString, genderString, dobString, batchString); } else { // 没有查询到学生信息,返回null return null; } } finally { close(); } } }
package studentManage; public class Student { private String name; private String gender; private String dob; private int batch; public Student(String name, String gender, String dob, int batch) { this.name = name; this.gender = gender; this.dob = dob; this.batch = batch; } public String getName() { return name; } public String getGender() { return gender; } public String getDob() { return dob; } public int getBatch() { return batch; } }
package studentManage; import java.sql.*; public class JDBC{ public static void main(String[] args) throws Exception { try { // 注册 JDBC 驱动 Class.forName("com.mysql.cj.jdbc.Driver"); // 打开链接 Connection conn = DriverManager.getConnection("jdbc:conn-local://localhost:3306/text?useSSL=false&serverTimezone=UTC", "SQ", "109036"); // 执行查询 Statement stmt = conn.createStatement(); String sql = "SELECT id, name, url FROM text"; ResultSet rs = stmt.executeQuery(sql); // 展开结果集数据库 while (rs.next()) { // 通过字段检索 int id = rs.getInt("id"); String name = rs.getString("name"); String url = rs.getString("url"); // 输出数据 System.out.print("ID: " + id); System.out.print(" NAME " + name); System.out.print(" URL: " + url); System.out.print("\n"); } // 释放资源 rs.close(); stmt.close(); conn.close(); } catch (ClassNotFoundException e) { e.printStackTrace(); } } }
添加Java驱动包,在官方网站下载mysql-connector-java-8.0.27,根据自己版本下载
3. 数据库链接成功,完成项目的简单操作
-
学生信息管理系统 java 数据库 学生 信息管理系统
2010-09-30 08:52:43本系统是一个学生管理系统,主要应用于大学的学生管理。由于对系统的分析可能不够全面,只能是模拟一下学生管理系统。每个学生都有一个学号,且没有相同的,所以可以以学号为帐号,这样,同学们就可以自行登陆学生... -
基于Javaweb的学生信息管理系统。数据库为SQL server
2018-08-28 16:11:44基于Javaweb的一个学生信息管理系统。数据库为SQL server 主要用到的技术: jsp JDBC servlet -
创建学生数据库
2021-10-06 17:38:19一、上机内容 按顺序将操作过程中使用的命令及对应...3.在studentsdb数据库创建数据表student_info、curriculum、grade,三个表的数据结构如表1-表3所示。分别保存命令,分别查看结果。 表一 CREATE TABLE student_i -
学生信息管理(数据库版完整)
2015-07-12 13:08:19一个简单的Java学生信息管理(数据库版完整) -
学生成绩管理系统(数据库课程设计)
2018-08-01 17:43:14要求系统可以存储学生基本信息,和课程基本信息,学生选课情况以及课程得分(考试后进行补录)。课程有必修,选修和公选不同类型。各学院学生只能选修该专业的选修课。公选课可以大范围选修。且补考,重新成绩要单独... -
数据库课设之学生信息管理系统
2019-07-13 17:31:10数据库课设之学生信息管理系统 一、系统需求分析 学校每年都有新生入学、老生毕业,还有其他各种人事变动。如何有效地管理这些学生 的信息,帮助学校和老师掌握学生的情况,这就是学生信息管理系统需要完成的功能。 ... -
Eclipse连接Mysql数据库学生信息管理系统
2013-03-19 17:11:05Eclipse连接Mysql数据库学生信息管理系统 -
数据库课程设计——学生选课信息管理系统(MySQL+Java)
2017-11-26 16:45:08分为三类用户角色学生用户:修改个人信息、课程...管理员用户:学生管理、教师管理、课程管理、选课管理、成绩管理、院系设置、奖惩信息管理、管理员操作 用的java+MySQL数据库,cs架构。附带设计报告,建表合理规范。