图书管理系统SQL数据库的设计思路及示例
Admin 2021-04-10 群英技术资讯 1210 次浏览
这篇文章主要介绍SQL图书管理系统数据库的设计,会通过数据分析,实体图,E-R图,数据表关系图以及SQL代码的步骤来介绍数据库的设计,对大家学习有一定的帮助,感兴趣的朋友就继续往下看吧。
首先,在写数据库时需要遵循以下几个原则:
数据库的命名规范:
方便代码的交流和维护
不影响代码的效率,不与大众习惯冲突
使代码更美观,阅读更方便
使代码的逻辑更清晰,更易于理解
术语的定义:
Pascal方法:将标识符的首字母和后面连接的每个单词的首字母都大写 ,可以对三字母或更多的字符的标识符使用。例如:BackColor
Camel方法:标识符的首字母小写,而后面连接的单词首字母都大写。例如:backColor
基本原则:
以大小写敏感编写SQL语句
尽量使用Unicode数据类型
优先使用参数化SQL查询代替拼接SQL查询
禁止使用拼音+英语的方式来命名SQL对象或变量
尽量使用存储过程代替SQL语句
大写t-sql语言的所有关键字,谓词和系统函数
其次:
对数据库进行分析
1.分析数据库,根据图书管理系统的需求分析,列出表
图书类别:主要包括图书的编号,类别名称等
图书基本信息:主要包括图书编号,图书名称,类别编号等
读者类别:主要包括类别编号,类别名称,借书最大量等
读者基本信息:主要包括读者编号,读者姓名,性别,住址,读者类别
借阅表:主要包括记录编号,读者编号,图书编号,借出日期,还入日期。
2。根据分析的数据库画出实体图
图书类别:
图书基本信息:
读者类别:
读者基本信息:
借阅表:
3.画出数据库E-R图
4.数据表关系图:
5.根据需求,给出数据字典
6.对数据库进行增、删、改、查相关操作,编写sql脚本实现。
CREATE DATABASE BMS IF OBJECT_ID(N't_booktype',N'U') IS NOT NULL DROP TABLE t_booktype CREATE TABLE t_booktype( typeno int primary key not null, typename varchar(30) not null ) IF OBJECT_ID(N't_books',N'U') IS NOT NULL DROP TABLE t_books CREATE TABLE t_books( bookno int primary key not null, bookname varchar(30) not null, typeno int not null ) IF OBJECT_ID(N't_readertype',N'U') IS NOT NULL DROP TABLE t_readertype CREATE TABLE t_readertype( readertypeno int primary key not null, readername varchar(30) not null, lendnumber int not null ) IF OBJECT_ID(N't_readerinfo',N'U') IS NOT NULL DROP TABLE t_readerinfo CREATE TABLE t_readerinfo( readerno int primary key not null, readername varchar(30) not null, readeraddress varchar(30) not null, readertypeno int not null ) IF OBJECT_ID(N't_lendbook',N'U') IS NOT NULL DROP TABLE t_lendbook CREATE TABLE t_lendbook( recordno int primary key not null, readerno int not null, bookno int not null, lendtime datetime , returntime datetime ) INSERT INTO t_booktype VALUES('1005','悬疑类') INSERT INTO t_books VALUES('1025','盗墓笔记','1005') INSERT INTO t_readertype VALUES('0005','黄秋萍',20) INSERT INTO t_readerinfo VALUES('0005','黄秋萍','南昌市','0005') INSERT INTO t_lendbook VALUES('0005','0002','1013','2004-07-28','2004-11-16') SELECT * FROM t_books UPDATE t_books SET bookname='深入理解计算机系统' WHERE bookno='1001' UPDATE t_readertype SET readername='吴娇' WHERE readertypeno='0001' SELECT * FROM t_readerinfo --查询图书名字 SELECT bookname FROM t_books --查询图书类别 SELECT typename FROM t_booktype --查询名字叫吴娇的借书记录 SELECT t_readerinfo.readername,t_lendbook.lendtime,t_lendbook.returntime FROM t_readerinfo join t_lendbook on t_readerinfo.readerno=t_lendbook.readerno WHERE t_readerinfo.readername='吴娇'
这里仅进行了部分代码的实现。如有哪里不正确望指出!
以上就是对SQL图书管理系统数据库的设计介绍,大家在设计数据库能够根据上述步骤来实现,更多SQL内容大家能够关注其他文章。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
在数据查询中,从2008开始SQLServer提供了一个新的数据类型hierarchyid,专门用来操作层次型数据结构。hierarchyid 类型对层次结构树中有关单个节点的信息进行逻...
本文详细讲解了Sql Server中的数据类型,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
这篇文章主要介绍sql编译与重编,很多朋友对于sql编译与重编可能不是很了解,对此下面小编就给大家来介绍一下sql编译与重编是什么,以及应用和要注意的方面,希望大家阅读完这篇文章能有所收获,接下来跟随小编一起了解看看吧。
SQL NOT NULL 约束怎么理解?在默认的情况下,表的列接受 NULL 值。NOT NULL 约束强制列不接受 NULL 值。NOT NULL 约束强制字段始终包含值。这意味着,如果不向字段添加值,就无法插入新记录或者更新记录。
大部分数据库语句的基本语法是相同的,但具体到的每一种数据库,又有些不一样,例如触发器,DB2和SQL Server两种很大的不同。对数据库触发器DB2和SqlServer有哪些区别感兴趣的朋友一起看看本文吧
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008