进销存数据库表设计

标签: 数据库表 设计 | 发表时间:2014-09-06 23:14 | 作者:zhou363667565
出处:http://www.iteye.com
CREATE TABLE user   /*用户表*/  
(  
  User_Id     varchar(6),  
  User_Pwd    varchar(8) NULL,  
  Again_Pwd   varchar(8) NULL,  
  Bel_Group   varchar(3) NULL,  
  Div_Type    varchar(1) NULL,  
  User_Auth   varchar(1) NULL,  
  Auth_Type   varchar(1) NULL,  
  User_Status varchar(1) NULL,  
  Create_User varchar(6) NULL,  
  Create_Date varchar(7) NULL,  
  Create_Time varchar(6) NULL,  
  Appr_User   varchar(6) NULL,  
  Appr_Date   varchar(7) NULL,  
  Appr_Time   varchar(6) NULL,  
  Pwd_Date    varchar(7) NULL,  
  Err_Count   float NULL,  
  Use_eJCIC   varchar(1) NULL  
) 
 
CREATE TABLE Supplier  /*供应商表*/  
(  
  Supplier_ID     int     IDENTITY(1,1)     NOT NULL, /* 供应商编号 ,主键 */  
  Name            varchar(250)              NOT NULL, /* 供应商名称 */  
  Address         varchar(250)              NOT NULL, /* 地址 */  
  Phone           varchar(25)               NULL,     /* 电话 */  
  Fax             varchar(25)               NULL,     /* 传真 */  
  PostalCode      varchar(10)               NULL,     /* 邮编 */  
  ConstactPerson  varchar(20)               NULL      /* 联系人 */  
 )  
  
CREATE TABLE Customer   /* 客户表*/  
(  
  Customer_ID     int    IDENTITY(1,1)      NOT NULL, /* 客户编号,主键*/  
  Name            varchar(250)              NOT NULL, /* 客户名称 */  
  Address         varchar(250)              NOT NULL, /* 地址 */   
  Phone           varchar(25)               NULL,     /* 电话 */  
  Fax             varchar(25)               NULL,     /* 传真 */  
  PostalCode      varchar(10)               NULL,     /* 邮编 */  
  ConstactPerson  varchar(20)               NULL      /* 联系人 */  
 )   
  
CREATE TABLE Dept      /*部门表*/  
(  
  Dept_ID        int   IDENTITY(1,1)        NOT NULL, /* 部门编号,主键 */  
  Name           varchar(30)                NOT NULL, /* 名称 */  
  Remark           varchar(250)               NOT NULL/* 描述,备注 */   
)  
  
CREATE TABLE Dept_Supplier /*部门--供应商表*/  
(  
  Dept_ID       int                         NOT NULL,  /* 部门编号,主键 ,  外键( 参照 DEPT 表  )*/  
  Supplier_ID   int                         NOT NULL   /* 供应商编号 ,主键,外键( 参照 SUPPLIER 表) */  
)  
  
CREATE TABLE Dept_Customer /*部门--客户表*/  
(  
  Dept_ID       int                         NOT NULL, /* 部门编号,主键 ,  外键( 参照 DEPT 表  )*/  
  Customer_ID   int                         NOT NULL  /* 客户编号,主键,  外键( 参照 SUPPLIER 表) */  
)  
  
CREATE TABLE StoreHouse   /* 仓库表 */  
(  
  StoreHouse_ID   int IDENTITY(1,1)         NOT NULL,  /* 仓库编号,主键 */  
  Address         varchar(250)              NOT NULL,  /* 地址 */  
  Phone           varchar(25)               NULL,      /* 电话 */  
  Employee_ID     INT                       NOT NULL,  /* 仓库保管 ,外键 ( 参照 EMPLOYEE 表 ) */  
  CreateDate      datetime                  NULL       /* 仓库成立时间 */  
)  
  
