⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 系统源脚本文件.sql

📁 本网站是一个库存管理系统
💻 SQL
字号:
USE MASTER /* 系统主数据库 */
GO

CREATE DATABASE Stock collate Chinese_PRC_CS_AI_WS /* 创建数据库Stock */
GO

USE Stock
GO

CREATE TABLE Users /* 创建用户信息表 */
(
  UserName  	varchar(40) collate Chinese_PRC_CS_AI_WS PRIMARY KEY, /* 用户名称 */
  Pwd	        varchar(40) collate Chinese_PRC_CS_AI_WS NOT NULL, /* 密码 */
  User_Type  	tinyint NOT NULL /* 用户类型 */
)
GO

INSERT INTO Users Values('Admin', '888888', 1) /* 系统管理人员 */
GO

CREATE TABLE Client /* 创建客户信息表 */
(
  Cid	    int PRIMARY KEY IDENTITY, /* 客户编号 */
  Cname	    varchar(50) collate Chinese_PRC_CS_AI_WS NOT NULL, /* 客户名称 */
  Ctype	    tinyint, /* 客户类型,1-供应商,2-购买商 */
  Contact   varchar(30) collate Chinese_PRC_CS_AI_WS, /* 联系人 */
  Address   varchar(50) collate Chinese_PRC_CS_AI_WS, /* 通信地址 */
  Postcode  varchar(10) collate Chinese_PRC_CS_AI_WS, /* 邮政编码 */
  Phone	    varchar(30) collate Chinese_PRC_CS_AI_WS, /* 联系电话 */
  Fax	    varchar(30) collate Chinese_PRC_CS_AI_WS, /* 传真电话 */
  Memo	    varchar(100) collate Chinese_PRC_CS_AI_WS /* 备注信息 */
)
GO

CREATE TABLE Product /* 创建产品信息表 */
(  
  Pid 		int PRIMARY KEY IDENTITY, /* 产品编号 */
  Pname 	varchar(50) collate Chinese_PRC_CS_AI_WS NOT NULL, /* 产品名称 */
  TypeId	int, /* 产品类型编号 */
  Pstyle	varchar(50) collate Chinese_PRC_CS_AI_WS, /* 产品规格 */
  Punit	        varchar(10) collate Chinese_PRC_CS_AI_WS, /* 计量单位 */
  Pprice	decimal(15, 2), /* 参考价格 */
  Plow	        int, /* 产品数量下限 */
  Phigh	        int, /* 产品数量上限 */
  Valid	        int, /* 有效期 (以天为单位) */
  AlarmDays	int /* 在到达有效期前几天发出警告 */
)
GO

CREATE TABLE Storehouse /* 创建仓库信息表 */
(
  Sid	        int PRIMARY KEY IDENTITY, /* 仓库编号 */
  Sname    	varchar(50) collate Chinese_PRC_CS_AI_WS NOT NULL, /* 仓库名称 */
  Memo      	varchar(100) collate Chinese_PRC_CS_AI_WS /* 备注信息 */
)
GO

CREATE TABLE ProType /* 创建产品类别信息表 */
(
  TypeId     int PRIMARY KEY IDENTITY, /* 产品类别编号 */
  TypeName   varchar(50) collate Chinese_PRC_CS_AI_WS NOT NULL, /* 产品类别名称 */
  UpperId    int /* 上级产品类别 (如果说 UpperId = 0, 则表示此产品类别为一级类别) */
)
GO

CREATE TABLE ProInStore /* 创建产品存储信息表 */
(
  SpId	        int PRIMARY KEY IDENTITY, /* 存储编号 */
  Pid	        int NOT NULL, /* 产品编号 */
  Pprice	decimal(15, 2), /* 产品入库单价 */
  Pnum	        int, /* 产品数量 */
  MakeDate	char(10) collate Chinese_PRC_CS_AI_WS, /* 生产日期 */
  Sid	        int /* 仓库编号 */
)
GO

CREATE TABLE StoreIn /* 创建入库信息表 */
(
  SiType	varchar(20) collate Chinese_PRC_CS_AI_WS, /* 入库操作类型,包括采购入库、生产入库、退货入库、退料入库等 */
  Pid	        int, /* 入库产品编号 */
  MakeDate	char(10) collate Chinese_PRC_CS_AI_WS, /* 生产日期 */
  Pprice	decimal(15,2), /* 入库产品单价 */
  Pnum	        int, /* 入库产品数量 */
  Cid	        int, /* 客户编号 */
  Sid	        int, /* 仓库编号 */
  EmpName	varchar(50) collate Chinese_PRC_CS_AI_WS, /* 经办人 */
  OptDate	char(10) collate Chinese_PRC_CS_AI_WS /* 入库日期 */
)
GO

