进销存中数据库结构发过来(字段要有注解,是作什么用的),要有区域,,区域下还有办事处,用户,权限,财务,最少要符合第三模式,数据冗余越少越好,数据操作速度要快。那位有,请发一份,急需。
只有这么多分了。
多谢了。

解决方案 »

  1.   

    CREATE TABLE AccountPayableDetail (
    PaymentID nvarchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    PurchaseID nvarchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    Balance decimal(18, 0) NOT NULL 
    ) ON PRIMARY
    GO
    CREATE TABLE AccountPayableMaster (
    PaymentID nvarchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    PayDate datetime NOT NULL ,
    SupplierID nvarchar (8) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    PayCansh decimal(18, 0) NOT NULL ,
    PayCheck decimal(18, 0) NOT NULL ,
    NoteNo nvarchar (10) COLLATE Chinese_PRC_CI_AS NULL ,
    DueDate datetime NULL ,
    BankID nvarchar (7) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    AccountNo nvarchar (30) COLLATE Chinese_PRC_CI_AS NULL ,
    Discount decimal(18, 0) NOT NULL ,
    Remittance decimal(18, 0) NOT NULL ,
    Prepaid decimal(18, 0) NOT NULL ,
    Others decimal(18, 0) NOT NULL ,
    PayAmount decimal(18, 0) NOT NULL ,
    TotalBalance decimal(18, 0) NOT NULL 
    ) ON PRIMARY
    GO
    CREATE TABLE AccountReceivableDetail (
    ReceiveID nvarchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    DeliveryID nvarchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    Balance decimal(18, 0) NOT NULL 
    ) ON PRIMARY
    GO
    CREATE TABLE AccountReceivableMaster (
    ReceiveID nvarchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    ReceiveDate datetime NOT NULL ,
    CustomerID nvarchar (8) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    ReceiveCansh decimal(18, 0) NOT NULL ,
    ReceiveCheck decimal(18, 0) NOT NULL ,
    NoteNo nvarchar (10) COLLATE Chinese_PRC_CI_AS NULL ,
    DueDate datetime NULL ,
    BankID nvarchar (7) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    AccountNo nvarchar (30) COLLATE Chinese_PRC_CI_AS NULL ,
    Discount decimal(18, 0) NOT NULL ,
    Remittance decimal(18, 0) NOT NULL ,
    Advance decimal(18, 0) NOT NULL ,
    Others decimal(18, 0) NOT NULL ,
    ReceiveAmount decimal(18, 0) NOT NULL ,
    TotalBalance decimal(18, 0) NOT NULL 
    ) ON PRIMARY
    GO
    CREATE TABLE Bank (
    BankID nvarchar (7) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    BankAttribName nvarchar (12) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    BankName nvarchar (40) COLLATE Chinese_PRC_CI_AS NULL 
    ) ON PRIMARY
    GO
    CREATE TABLE ChangeDetail (
    ChangeID nvarchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    ProductID nvarchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    ChangeQuantity decimal(18, 0) NOT NULL ,
    ChangeAmount decimal(18, 0) NOT NULL 
    ) ON PRIMARY
    GO
    CREATE TABLE ChangeMaster (
    ChangeID nvarchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    ChangeDate datetime NOT NULL ,
    Description nvarchar (40) COLLATE Chinese_PRC_CI_AS NULL 
    ) ON PRIMARY
    GO
    CREATE TABLE Customer (
    CustomerID nvarchar (8) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    CustomerAttribName nvarchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    CustomerName nvarchar (60) COLLATE Chinese_PRC_CI_AS NULL ,
    InvoiceNo nvarchar (8) COLLATE Chinese_PRC_CI_AS NULL ,
    Owner nvarchar (8) COLLATE Chinese_PRC_CI_AS NULL ,
    RocID nvarchar (20) COLLATE Chinese_PRC_CI_AS NULL ,
    ContactMan1 nvarchar (8) COLLATE Chinese_PRC_CI_AS NULL ,
    ContactMan2 nvarchar (8) COLLATE Chinese_PRC_CI_AS NULL ,
    ContactPhone1 nvarchar (20) COLLATE Chinese_PRC_CI_AS NULL ,
    ContactPhone2 nvarchar (20) COLLATE Chinese_PRC_CI_AS NULL ,
    Fax nvarchar (20) COLLATE Chinese_PRC_CI_AS NULL ,
    SalesManID nvarchar (4) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    CustomerAddress nvarchar (50) COLLATE Chinese_PRC_CI_AS NULL ,
    DeliveryAddress nvarchar (50) COLLATE Chinese_PRC_CI_AS NULL ,
    InvoiceAddress nvarchar (50) COLLATE Chinese_PRC_CI_AS NULL ,
    PayDays decimal(18, 0) NOT NULL ,
    CreditLine decimal(18, 0) NOT NULL ,
    CreditBalance decimal(18, 0) NOT NULL ,
    LastDeliveryDate datetime NULL ,
    Advance decimal(18, 0) NOT NULL 
    ) ON PRIMARY
    GO
    CREATE TABLE DeliveryDetail (
    DeliveryID nvarchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    ProductID nvarchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    SalesQuantity decimal(18, 0) NOT NULL ,
    SalesUnitPrice decimal(18, 0) NOT NULL ,
    SalesAmount decimal(18, 0) NOT NULL 
    ) ON PRIMARY
    GO
    CREATE TABLE DeliveryMaster (
    DeliveryID nvarchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    DeliveryDate datetime NOT NULL ,
    CustomerID nvarchar (8) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    SalesManID nvarchar (4) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    DeliveryProperty nvarchar (8) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    DeliveryAddress nvarchar (50) COLLATE Chinese_PRC_CI_AS NULL ,
    InvoiceNo nvarchar (10) COLLATE Chinese_PRC_CI_AS NULL ,
    CustomerOrderNo nvarchar (15) COLLATE Chinese_PRC_CI_AS NULL ,
    SubTotal decimal(18, 0) NOT NULL ,
    ValueAddTax decimal(18, 0) NOT NULL ,
    Amount decimal(18, 0) NOT NULL ,
    AccountReceivable decimal(18, 0) NOT NULL ,
    Received decimal(18, 0) NOT NULL ,
    LimitDate datetime NULL 
    ) ON PRIMARY
    GO
    CREATE TABLE GetKingsID (
    GetPurchaseID decimal(10, 0) NOT NULL ,
    GetDeliveryID int NOT NULL ,
    GetProductID int NOT NULL ,
    GetProgramID int NOT NULL ,
    GetBankID int NOT NULL ,
    GetReceiveID int NOT NULL ,
    GetPaymentID int NOT NULL ,
    GetChangeID int NOT NULL ,
    GetSalesManID int NOT NULL ,
    GetSupplierID int NOT NULL ,
    GetUserID int NOT NULL ,
    CustomerID int NOT NULL 
    ) ON PRIMARY
    GO
      

  2.   

    CREATE TABLE Product (
    ProductID nvarchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    ProductName nvarchar (30) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    SafeStock decimal(18, 0) NOT NULL ,
    LastPurchaseDate datetime NULL ,
    LastDeliveryDate datetime NULL ,
    Quantity decimal(18, 0) NOT NULL 
    ) ON PRIMARY
    GO
    CREATE TABLE Programs (
    ProgramID nvarchar (5) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    ProgramName nvarchar (30) COLLATE Chinese_PRC_CI_AS NOT NULL 
    ) ON PRIMARY
    GO
    CREATE TABLE PurchaseDetail (
    PurchaseID nvarchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    ProductID nvarchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    PurchaseQuantity decimal(18, 0) NOT NULL ,
    PurchaseUnitPrice decimal(18, 0) NOT NULL ,
    PurchaseAmount decimal(18, 0) NOT NULL 
    ) ON PRIMARY
    GO
    CREATE TABLE PurchaseMaster (
    PurchaseID nvarchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    PurchaseDate datetime NOT NULL ,
    SupplierID nvarchar (8) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    PurchaseProperty nvarchar (8) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    InvoiceNo nvarchar (10) COLLATE Chinese_PRC_CI_AS NULL ,
    SubTotal decimal(18, 0) NOT NULL ,
    ValueAddTax decimal(18, 0) NOT NULL ,
    Amount decimal(18, 0) NOT NULL ,
    AccountPayable decimal(18, 0) NOT NULL ,
    Paid decimal(18, 0) NOT NULL ,
    LimitDate datetime NULL 
    ) ON PRIMARY
    GO
    CREATE TABLE SalesMan (
    SalesManID nvarchar (4) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    ChineseName nvarchar (8) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    EnglishName nvarchar (15) COLLATE Chinese_PRC_CI_AS NULL ,
    ContactPhone nvarchar (20) COLLATE Chinese_PRC_CI_AS NULL ,
    MobilePhone nvarchar (20) COLLATE Chinese_PRC_CI_AS NULL ,
    ContactAddress nvarchar (50) COLLATE Chinese_PRC_CI_AS NULL ,
    Email nvarchar (30) COLLATE Chinese_PRC_CI_AS NULL 
    ) ON PRIMARY
    GO
    CREATE TABLE Supplier (
    SupplierID nvarchar (8) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    SupplierAttribName nvarchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    SupplierName nvarchar (60) COLLATE Chinese_PRC_CI_AS NULL ,
    InvoiceNo nvarchar (8) COLLATE Chinese_PRC_CI_AS NULL ,
    Owner nvarchar (8) COLLATE Chinese_PRC_CI_AS NULL ,
    RocID nvarchar (20) COLLATE Chinese_PRC_CI_AS NULL ,
    Phone1 nvarchar (20) COLLATE Chinese_PRC_CI_AS NULL ,
    Phone2 nvarchar (20) COLLATE Chinese_PRC_CI_AS NULL ,
    Fax nvarchar (20) COLLATE Chinese_PRC_CI_AS NULL ,
    ContactName1 nvarchar (8) COLLATE Chinese_PRC_CI_AS NULL ,
    ContactName2 nvarchar (8) COLLATE Chinese_PRC_CI_AS NULL ,
    CompanyAddress nvarchar (50) COLLATE Chinese_PRC_CI_AS NULL ,
    DeliveryAddress nvarchar (50) COLLATE Chinese_PRC_CI_AS NULL ,
    InvoiceAddress nvarchar (50) COLLATE Chinese_PRC_CI_AS NULL ,
    LastPurchaseDate datetime NULL ,
    PayDays int NOT NULL ,
    Prepaid int NOT NULL ,
    TempPrepaid int NOT NULL 
    ) ON PRIMARY
    GO
    CREATE TABLE UserAuthority (
    UserID nvarchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    ProgramID nvarchar (5) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    Running bit NOT NULL 
    ) ON PRIMARY
    GO
    CREATE TABLE Users (
    UserID nvarchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    UserName nvarchar (10) COLLATE Chinese_PRC_CI_AS NOT NULL ,
    PasswordCode nvarchar (50) COLLATE Chinese_PRC_CI_AS NOT NULL 
    ) ON PRIMARY
    GO
    --没有注释,这是系统生成的。