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 ...
随机推荐
- 【leetcode】Majority Element (easy)(*^__^*)
Given an array of size n, find the majority element. The majority element is the element that appear ...
- hdu 1376 Octal Fractions
刚开始做这题时,用的是0.75[8]=(7/8+5/64)[10]这个,但是总是WA…………无语了…… 后来看别人的解题报告,知道了另外一个就是0.75[8]=((5/8+7)/8)[10],从低位向 ...
- Thread的第四天学习
线程通信 wait notify synchronized + 同对象 才可 互斥 锁不是放在线程上的,放在共享资源内部的. wait 线程等待 notify 线程唤醒
- java:访问权限
访问权限四大类:权限从大->小 1.public: 公共权限 2.protected: 受保护权限 3.default: 包级别访问权限/默认权限 4.private: 私有权限 以p ...
- Android yyyymmdd转成yyyy-MM-dd格式
//把yyyymmdd转成yyyy-MM-dd格式 public static String formatDate(String str){ SimpleDateFormat sf1 = new Si ...
- Tomcat 管理页面
一.配置刚下载的解压版的apache-tomcat,启动后,通过浏览器访问:http://127.0.0.1:8080/(或者http://localhost:8080)然后点击下图的Server s ...
- KMP算法的C++实现
这个问题阮一峰老师讲的很清楚,链接 这里我只贴一下我的C++实现代码: #include <iostream> #include <cstring> #include < ...
- socklen_t在windows和linux平台下的头文件定义
windows平台下:头文件:#include<ws2tcpip.h> linux平台下:下面两个头文件都有定义:1)#include <sys/socket.h>2)#inc ...
- JUnit单元测试--小试牛刀
单元测试更多的是在开发阶段完成,开发人员每写一个函数的时候都会写相应的单元测试.对于java代码,普遍使用的是jUnit,根据jUnit可以自己相应的开发一套自动化测试框架.这个的前提是要学会juni ...
- linux源码Makefile详解
1.Makefile的作用 (1)决定编译哪些文件 (2)怎样编译这些文件 (3)怎样连接这些文件,最重要的是它们的顺序如何 2.Linux内核Makefile分类 ***************** ...
