【数据库MySQL】数据库网上书店管理系统

网上书店管理系统

1.创建数据库和数据表

USE [MASTER]
GO

IF EXISTS(SELECT * FROM SYSDATABASES WHERE NAME='BOOKSTORE')
DROP DATABASE BOOKDTORE;
GO

CREATE DATABASE BOOKSTORE

ON PRIMARY
(
NAME='BOOKSTORE_DATA',
FILENAME='D:BOOKSTORE_DATA.MDF',
SIZE=5MB,
MAXSIZE=100MB,
FILEGROWTH=20%
)
LOG ON
(
NAME='BOOKSTORE_LOG',
FILENAME='D:BOOKSTORE_LOG.LDF',
SIZE=3MB,
FILEGROWTH=1MB
)
GO

USE BOOKSTORE

CREATE TABLE MANAGER(
MANAGERID INT PRIMARY KEY,
PHONE VARCHAR(11) NOT NULL,
PASSWORD VARCHAR(50) NOT NULL
);
CREATE TABLE WARE(
BOOKID VARCHAR(50) NOT NULL,
WARENUM INT NOT NULL,
WAREAD VARCHAR(50) NOT  NULL,
WAREID VARCHAR(10) PRIMARY KEY NOT NULL
);
CREATE TABLE EXPRESS(
ORDERID INT NOT NULL,
EXPRESSID VARCHAR(20) PRIMARY KEY NOT NULL,
EXPRESSCP VARCHAR(10) NOT NULL
);
CREATE TABLE USERINFO(
USERID VARCHAR(10) PRIMARY KEY,
PASSWORD VARCHAR(50) NOT NULL,
USERNAME VARCHAR(4) NOT NULL,
ADDRESS VARCHAR(100) NOT NULL,
PHONE VARCHAR(11) NOT NULL
);
CREATE TABLE CATE(
CATEID INT IDENTITY(1,1) NOT NULL,
CATEINFO VARCHAR(50) NOT NULL,
CATENAME VARCHAR(50) NOT NULL,
PRIMARY KEY(CATEID)
);
CREATE TABLE BOOK(
BOOKID VARCHAR(50) PRIMARY KEY NOT NULL,
WRITER VARCHAR(50) NOT NULL,
PRESS VARCHAR(50) NOT NULL,
PUBTIME DATETIME NOT NULL,
PUBNUM INT NOT NULL,
VERSION VARCHAR(50) NOT NULL,
PAGES INT NOT NULL,
BOOKINTRO VARCHAR(100),
PROINTRO VARCHAR(100),
CATEID INT NOT NULL,
PRICE FLOAT NOT NULL,
BOOKNAME VARCHAR(10) NOT NULL,
FOREIGN KEY(CATEID) REFERENCES CATE(CATEID) ON DELETE NO ACTION ON UPDATE CASCADE,
);
CREATE TABLE ORDERINFO(
ORDERID INT IDENTITY(1,1) PRIMARY KEY NOT NULL,
ORDERTIME DATETIME NOT NULL,
USERID VARCHAR(10) NOT NULL,
BOOKID VARCHAR(50) NOT NULL,
QUANTITY INT DEFAULT 1,
SENDTIME DATETIME NOT NULL,
STATE VARCHAR(10) CHECK(STATE IN('等待','执行','完成')),
FOREIGN KEY(USERID) REFERENCES USERINFO(USERID) ON DELETE NO ACTION ON UPDATE CASCADE,
FOREIGN KEY(BOOKID) REFERENCES BOOK(BOOKID) ON DELETE NO ACTION ON UPDATE CASCADE,
);

2.视图创建

CREATE VIEW ORDERSITEMPRICE
AS
SELECT USERINFO.USERID AS 用户名,BOOK.BOOKNAME AS 图书名称,BOOK.PRICE AS 单价,ORDERINFO.QUANTITY AS 数量,(BOOK.PRICE*ORDERINFO.QUANTITY) AS 合计, ORDERINFO.ORDERTIME AS 时间
FROM USERINFO,ORDERINFO,BOOK
WHERE USERINFO.USERID=ORDERINFO.USERID AND ORDERINFO.BOOKID=BOOK.BOOKID;

3.触发器创建

CREATE TRIGGER TRIG1
ON WARE
FOR UPDATE
AS
IF(UPDATE(WARENUM))
  BEGIN
  DECLARE @BOOKWARE INT
  SET @BOOKWARE=(SELECT WARENUM FROM DELETED)
  IF(@BOOKWARE<0)
  BEGIN
    PRINT '库存不足,库存为空'
    ROLLBACK
END
END

4.存储过程创建

create procedure sp2
@STARTDATE DATE
AS
BEGIN
IF(@STARTDATE IS NULL)
RAISERROR('时间为空',5,5)
ELSE 
SELECT BOOKNAME,COUNT(*) FROM BOOK
WHERE DATEDIFF(DAY,PUBTIME,@STARTDATE)<0
GROUP BY BOOKNAME
END

5.加密过程

CREATE MASTER KEY ENCRYPTION BY PASSWORD ='passW@ord'
GO
CREATE CERTIFICATE TestCert with SUBJECT = 'Test Certificate'
GO
CREATE SYMMETRIC KEY TestSymmetric WITH ALGORITHM = AES_256
ENCRYPTION BY CERTIFICATE TestCert 
GO
借书------根据您提供的图书条形码和图书编号确认图书,再据读者的编号确认读者后把此书借给这位读者。 还书------根据您提供的图书条形码和图书编号确认图书,再据读者的编号确认读者后把此书归还。 图书管理------对所有图书的资料进行添加,修改和删除等操作。 读者管理------对所有读者的资料进行添加,修改和删除等操作。 查询------所有图书、不在馆图书,今天借出图书、今日归还图书、今日新进图书和有条件查询。 统计------图书基础状况统计排名。 管理员------在这里修改管理员的登录密码。 1.4 需求分析 1.4.1 软件需求 管理员可以维护客户注册信息、维护图书信息、处订定单信息、 网上售书、查看图书调查报告;。本系统的设计目标将最终定位于完成以上所述的系统主要业务的基本模型上。  开发意图:面对网购越来越走红的趋势,结合广大书迷对于购书的需求,特意推出书店的网络版,以满足广大购书者能够实现足不出户就购买到所需图书的意愿。  作用范围:本网上书店系统暂时面向单机使用,有机会将会架设在公用网络上,以满足广大网民新形势下对于买书的需求。  《网上书店管理系统》正是基于这种市场潜力,面向全国中小型图书销售商而开发的,力争为全国的中小型书店提供一款功能完善、界面友好、性能可靠的网上销售系统。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值