CREATE TABLE ProductClass  /* 商品总分类表 */  
(  
  ProductClass_ID  int IDENTITY(1,1)        NOT NULL,  /* 商品总分类编号, 主键 */   
  Name             varchar(30)              NOT NULL,  /* 商品分类名称 */  
  Employee_ID      INT                      NOT NULL,  /* 建分类人 ,外键 ( 参照 EMPLOYEE 表 )*/  
  CreateDate       datetime                 NULL,      /* 建分类时间 */  
  Remark           varchar(250)             NULL,    /* 描述,备注 */  
)  
  
CREATE TABLE ProductList  /* 商品细分类表 */  
(  
  ProductClass_ID  INT                      NOT NULL, /* 商品总分类编号, 外键 ( 参照PRODUCTCLASS 表 ) */  
  ProductList_ID   int IDENTITY(1,1)        NOT NULL, /* 商品细分类编号,主键 */  
  Name             varchar(30)              NOT NULL, /* 商品名称 */  
  Employee_ID      INT                      NOT NULL, /* 建分类人,外键 ( 参照 EMPLOYEE 表 )*/  
  CreateDate       datetime                 NULL,     /* 建分类时间 */  
  Remark           varchar(250)             NULL,   /* 描述 ,备注 */  
 )  
  
CREATE TABLE ProductSpec  /* 商品规格表 */  
(  
  ProductSpec_ID   INT IDENTITY(1,1)        NOT NULL, /* 商品规格编号,主键 */  
  Name             varchar(30)              NOT NULL, /* 商品规格名称 */  
  Employee_ID      INT                      NOT NULL, /* 操作员 ,外键 ( 参照 EMPLOYEE 表 )*/  
  CreateDate       datetime                 NULL,     /* 创建时间 */  
  Remark           varchar(250)           NULL    /* 描述,备注 */  
)
  
CREATE TABLE ProductUnit /* 商品计量单位表 */  
(  
  ProductUnit_ID   INT IDENTITY(1,1)        NOT NULL, /* 计量单位编号 ,主键 */  
  Name             varchar(30)              NOT NULL, /* 计量单位名称 */  
  Employee_ID      INT                      NOT NULL, /* 操作员 ,外键 ( 参照 EMPLOYEE 表 )*/  
  CreateDate       datetime                 NULL,     /* 创建时间 */  
  Remark           varchar(250)             NULL      /* 描述,备注 */  
)  
   
CREATE TABLE Product    /* 商品目录表 */  
(  
  ProductList_ID   int                      NOT NULL,  /* 商品细分类编号, 外键 ( 参照 PRODUCTLIST 表 ) */  
  Product_ID       INT IDENTITY(1,1)        NOT NULL,  /* 商品名称编号, 主键 */  
  Name             varchar(30)              NOT NULL,  /* 商品名称 */  
  ProductSpec_ID   INT                      NOT NULL,  /* 商品规格, 外键 ( 参照 PRODUCTSPEC 表 ) */  
  ProductUnit_ID   INT                      NOT NULL,  /* 计量单位, 外键 ( 参照 PRODUCTUNIT 表 ) */  
  Price            MONEY                    NULL,      /* 参考价格 */  
  Employee_ID      INT                      NOT NULL,  /* 操作员,   外键 ( 参照 EMPLOYEE 表 )*/  
  CreateDate       datetime                 NULL,      /* 创建时间 */  
  Remark             varchar(250)             NULL     /* 描述,备注 */  
)  
  
CREATE TABLE Product_Supplier  /* 商品--供应商表 */  
(   
  Product_ID       INT                      NOT NULL,   /* 商品名称编号,主键 , 外键( 参照 PRODUCT 表  )*/  
  Supplier_ID      INT                      NOT NULL    /* 供应商编号 , 主键,  外键( 参照 SUPPLIER 表) */  
)  
  
CREATE TABLE Employee         /* 员工表 */  
(   
  Employee_ID      INT IDENTITY(1,1)        NOT NULL,  /* 员工编号 */  
  Dept_ID          INT                      NOT NULL,  /* 所属部门编号 */  
  Name             varchar(30)              NOT NULL,  /* 姓名 */  
  Duty             varchar(20)              NOT NULL,  /* 职务 */  
  Gender           varchar(6)               NOT NULL,  /* 性别 */  
  BirthDate        datetime                 NOT NULL,  /* 出生日期 */  
  HireDate         datetime                 NULL,      /* 合同签订 日期 */  
  MatureDate       datetime                 NULL,      /* 合同到期日 */  
  IdentityCard     varchar(20)              NULL,      /* 身份证号 */  
  Address          varchar(250)             NULL,      /* 住址 */  
  Phone            varchar(25)              NULL,      /* 电话 */  
  Email            varchar(30)              NULL       /* E_MAIL */  
)  
   
