Microsoft-pubs(图书馆管理系统)-数据库设计
ylbtech-DatabaseDesgin:微软提供-pubs(图书馆管理系统)-数据库设计 |
1.A,数据库关系图 |
1.B,数据库设计脚本 |
-- =============================================
-- zhen:模仿pubs库 《图书馆库》
-- 12:51 2011/12/7
-- ylb, tech
-- 感谢贡献者:lgz
-- =============================================
USE master
GO -- Drop the database if it already exists
IF EXISTS (
SELECT name
FROM sysdatabases
WHERE name = N'fpubs'
)
DROP DATABASE fpubs
GO CREATE DATABASE fpubs
GO
use fpubs
go
-- =============================================
-- zhen:1,图书表
-- =============================================
create table titles
(
title_id varchar(6) primary key , --编号【PK】
title varchar(80) not null, --标题
[type] char(12) default('undecided') not null, --类型
pub_id char(4) null, --出版社编号【FK】
price money null, --单价 advance money null, --预付款
royalty int null,
ytd_se int null,
notes varchar(200) null, --备注
pubdate datetime default(getdate()) not null --上架日期
)
go
-- =============================================
-- zhen:2,作者表
-- =============================================
create table authors
(
au_id varchar(11) primary key check([au_id] like '[0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9][0-9][0-9]'), --编号【pk】
au_iname varchar(40) not null, --姓
au_fname varchar(20) not null, --名
phone char(12) default'(未知的)' not null, -- 手机号码
address varchar(40), --地址 city varchar(20), --城市
[state] char(5), --洲
zip char(5) check([zip] like '[0-9][0-9][0-9][0-9][0-9]'), --邮编
[contract] bit --是否在签约中;0;不在;1:在。
)
-- =============================================
-- zhen:3,图书-作者表
-- =============================================
create table titleauthor
(
au_id varchar(11) foreign key references authors(au_id), --作者编号[FK]
title_id varchar(6) foreign key references titles(title_id), --图书编号[FK]
au_ord tinyint null, --
royaltyper int null,
primary key(au_id,title_id) --设置联合主键[PK]
)
--drop table titleauthor
go -- =============================================
-- zhen:4,storesn. 贮藏;备用品;商店(store的复数)v. 储存;供应;容纳(store的三单形式)
-- =============================================
create table stores
(
stor_id char(4) primary key not null, --商店编号[PK]
stor_name varchar(40) null, --商店名称
stor_address varchar(40) null, --商店地址
city varchar(20) null, --所在城市
state char(2) null, --所在州 zip char(5) null --邮编
)
-- =============================================
-- zhen:5,discounts优惠,折价
-- =============================================
create table discounts
(
discounttype varchar(40) not null, --折扣类型
stor_id char(4) foreign key references stores(stor_id) , --商店编号[FK]
lowqty smallint null, --数量下限
highqty smallint null, --数量上限
discount decimal(4,2) not null , --折扣
)
--drop table discounts
-- =============================================
-- zhen:6,jobs 工作(job的复数形式)
-- =============================================
create table jobs
(
job_id smallint primary key not null, --工作编号[FK]
job_desc varchar(50) DEFAULT ('New Position - title not formalized yet') not null, --工作描述
min_lvl tinyint CHECK ([min_lvl] >= 10) not null, --
max_lvl tinyint CHECK ([max_lvl] <= 250) not null --
) --drop table jobs -- =============================================
-- zhen:7,publishers--出版社
-- =============================================
create table publishers
(
pub_id char(4) primary key CHECK([pub_id] = '' or ([pub_id] = '' or ([pub_id] = '' or ([pub_id] = '' or [pub_id] = ''))) or [pub_id] like '99[0-9][0-9]'), --出版社编号[PK]
pub_name varchar(40) null, --出版社名称
city varchar(20) null, --所在城市
state char(2) null, --所在州
country varchar(30) DEFAULT ('USA') null --所在国家
)
--drop table publishers -- =============================================
-- zhen:8,pub_info出版社详细
-- =============================================
create table put_info
(
pub_id char(4) primary key not null, --出版社编号[PK]
logo image null, --标志图
pr_info char(4) foreign key references publishers(pub_id) null --出版信息[FK]
)
--drop table put_info -- =============================================
-- zhen:9,employee雇员;从业员工
-- =============================================
create table employee
(
emp_id int primary key CHECK([emp_id] like '[A-Z][A-Z][A-Z][1-9][0-9][0-9][0-9][0-9][FM]' or [emp_id] like '[A-Z]-[A-Z][1-9][0-9][0-9][0-9][0-9][FM]') not null, --职工编号
fname varchar(20) not null, --职工名
minit char(1) null, --
lname varchar(30) not null, --职工姓
job_id smallint DEFAULT(1) foreign key references jobs(job_id) not null, --工作编号[FK] job_lvl tinyint DEFAULT (10) null, --
pub_id char(4) DEFAULT ('') foreign key references publishers(pub_id) not null, --出版社编号[FK]
hire_date datetime DEFAULT (getdate()) not null --工作日期
)
--drop table employee -- =============================================
-- zhen:10,roysched
-- =============================================
--drop table roysched
create table roysched
(
title_id varchar(6) foreign key references titles(title_id), --书编号[FK]
lorange int null, --低
hirange int null, --高
royalty int null --版权
)
-- =============================================
-- zhen:11,salesadj. 销售的,售货的;有关销售的n. 销售额;销售(sale的复数)
-- =============================================
create table sales
(
stor_id char(4) foreign key references stores(stor_id), --商店编号[FK]
ord_num varchar(20), --订单编码
ord_date datetime not null, --订购日期
qty smallint not null, --数量
payyterms varchar(12) not null, --付款方式
title_id varchar(6) foreign key references titles(title_id) not null, --书编号[FK]
primary key (stor_id,ord_num,title_id) --设置联合主键[PK]
)
--drop table sales
-- =============================================
-- zhen:12,usersn. 使用者;受限用户(user的复数)
-- =============================================
create table users
(
uid char(10) primary key not null, --用户名【PK】
uname char(10) not null, --
ups char(10) not null, --
gender char(2) DEFAULT ('男') null, --性别
age int CHECK (([age] >= 15 and [age] <= 80)) null, --年龄 upower char(10) DEFAULT ('Guest') null, --
sex char(2) null --性别
)
--drop table users
--print '创建图书馆库成功!'
1.C,功能实现代码 |
作者:ylbtech 出处:http://ylbtech.cnblogs.com/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 |
Microsoft-pubs(图书馆管理系统)-数据库设计的更多相关文章
- ylbtech-WelfareSystem(福利发放管理系统)-数据库设计
ylbtech-DatabaseDesgin:ylbtech-WelfareSystem(福利发放管理系统)-数据库设计 1.A,数据库关系图(Database Diagram) 1.B,数据库设计脚 ...
- 口罩预约管理系统——数据库设计(前端+PHP+MySQL)
目录 一.背景 二.口罩预约管理系统介绍 三.数据库设计 四.MySQL创建数据库以及数据表 五.数据库设计总结 一.背景 2020年的疫情影响了我们的生产生活,政府不断加大力度联防联控,遏制疫情的蔓 ...
- XXX银行人事管理系统-数据库设计
1. 用户.权限.角色关系用户基本信息 userinfo [人员表]权限表actions[权限表]员工类型表usertype [管理组表]权限映射表actionmapping [权限映射表]权限分栏表 ...
- ASP.NET Core MVC 打造一个简单的图书馆管理系统 (修正版)(二)数据库初始化、基本登录页面以及授权逻辑的建立
前言: 本系列文章主要为我之前所学知识的一次微小的实践,以我学校图书馆管理系统为雏形所作. 本系列文章主要参考资料: 微软文档:https://docs.microsoft.com/zh-cn/asp ...
- ASP.NET Core MVC 打造一个简单的图书馆管理系统 (修正版)(一) 基本模型以及数据库的建立
前言: 本系列文章主要为我之前所学知识的一次微小的实践,以我学校图书馆管理系统为雏形所作. 本系列文章主要参考资料: 微软文档:https://docs.microsoft.com/zh-cn/asp ...
- Net 通用权限管理系统源码 带数据库设计文档,部署说明文档
Net 通用权限管理系统源码 带数据库设计文档,部署说明文档 包括数据库设计文档部署安装文档源码数据库文件 下载地址:http://www.mallhd.com/archives/1389
- Android应用源码图书馆管理系统带服务端数据库
本项目是一套基于安卓的图书馆管理系统,包括jsp服务端源码,安卓客户端源码和mysql数据库.代码比较简单,供学习anroid与j2ee交互.例如Sqlite的使用.安卓客户端与jsp的web服务端的 ...
- ORM框架SQLAlchemy与权限管理系统的数据库设计
SQLAlchemy是Python编程语言下的一款ORM框架,该框架建立在数据库API之上,使用对象关系映射进行数据库操作,即:将对象转换成SQL,然后使用数据API执行SQL并获取执行结果. 执行流 ...
- 图书馆管理系统程序+全套开发文档(系统计划书,系统使用说明,测试报告,UML分析与设计,工作记录)
图书馆管理系统程序+全套开发文档(系统计划书,系统使用说明,测试报告,UML分析与设计,工作记录): https://download.csdn.net/download/qq_39932172/11 ...
随机推荐
- 李洪强iOS开发之最全App上架流程
在上架App之前想要 真机测试的同学 请查看 iOS- 最全的真机测试教程 里面包含怎么让多台电脑同时 上架App和同时真机调试.P12文件的使用详解 准备 开发者账号 完工的项目 上架步骤 一.创建 ...
- Excel操作--使用NPOI导入导出Excel为DataTable
1.ExcelHelper封装 namespace NPOI操作Excel { public class ExcelHelper { /// <summary> /// DataTable ...
- php-resque 任务队列
php-resque License : MIT Source Code Allo点评:php-resque是Ruby项目resque在php下的实现.虽然Gearman也是一个不错的选择,但是res ...
- 自定义View(4)Canvas和Paint常用绘制函数
画布Canvas 在Android下进行2D绘图需要Canvas类的支持,它位于"android.graphics.Canvas"包下,直译过来为画布的意思,用于完成在View上的 ...
- NFC(2)NFC、蓝牙和红外之间的差异
NFC(2)NFC.蓝牙和红外之间的差异表
- Oracle Gateways透明网关访问SQL Server
自己的本机安装了Oracle 12c,公司的平台需要同时支持Oracle与SQL Server,很多时候都有将数据从Oracle同步到SQL Server的需求.通过SQL Server的link S ...
- Codeforces Round #242 (Div. 2) C. Magic Formulas (位异或性质 找规律)
题目 比赛的时候找出规律了,但是找的有点慢了,写代码的时候出了问题,也没交对,还掉分了.... 还是先总结一下位移或的性质吧: 1. 交换律 a ^ b = b ^ a 2. 结合律 (a^b) ^ ...
- 函数lock_rec_get_first
/*********************************************************************//** Gets the first explicit l ...
- 函数xdes_calc_descriptor_page
根据偏移量计算出第几个xdes page 0 %16328 = 0 64% 16328 = 64 128 % 16328 = 128 192 % 16328 = 192 /************** ...
- UVa 11542 (高斯消元 异或方程组) Square
书上分析的太清楚,我都懒得写题解了.=_=|| #include <cstdio> #include <cstring> #include <cmath> #inc ...