学生管理系统数据库设计与实现:案例实战
学生管理系统数据库设计与实现:案例实战
本项目是一个学生管理系统的数据库设计与实现案例,涵盖了数据库设计、创建、维护、备份、检索、操作、存储过程、触发器、安全等多个方面。
1. 数据收集与整理
收集了5条以上的数据,并输入到Excel工作表中。例如:
id name gender birthdate id_number phone email
1003 '本紫' 男 1990-01-01 410211199901011234 521 'sutt@qq.com'
1004 '李兰' 女 1987-12-12 320602198712121234 520 'syt@qq.com'
1005 '易祺瑞' 男 1985-11-11 440308198511111234 519 'sew@qq.com'
1006 '周笑临' 男 1978-12-09 530112197812091234 518 'yut@qq.com'
1007 '余囡' 女 1966-03-30 620402196603301234 517 'yyuyu'yyuyyuy@qq.com'
2. 数据库设计
(1) 概念结构设计: 分析各个实体的数据特征,确定各个实体的属性和实体联系类型,绘制相应的E-R图。
(2) 逻辑结构设计: 将实体和联系转换为关系模式,并对其进行范式分析和优化。
(3) 物理结构设计: 将关系模式转换为关系表,设计各个数据表的结构,确定各个字段的属性,包括字段数据类型、长度、是否为NULL值、主键等属性。
3. 创建数据库
在SQL Server中创建数据库,数据库的命名方式为“DB_本人学号”。
-- 创建数据库代码
CREATE DATABASE DB_本人学号
GO
4. 创建数据表
(1) 根据事先设计的数据表结构,创建5个以上的数据表。
(2) 从Excel文件中导入所有的记录数据。
5. 维护数据的完整性
设置数据库中各个数据表的主键、外键、唯一约束、默认值约束、检查约束和自动编号的标识列等。
6. 数据库备份
对数据库执行一次完整备份,备份设备为“DB_bakDevice”。
7. 检索与操作数据表
使用DML语句完成系统运行涉及的相关增删改查操作。
8. 创建与应用存储过程
使用SQL语言创建3个以上存储过程,并在JAVA代码中对其进行调用。
9. 创建与应用触发器
使用SQL语言创建3个以上触发器,并在程序运行过程中触发使其执行。
10. 数据库安全
(1) 在SQL Server中创建SQL Server身份验证的登录名“SQLUser01”,密码为“abc@123”。
(2) 创建SQL Server身份验证的数据库用户账户“db_user01”,并将其映射到登录名“SQLUser01”。
(3) 创建自定义角色“role01”,将数据库用户“db_user01”添加为该自定义角色的成员,并为该角色授予相应的权限。
(4) 从角色“role1”收回部分权限。
11. 总结与说明
本项目是一个学生管理系统的数据库设计与实现案例,旨在帮助读者更深入地了解数据库的概念,掌握数据库设计、创建、维护与备份等基本操作,以及使用存储过程和触发器等高级功能,并了解如何保障数据库的安全性。
代码示例:
-- 创建存储过程示例
CREATE PROCEDURE sp_InsertStudent
@name VARCHAR(50),
@gender VARCHAR(10),
@birthdate DATE,
@id_number VARCHAR(18),
@phone VARCHAR(20),
@email VARCHAR(50)
AS
BEGIN
INSERT INTO Student (name, gender, birthdate, id_number, phone, email)
VALUES (@name, @gender, @birthdate, @id_number, @phone, @email)
END
GO
截图展示:
[插入相关截图,例如E-R图、数据表结构、备份操作截图、存储过程调用结果、触发器测试结果等]
后续学习方向:
- 学习更多数据库设计规范和最佳实践。
- 探索其他数据库管理系统,例如MySQL、PostgreSQL等。
- 学习数据库性能优化技巧。
- 学习数据库安全漏洞和防御措施。
原文地址: https://www.cveoy.top/t/topic/oAWX 著作权归作者所有。请勿转载和采集!