CREATE TABLE BuyOrder         /* 进货合同 */  
(  
  BuyOrder_ID     INT IDENTITY(1,1)        NOT NULL, /* 进货合同编号 , 主键 */  
  WriteDate       datetime                 NOT NULL, /* 合同签订日期  */  
  InsureDate      datetime                 NOT NULL, /* 合同生效日期  */  
  EndDate         datetime                 NOT NULL, /* 合同到期日期  */  
  Dept_ID         INT                      NOT NULL, /* 签订部门, 外键 ( 参照 DEPT 表 ) */  
  Supplier_ID     INT                      NOT NULL, /* 供应商,   外键 ( 参照 SUPPLIER 表 ) */  
  Employee_ID     INT                      NOT NULL  /* 合同主要负责人, 外键 ( 参照 EMPLOYEE 表) */  
)  

CREATE TABLE BuyOrder_Detail  /* 进货合同明细表 */  
(  
  BuyOrder_ID     INT                      NOT NULL,  /* 进货合同编号,主键, 外键 ( 参照 BUYORDER 表 ) */  
  Product_ID      INT                      NOT NULL,  /* 所进商品编号,主键, 外键 (参照 PRODUCT 表 ) */   
  Quantity        INT                      NOT NULL,  /* 商品数量 */  
  Price           money                    NOT NULL   /* 商品进价 */  
)  
  
  
CREATE TABLE EnterStock    /* 入库单表 */  
(  
  EnterStock_ID    INT IDENTITY(1,1)       NOT NULL, /* 入库单编号 , 主键 */  
  EnterDate        datetime                NOT NULL, /* 入库时间 */  
  Dept_ID          INT                     NOT NULL, /* 入库部门 ,外键 ( 参照 DEPT 表 )*/  
  StoreHouse_ID    INT                     NOT NULL, /* 所入仓库 ,外键 ( 参照 STOREHOUSE 表)*/  
  Employee_ID      INT                     NOT NULL  /* 入库人 ,  外键 ( 参照 EMPLOYEE 表)*/  
  /*需添加 仓库保管员如何来验证入库单 ?? */  
)  
  
CREATE TABLE EnterStock_Detail /* 入库单明细 */  
(   
  EnterStock_ID    INT                     NOT NULL, /* 入库单编号 , 主键, 外键 (参照 ENTERSTOCK 表 )*/  
  Product_ID       INT                     NOT NULL, /* 此种商品编号,主键, 外键 (参照 PRODUCT 表 ) */   
  Quantity         int                     NOT NULL, /* 此种商品数量 */  
  Price            money                   NULL,     /* 此种商品参考价格  */  
  HaveInvoice      bit                     not null, /* 此种商品有没有开发票 ( 缺省为 0 , 有没有开票 )*/  
  InvoiceNum       varchar(30)             NULL      /* 发票号 */  
)  
  
  
CREATE TABLE BackStock  /* 退库单表 */  
(  
  BackStock_ID     INT IDENTITY(1,1)       NOT NULL, /* 退库单编号 , 主键 */  
  BackDate         datetime                NOT NULL, /* 退库时间 */  
  Dept_ID          INT                     NOT NULL, /* 退库部门 ,  外键 ( 参照 DEPT 表 )*/  
  StoreHouse_ID    INT                     NOT NULL, /* 所退入仓库 ,外键 ( 参照 STOREHOUSE 表)*/  
  Employee_ID      INT                     NOT NULL, /* 退库人 ,    外键 ( 参照 EMPLOYEE 表)*/  
  Remark           varchar(250)            NULL      /* 退库原因 */  
)  