CREATE TABLE TakeOut /* 创建出库信息表 */
(
  Ttype	        varchar(20) collate Chinese_PRC_CS_AI_WS NOT NULL, /* 出库操作类型,包括销售出库、退货出库、用料出库等 */
  Pid	        int, /* 出库产品编号 */
  Pprice	decimal(15,2), /* 出库产品单价 */
  Pnum	        int, /* 出库产品数量 */
  Cid	        int, /* 客户编号 */
  Sid	        int, /* 仓库编号 */
  EmpName	varchar(50) collate Chinese_PRC_CS_AI_WS, /* 经办人 */
  OptDate	char(20) collate Chinese_PRC_CS_AI_WS /* 出库产品日期 */
)
GO

CREATE TABLE Privilege /* 创建系统权限表 */
(
  UserName         varchar(40) collate Chinese_PRC_CS_AI_WS PRIMARY KEY, /* 用户名称 */
  privClient       bit, /* 客户信息管理权限 */
  privStock        bit, /* 仓库信息管理权限 */
  privProType      bit, /* 产品类别信息管理权限 */
  privProduct      bit, /* 产品信息管理权限 */
  privStockIn      bit, /* 入库操作管理权限 */
  privStockOut     bit, /* 出库操作管理权限 */
  privCheckMan     bit, /* 库存盘点操作管理权限 */
  privBackup       bit, /* 数据库备份操作权限 */
  privRestore      bit /* 数据库恢复操作权限 */
)
GO

CREATE TABLE SysLog /* 创建系统日志表 */
(
  LogId	            bigint PRIMARY KEY IDENTITY, /* 日志编号 */
  LogDate	    char(10) collate Chinese_PRC_CS_AI_WS, /* 事件发生日期 */
  LogTime	    char(10) collate Chinese_PRC_CS_AI_WS, /* 事件发生时间 */
  LogType	    tinyint, /* 事件类型 */
  Title	            varchar(100) collate Chinese_PRC_CS_AI_WS, /* 事件标题 */
  Body		    varchar(500) collate Chinese_PRC_CS_AI_WS, /* 事件内容 */
  UserName	    varchar(40) collate Chinese_PRC_CS_AI_WS /* 操作用户名 */
)
GO

CREATE VIEW dbo.v_StoreIn /* v_StoreIn */
AS
SELECT p.Pid, SUM(i.Pnum) AS SumNum, SUM(i.Pnum * i.Pprice) 
      AS SumPrice
FROM dbo.Product p INNER JOIN
      dbo.StoreIn i ON p.Pid = i.Pid
GROUP BY p.Pid
GO

CREATE VIEW dbo.v_TakeOut /* v_TakeOut */
AS
SELECT p.Pid, SUM(t.Pnum) AS SumNum, SUM(t.Pnum * t.Pprice) 
      AS SumPrice
FROM dbo.Product p INNER JOIN
      dbo.TakeOut t ON p.Pid = t.Pid
GROUP BY p.Pid
GO

CREATE VIEW dbo.Valid /* Valid */
AS
SELECT dbo.ProInStore.SpId AS 库存记录编号, dbo.Product.Pname AS 产品名称, 
      dbo.ProInStore.Pprice AS 产品价格, dbo.ProInStore.Pnum AS 产品数量, 
      dbo.ProInStore.MakeDate AS 生产日期, dbo.Storehouse.Sname AS 仓库名称, 
      ROUND(DATEDIFF(day, DATEADD(day, dbo.Product.Valid, dbo.ProInStore.MakeDate), 
      GETDATE()), 0) AS 距离失效期的天数
FROM dbo.ProInStore INNER JOIN
      dbo.Product ON dbo.ProInStore.Pid = dbo.Product.Pid AND DATEDIFF(day, 
      GETDATE(), dbo.ProInStore.MakeDate) 
      >= dbo.Product.Valid - dbo.Product.AlarmDays INNER JOIN
      dbo.Storehouse ON dbo.ProInStore.Sid = dbo.Storehouse.Sid
GO

CREATE VIEW dbo.v_ProInStore /* v_ProInStore */
AS
SELECT p.Pid, SUM(s.Pnum) AS SumNum
FROM dbo.Product p INNER JOIN
      dbo.ProInStore s ON p.Pid = s.Pid
GROUP BY p.Pid
GO

CREATE VIEW dbo.Total_Num /* Total_Num */
AS
SELECT dbo.ProInStore.Pid, SUM(dbo.ProInStore.Pnum) AS Total
FROM dbo.ProInStore INNER JOIN
      dbo.Product ON dbo.ProInStore.Pid = dbo.Product.Pid
GROUP BY dbo.ProInStore.Pid 
GO

CREATE VIEW dbo.Report2 /* Report2 */
AS
SELECT SiType, Pid, Pprice, Pnum, (Pprice * Pnum) As Amount, Cid, Sid, EmpName, OptDate FROM StoreIn
UNION 
SELECT Ttype, Pid, Pprice, Pnum, (Pprice * Pnum) As Amount, Cid, Sid, EmpName, OptDate FROM TakeOut
GO



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -