谁来举例说一下什么是列级约束,什么是表级约束

ChinOS 2003-12-05 05:27:21
谁来举例说一下什么是列级约束,什么是表级约束
...全文
373 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
welyngj 2003-12-06
  • 打赏
  • 举报
回复
列约束和表约束
约束可以是列约束或表约束:

列约束被指定为列定义的一部分,并且仅适用于那个列

表约束的声明与列的定义无关,可以适用于表中一个以上的列。
当一个约束中必须包含一个以上的列时,必须使用表约束。

例如,如果一个表的主键内有两个或两个以上的列,则必须使用表约束将这两列加入主键内。假设有一个表记录工厂内的一台计算机上所发生的事件。假定有几类事件可以同时发生,但不能有两个同时发生的事件属于同一类型。这一点可以通过将 type 列和 time 列加入双列主键内来强制执行。

CREATE TABLE factory_process
(event_type int,
event_time datetime,
event_site char(50),
event_desc char(1024),
CONSTRAINT event_key PRIMARY KEY (event_type, event_time) )

welyngj 2003-12-05
  • 打赏
  • 举报
回复
CREATE TABLE [Categories] (
[CategoryID] [int] IDENTITY (1, 1) NOT NULL ,
[CategoryName] [nvarchar] (15) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[Description] [ntext] COLLATE Chinese_PRC_CI_AS NULL ,
[Picture] [image] NULL ,
CONSTRAINT [PK_Categories] PRIMARY KEY CLUSTERED
(
[CategoryID]
) ON [PRIMARY] --列级约束
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]-
GO




CREATE TABLE [Categories] (
[CategoryID] [int] IDENTITY (1, 1) NOT NULL ,
[CategoryName] [nvarchar] (15) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[Description] [ntext] COLLATE Chinese_PRC_CI_AS NULL ,
[Picture] [image] NULL ,
CONSTRAINT [PK_Categories] PRIMARY KEY CLUSTERED
(
[CategoryID],[CategoryName]
) ON [PRIMARY] --表级约束
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO



welyngj 2003-12-05
  • 打赏
  • 举报
回复
--列column_constraint > ::= [ CONSTRAINT constraint_name ]
{ [ NULL | NOT NULL ]
| [ { PRIMARY KEY | UNIQUE }
[ CLUSTERED | NONCLUSTERED ]
[ WITH FILLFACTOR = fillfactor ]
[ON {filegroup | DEFAULT} ] ]
]
| [ [ FOREIGN KEY ]
REFERENCES ref_table [ ( ref_column ) ]
[ ON DELETE { CASCADE | NO ACTION } ]
[ ON UPDATE { CASCADE | NO ACTION } ]
[ NOT FOR REPLICATION ]
]
| CHECK [ NOT FOR REPLICATION ]
( logical_expression )
}

--表< table_constraint > ::= [ CONSTRAINT constraint_name ]
{ [ { PRIMARY KEY | UNIQUE }
[ CLUSTERED | NONCLUSTERED ]
{ ( column [ ASC | DESC ] [ ,...n ] ) }
[ WITH FILLFACTOR = fillfactor ]
[ ON { filegroup | DEFAULT } ]
]

pengdali 2003-12-05
  • 打赏
  • 举报
回复
表级

PRIMARY KEY 约束


FOREIGN KEY 约束

列级

UNIQUE 约束


CHECK 约束


DEFAULT 定义


为空性
txlicenhe 2003-12-05
  • 打赏
  • 举报
回复
谁来举例说一下什么是列级约束,(比如字段规则,默认值等)
什么是表级约束(比如外键约束)

34,838

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