CREATE TABLE BackStock_Detail /*退库单明细表*/  
(   
  BackStock_ID     INT                     NOT NULL, /* 退库单编号 , 主键, 外键 (参照 BACKSTOCK 表 )*/   
  Product_ID       INT                     NOT NULL, /* 所退商品编号,主键, 外键 (参照 PRODUCT 表 ) */   
  Quantity         int                     NOT NULL, /* 退入数量 */  
  Price            money                   NULL      /* 参考价格 */  
)  
  
CREATE TABLE LeaveStock  /* 出库单表 */  
(  
  LeaveStock_ID    INT IDENTITY(1,1)       NOT NULL,  /* 出库单编号 , 主键, 外键 (参照 LEAVESTOCK 表 )*/  
  LeaveDate        datetime                NOT NULL,  /* 出库时间 */   
  Dept_ID          INT                     NOT NULL,  /* 出库部门 ,  外键 ( 参照 DEPT 表 )*/  
  StoreHouse_ID    INT                     NOT NULL,  /* 所出仓库 ,外键 ( 参照 STOREHOUSE 表)*/  
  ToStoreHouse_ID  INT                     NOT NULL,  /* 所入仓库 ,外键 ( 参照 STOREHOUSE 表)*/  
  Employee_ID      INT                     NOT NULL   /* 出库人 ,    外键 ( 参照 EMPLOYEE 表)*/  
  /* 仓库保管员如何来验证出库单 ?? */  
)  
  
CREATE TABLE LeaveStock_Detail  /* 出库单明细表 */  
(   
  LeaveStock_ID    INT                     NOT NULL,  /* 出库单编号 , 主键, 外键 (参照 BACKSTOCK 表 )*/   
  Product_ID       INT                     NOT NULL,  /* 所出商品编号,主键, 外键 (参照 PRODUCT 表 ) */   
  Quantity         int                     NOT NULL,  /* 出库数量 */  
  Price            money                   NULL       /* 出库价格 */   
)  
  
CREATE TABLE BackSale  /* 退货单表 */  
(  
  BackSale_ID      INT IDENTITY(1,1)       NOT NULL,  /* 退货单编号 , 主键 */  
  BackDate         datetime                NOT NULL,  /* 退货日期  */   
  Dept_ID          INT                     NOT NULL,  /* 退货部门 ,  外键 ( 参照 DEPT 表 )*/  
  StoreHouse_ID    INT                     NOT NULL,  /* 退入仓库 ,  外键 ( 参照 STOREHOUSE 表)*/  
  Employee_ID      INT                     NOT NULL,  /* 退货人 ,    外键 ( 参照 EMPLOYEE 表)*/  
  Remark           varchar(250)            NULL       /* 退货原因 */  
  
)  
CREATE TABLE BackSale_Detail  /*退货单明细表*/  
(   
  BackSale_ID      INT                     NOT NULL,  /* 退货单编号 , 主键, 外键 (参照 BACKSTOCK 表 )*/   
  Product_ID       INT                     NOT NULL,  /* 所退商品编号,主键, 外键 (参照 PRODUCT 表 ) */   
  Quantity         int                     NOT NULL,  /* 退货数量 */  
  Price            money                   NULL       /* 价格 */   
)  
  
  
CREATE TABLE SaleOrder    /*销售合同*/  
(  
  SaleOrder_ID     INT IDENTITY(1,1)       NOT NULL,  /* 合同编号 , 主键 */  
  WriteDate        datetime                NOT NULL,  /* 合同签订日期  */  
  InsureDate       datetime                NOT NULL,  /* 合同生效日期  */  
  EndDate          datetime                NOT NULL,  /* 合同到期日期  */  
  Dept_ID          INT                     NOT NULL,  /* 签订部门, 外键 ( 参照 DEPT 表 ) */  
  Customer_ID      INT                     NOT NULL,  /* 客户编号, 外键 ( 参照 CUSTOMER 表 ) */  
  Employee_ID      INT                     NOT NULL   /* 合同主要负责人, 外键 ( 参照 EMPLOYEE 表) */  
)  

