WEB开发网
开发学院数据库MSSQL Server 关于 T-SQL 的几点小九九 阅读

关于 T-SQL 的几点小九九

 2009-06-08 10:31:48 来源:WEB开发网   
核心提示: 我依然喜欢在查询分析器中,手工编写一切和 SQL 有关的脚本,关于 T-SQL 的几点小九九(5),当然创建表的 SQL 语句也不例外,例如下面这个 SQL 语句:USED_DowpolIFEXISTS(SELECTnameFROMsysobjectsWHEREname='Proc

我依然喜欢在查询分析器中,手工编写一切和 SQL 有关的脚本,当然创建表的 SQL 语句也不例外,例如下面这个 SQL 语句:

USE D_Dowpol
IF EXISTS(SELECT name FROM sysobjects
      WHERE name = 'ProcurementPlan' AND type = 'U')
  DROP TABLE ProcurementPlan
GO
CREATE TABLE [dbo].[ProcurementPlan] -- 采购计划表
(
      AutoID         int IDENTITY(1,1) PRIMARY KEY,  -- 自增编号
      PlanID         nvarchar(200) UNIQUE DEFAULT CAST(GETDATE() AS nvarchar(20)) NOT NULL, -- 采购计划编号(DP_CG_20090520152412)
      CreateDate      datetime NOT NULL,   -- 选择的采购计划的日期(可选的?创建记录的日期?)
      ProcurementItem nvarchar(500) NOT NULL, -- 采购项目(我的理解就是采购名目)
      SupplierID      int NOT NULL,      -- 供应商编号
      PlannedType     bit NOT NULL,      -- 计划类型 0:表示计划内;1:表示计划外
      PlannedFund     decimal(14,2) DEFAULT (0.00) NOT NULL, -- 计划资金(所有金额都统一保留两位小数,必须填写)
      Dollar         decimal(14,2) DEFAULT (0.00) NOT NULL, -- 对应美元金额(所有金额都统一保留两位小数,必须填写)
      Remark         nvarchar(2000) DEFAULT '无' NOT NULL, -- 特殊情况备注
      EnteringEmp     nvarchar(20) NOT NULL,   -- 录入员工(填写记录的人,思考一下是否要做外键关联?)
      Assessor        nvarchar(20) NOT NULL,   -- 审核人
      IsPassed        bit DEFAULT 0 NOT NULL,   -- 是否审核通过(0:还未审核通过;1:审核通过)
      IsDeleted       bit DEFAULT 1 NOT NULL   -- 是否已逻辑上删除(0:逻辑上删除;1:逻辑上数据有效)
)
GO
ALTER TABLE [dbo].[ProcurementPlan]
ADD CONSTRAINT FK_ProcurementPlan_SupplierID FOREIGN KEY (SupplierID)
REFERENCES Supplier (SupplierID)
GO
ALTER TABLE [dbo].[ProcurementPlan]
ADD CONSTRAINT FK_ProcurementPlan_EnteringEmp FOREIGN KEY (EnteringEmp)
REFERENCES T_Employee (NickName)
GO
ALTER TABLE [dbo].[ProcurementPlan]
ADD CONSTRAINT FK_ProcurementPlan_Assessor FOREIGN KEY (Assessor)
REFERENCES T_Employee (NickName)
GO

上一页  1 2 3 4 5 6 7 8  下一页

Tags:关于 SQL 小九九

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接