CREATE TABLE SaleOrder_Detail  /* 销售合同明细表 */  
(  
  SaleOrder_ID     INT                     NOT NULL,  /* 销售合同编号,主键, 外键 ( 参照 BUYORDER 表 ) */  
  Product_ID       INT                     NOT NULL,  /* 销售商品编号,主键, 外键 (参照 PRODUCT 表 ) */   
  Quantity         int                     not null,  /* 商品数量 */  
  Price            money                   null       /* 商品进价 */  
)  
  
  
CREATE TABLE Buy     /* 进货表(验货表)*/  
(  
   Buy_ID          INT IDENTITY(1,1)         NOT NULL, /* 进货编号 , 主键 */  
   ComeDate        datetime                  NOT NULL, /* 进货日期 */  
   Dept_ID         INT                       NOT NULL, /* 进货部门, 外键 ( 参照 DEPT 表 ) */   
   Employee_ID     INT                       NOT NULL  /* 验货人,   外键 ( 参照 EMPLOYEE 表)*/  
)  
  
CREATE TABLE Buy_Detail  /*进货表明细(验货表)*/    
(  
  Buy_ID           INT                      NOT NULL, /* 进货编号,主键, 外键 ( 参照 BUY 表 ) */  
  Product_ID       INT                      NOT NULL, /* 商品编号,主键, 外键 ( 参照 PRODUCT 表 ) */   
  BuyOrder_ID      INT                      NULL,     /* 采购合同,  外键 ( 参照 BUYORDER 表 ) */  
  Quantity         int                      not null, /* 数量 */  
  Price            money                    null      /* 价格 */  
  /* BUYORDER_ID 为 NULL 时, 为现金进货 */    
)  
  
CREATE TABLE Sale   /* 销售表*/  
(  
  Sale_ID          INT IDENTITY(1,1)        NOT NULL,  /* 销售 编号  */  
  SaleDate         datetime                 not null,  /* 销售 日期 */  
  Dept_ID          INT                      NOT NULL,  /* 销售部门, 外键 ( 参照 DEPT 表 ) */   
  Employee_ID      INT                      NOT NULL   /* 售货人,   外键 ( 参照 EMPLOYEE 表)*/  
)  
  
CREATE TABLE Sale_Detail  /* 销售明细 ( 验货表 ) */    
(  
  Sale_ID          INT                      NOT NULL,  /* 销售编号,主键, 外键 ( 参照 SALE 表 ) */  
  Product_ID       INT                      NOT NULL,  /* 商品编号,主键, 外键 ( 参照 PRODUCT 表 ) */    
  SaleOrder_ID     INT                      NULL,      /* 销售合同, 外键 ( 参照 SALEORDER 表 ) */  
  Quantity         int                      not null,  /* 数量 */  
  Price            money                    not null,  /* 价格 */  
  Discount         int                      null       /* 折扣 */  
  /* SALEORDER_ID 为 NULL 时, 为现金销售 */  
)  
  
  
CREATE TABLE StockPile  /* 库存表 */  
(   
  StockPile_ID     INT IDENTITY(1,1)        NOT NULL, /* 库存编号 , 主键 */  
  Dept_ID          INT                      NOT NULL, /* 商品所属部门, 外键 ( 参照 DEPT 表 ) */    
  StoreHouse_ID    INT                      NOT NULL, /* 所在仓库,     外键 ( 参照 SOTREHOUSE 表 ) */     
  Product_ID       INT                      NOT NULL, /* 商品编号,     外键 ( 参照 PRODUCT 表 ) */     
  FirstEnterDate   datetime                 not null, /* 此种商品第一次入库时间 */  
  LastLeaveDate    datetime                 null,     /* 此种商品最后一次出库时间 */  
  Quantity         int                      not null, /* 所存数量 */  
  Price            money                    not null  /* 加权价 */  
  /* LASTLEAVEDATE 为NULL 时,此种商品从来没有 卖过 */   
)  

 

 

转至:

http://blog.csdn.net/liaojiafan/article/details/4879178





已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [数据库表 设计] 推荐:

进销存数据库表设计

- - 数据库 - ITeye博客
CREATE TABLE user /*用户表*/ (. CREATE TABLE Supplier /*供应商表*/ (. NOT NULL, /* 供应商编号 ,主键 */. NOT NULL, /* 供应商名称 */. NOT NULL, /* 地址 */. CREATE TABLE Customer /* 客户表*/ (.

常见电商项目的数据库表设计(MySQL版) - 简书

- -
电商常用功能模块的数据库设计. 改进1:第三范式:将依赖传递的列分离出来. 比如:登录名<-用户级别<-级别积分上限,级别积分下限. 改进2:尽量做到冷热数据的分离,减小表的宽度. 用户登录表(customer_login). 用户信息表(customer_inf). 用户级别表(customer_level_inf).

数据库表的拆分

- - 数据库 - ITeye博客
  如果业务系统对时效性较高,比如新闻发布系统的文章表,可以把数据库设计成时间结构,按时间分有几种结构:.   用年来分还是用月可自定,但用日期的话表就太多了,也没这必要.   这种分法,其难处在于,假设我要列20条数据,结果这三张表里都有2条,那么业务上很有可能要求读三次表. 如果时间长了,有几十张表,而每张表是0条,那不就是要读完整个系统的表才行么?另外这个结构,要作分页是比较难实现的.

数据库、表切分

- - 数据库 - ITeye博客
SQL Server数据库大型应用解决方案总结. 数据库的垂直划分和水平划分(注意评论). 通过某种特定的条件, 将存放在同一个数据库中的数据分散存放到多个数据库上,实现分布存储,通过路由规则路由访问特定的数据库, 这样一来每次访问面对的就不是单台服务器了,而是N台服务器,这样就可以 降低单台机器的负载压力.

开源网站分析软件Piwik的数据库表结构

- sun - 标点符
Piwik是一套基于Php+MySQL技术构建,能够与Google Analytics相媲美的开源网站访问统计系统,前身是phpMyVisites. Piwik可以给你详细的统计信息,比如网页浏览人数, 访问最多的页面, 搜索引擎关键词等等,并且采用了大量的AJAX/Flash技术,使得在操作上更加便易.

PostgreSQL数据库、表空间、角色及用户

- - 数据库 - ITeye博客
转自:http://blog.chinaunix.net/uid-354915-id-3499975.html. 1、通过pgAdmin创建数据库TestDb1:. 打开数据库TestDb1看到建库脚本:. 在目录——PostgreSQL(pg_catalog)——数据表——pg_database中可以查看多了一个数据库TestDb1:.

java调用kettle api 操作日志写入到数据库表

- - 开源软件 - ITeye博客
//将step日志数据库配置名加入到变量集中. //StepLogTable使用的数据库连接名(上面配置的变量名). //设置Step日志的表名. //设置TransMeta的StepLogTable. 已有 0 人发表留言,猛击->> 这里<<-参与讨论. —软件人才免语言低担保 赴美带薪读研.

数据库表为什么不可以只设置一个主键,一个text类型,序列化存储对象,这难道不跟nosql差不多了?

- - 知乎热榜
啊……这个……看着一群人见山不是山的一阵胡扯,不由得有些尴尬……. 首先,明确回答题主的问题:在你面对的工程问题面前,你的想法完全可行. 但是,这个世界上,是有很多完全不同的问题的……. 想说清楚这个,我就得从头开始科普了. 关系型数据库背后是所谓的“关系代数”. 这个东西意思嘛……大致来说是这样的:对于一组二维表格格式的数据,在上面可以做的基本操作只有四种,也就是并、交、差、笛卡尔积,其它运算都可以通过基本运算的组合得到.

为了设计而设计

- - 幻风阁|kent.zhu'sBlog
我有个习惯,每天晚上睡前会搜罗一遍最新的App用用. 最开始的时候ios的App还相对比较朴实,强调功能的实用性,后来不知何故吹起一阵ios的App必须足够精美的怪风. 于是乎,各类App纷纷上演换装游戏,一个比一个做的精美,即使是一个很工具性的应用也把自己浓妆艳抹的往坐台小姐的风格搞……. 上周末跟Tony和Angela在下厨房喝茶闲聊,我说目前的移动产品设计可以分为2类,一类是做给用户用的,一类是做给设计师们欣赏与收藏的.