精华内容
下载资源
问答
  • 表级约束与列级约束 表级约束与列级约束 (1)对一个数据列建立...主键、外键、非空、唯一、default都是约束条件。主键、外键、唯一既可以作为表级约束,也可作为列级约束 ( not null, default )只有列级约束 ...

    表级约束与列级约束

    1. 表级约束与列级约束
      (1)对一个数据列建立的约束,称为列级约束
      (2)对多个数据列建立的约束,称为表级约束
      (3)列级约束既可以在列定义时声明,也可以在列定以后声明
      (4)表级约束只能在列定义后声明
    2. 主键、外键、非空、唯一、default都是约束条件。主键、外键、唯一既可以作为表级约束,也可作为列级约束

    ( not null, default )只有列级约束

    展开全文
  • Oracle 表级定义表级约束与列级定义约束 ...指的是在定义一个表的每一列的同时定义每一个列的约束条件,其约束条件 位于每一列之后。 约束:FOREIGN KEY,PRIMARY KEY,NOT NULL,CHECK,UNIQUE chec...

    Oracle 表级定义表级约束与列级定义约束

    1. 表级定义约束

    指的是在定义完一个表所有列之后,再去定义所有相关的约束。

    注意:not null 约束只能在列级上定义。

    2. 列级定义约束

    指的是在定义一个表的每一列的同时定义每一个列的约束条件,其约束条件

    位于每一列之后。

    约束:FOREIGN KEY,PRIMARY KEY,NOT NULL,CHECK,UNIQUE

    check约束:是为了让表中某字段值能输入固定的值。

    unique约束:是指唯一约束,用于要求列种不允许出现重复值。可以为单独的列添加一个unique约束,也可以为多个列添加一个unique约束(属于表级约束)

    展开全文
  • 列级约束与表级约束

    千次阅读 2019-04-08 11:25:23
    约束又分为列级约束与表级约束,它们的区别: (1)列级约束:只能应用于一列上。 表级约束:可以应用于一列上,也可以应用在一个表中的多个列上。 (即:如果你创建的约束涉及到该表的多个属性列,...

    5种约束:

         主键约束(primary key )、唯一性约束(unique)、检查约束(check)、缺省约束(default)、外部键约束(foreign)

     

    约束又分为列级约束与表级约束,它们的区别:

    (1)列级约束:只能应用于一列上。

               表级约束:可以应用于一列上,也可以应用在一个表中的多个列上。

    (即:如果你创建的约束涉及到该表的多个属性列,则必须创建的是表级约束(必须定义在表级上);否则既可以定义在列级上也可以定义在表级上此时只是SQL语句格式不同而已)

    (2)列级约束:包含在列定义中,直接跟在该列的其它定义之后 ,用空格分隔;不必指定列名  

              表级约束:与列定义相互独立,不包含在列定义中;与定义用‘,’分隔;必须指出要约束的列的名称

    (注:因为在创建列级约束时,只需将创建列约束的语句添加到该字段(列)的定义子句后面;而在创建表级约束时,需要将创建表级约束的语句添加到各个字段(列)定义语句的后面,因为并不是每个定义的字段都要创建约束,所以必须指明需要创建的约束的列名。)

         举例说明:Create Table project

                            (

                                 项目编号 int

                                  Constraint  pk_pno  primary  key,

                                  项目名称 char(20),

                                  项目负责人 char(20),

                                  Constraint  un_pname_pm  unique(项目名称,项目负责人)

                                  )

         分析:“项目编号”字段设置为主键,主键约束名为pk_pno,此主键约束为列主键约束“项目名称”和“项目负责人”的组合字段设置唯一性约束,此约束为表级约束)

     

    各约束在创建列约束和表约束时的具体说明:

    一:既可以创建列级约束又可以创建表级约束的:

     1,主键约束(primary  key  constraint):

           (1)定义列约束:Constraint <约束名> Primary Key

            (2)定义表约束:[Constraint <约束名>] Primary Key( <列名> [{<列名>}])        

     

     2,唯一性约束(unique key constraint):

           (1)定义列约束:[Constrain <约束名>] Unique

           (2)定义表约束:Constrain <约束名>  Unique  ( <列名> [{<列名>}])        

     

     3,检查约束(check constraint):

            既可以用于列约束,也可以用于表约束:  [Constraint <约束名>]  Check (<条件>)

           (注意:一个列级检查约束只能与限制的字段有关;一个 表级约束只能与限制的表中的字段有关)

    4外键约束(foreign  key constrain:

                定义 列级约束:[Constraint <约束名>] Foreign key  References <外表名>

                定义表级约束:[Constraint <约束名>] Foreign key  References <外表名>( <列名> [{<列名>}])        

    二:只能创建列级约束的:

    1,缺省约束(default constraint):

                    [Constraint <约束名>] Default  约束条件

       

     2,Null 约束:

                    [Constraint <约束名>] [Null | Not Null]

    展开全文
  • sql中表级约束和列级约束,在SQL SERVER中, (1) 对于基本表的约束分为列约束和表约束约束是限制用户输入到表中的数据的值的范围,一般分为列级约束与表级约束。列级约束有六种:主键Primary key、外键foreign ...

    sql中表级约束和列级约束,在SQL SERVER中,

    (1) 对于基本表的约束分为列约束和表约束
    约束是限制用户输入到表中的数据的值的范围,一般分为列级约束与表级约束。
    列级约束有六种:主键Primary key、外键foreign key 、唯一 unique、检查 checck 、默认default 、非空/空值 not null/ null
    表级约束有四种:主键、外键、唯一、检查

    列约束是对某一个特定列的约束,包含在列定义中,直接跟在该列的其他定义之后,用空格分隔,不必指定列名;
    表约束与列定义相互独立,不包括在列定义中,通常用于对多个列一起进行约束,与列定义用’,’分隔,定义表约束时必须指出要约束的那些列的名称。完整性约束的基本语法格式为:
    [ CONSTRAINT <约束名> ] <约束类型>
    约束名:约束不指定名称时,系统会给定一个名称。

    (2)列级约束与表级约束的区别
    如果完整性约束涉及到该表的多个属性列,必须定义在表级上,否则既可以定义在列级也可以定义在表级。
    简而言之:
    列级约束:列级约束是行定义的一部分,只能应用于一列上。
    表级约束:表级约束是独立于列的定义,可以应用在一个表中的多列上。

    (3)列级约束与表级约束在SQL中的用法(即如何在SQL中定义约束)
    在创建表时定义约束:
    CREATE TABLE table_name
    ({<column_definition> -------列级约束定义
    |column_name AS computed_column_expression -------计算列定义
    |<teble_constraint> ------表级约束定义
    }[,….n]
    )


    一个约束定义为列级约束还是表级约束???
    根据实际需要和设计者思路确定。如primary key,当只涉及到一列时,定义为列级约束;当涉及到多列时,则定义为表级约束。
    Prinmary key定义为列级约束时,相应SQL语句:

    Stu_id上建立的主键pk_1为列级约束

    CREATE TABLE student

    (Stu_id int constraint pk_1 primary key,

    Stu_name varchar(8),

    ….)

    当定义为表级约束时,相应SQL语句:

    CREATE TABLE student

    (Stu_id int NOT NULL,

    Stu_id上建立的主键pk_1为的表级约束

    Stu_name varchar(8),

    Constraint pk_1 primary key (Stu_id),

    ….)

    各约束具体说明:

    1. 主键约束

    PRIMARY KEY约束

    PRIMARY KEY约束用于定义基本表的主键,起唯一标识作用,其值不能为NULL,也不能重复,以此来保证实体的完整性。

    PRIMARY KEY与UNIQUE约束类似,通过建立唯一索引来保证基本表在主键列取值的唯一性,但它们之间存在着很大的区别:

    ①在一个基本表中只能定义一个PRIMARY KEY约束,但可定义多个UNIQUE约束;

    ②对于指定为PRIMARY KEY的一个列或多个列的组合,其中任何一个列都不能出现空值,而对于UNIQUE所约束的唯一键,则允许为空。

    注意:不能为同一个列或一组列既定义UNIQUE约束,又定义PRIMARY KEY约束。

    PRIMARY KEY既可用于列约束,也可用于表约束。

    PRIMARY KEY用于定义列约束时,其语法格式如下:

    CONSTRAINT <约束名> PRIMARY KEY

    PRIMARY KEY用于定义表约束时,即将某些列的组合定义为主键,其语法格式如下:

    [CONSTRAINT <约束名>]S PRIMARY KEY (<列名>[{<列名>}])

    2. 唯一性(UNIQUE)约束

    UNIQUE约束用于指明基本表在某一列或多个列的组合上的取值必须唯一。

    定义了UNIQUE约束的那些列称为唯一键,系统自动为唯一键建立唯一索引,从而保证了唯一键的唯一性。

    唯一键允许为空,但系统为保证其唯一性,最多只可以出现一个NULL值。

    UNIQUE既可用于列约束,也可用于表约束。

    UNIQUE用于定义列约束时,其语法格式如下:

    [CONSTRAINT <约束名>] UNIQUE

    唯一性约束用于指定一个或者多个列的组合的值具有唯一性,以防止在列中输入重复的值。当使用唯一性约束时,需要考虑以下几个因素:

    ①使用唯一性约束的字段允许为空值。

    ②一个表中可以允许有多个唯一性约束。

    ③可以把唯一性约束定义在多个字段上。

    ④唯一性约束用于强制在指定字段上创建一个唯一性索引。

    ⑤缺省情况下,创建的索引类型为非聚簇索引。

    unique约束是用来确保不受主键约束列上的数据的唯一性.

    unique与primary key的区别在于:

    (1)unique约束主要用于非主键的一列或多列上要求数据唯一.

    (2) unique约束允许该列上存在NULL值,而主键决不允许出现.

    (3)可以在一个表创建多个unique约束,而在一个表上只能够设置一个主键

    3. 检查约束

    CHECK约束用来检查字段值所允许的范围,如,一个字段只能输入整数,而且限定在0-100的整数,以此来保证域的完整性。

    CHECK既可用于列约束,也可用于表约束,

    其语法格式为:

    [CONSTRAINT <约束名>] CHECK (<条件>)

    一个列级检查约束只能与限制的字段有关;一个表级检查约束只能与限制的表中字段有关。

    一个表中可以定义多个检查约束。

    每个CREATE TABLE语句中每个字段只能定义一个检查约束。

    在多个字段上定义检查约束,则必须将检查约束定义为表级约束。

    当执行INSERT语句或者UPDATE语句时,检查约束将验证数据。

    检查约束中不能包含子查询。

    4. 缺省约束

    使用缺省约束时,应该注意以下几点:

    每个字段只能定义一个缺省约束。

    如果定义的缺省值长于其对应字段的允许长度,那么输入到表中的缺省值将被截断。

    不能加入到带有IDENTITY属性或者数据类型为timestamp的字段上。

    如果字段定义为用户定义的数据类型,而且有一个缺省绑定到这个数据类型上,则不允许该字段有缺省约束。

    5. 外部键约束

    外部键约束用于强制参照完整性,提供单个字段或者多个字段的参照完整性。 FOREIGN KEY约束指定某一个列或一组列作为外部键,其中,包含外部键的表称为从表(参照表),包含外部键所引用的主键或唯一键的表称主表(被参照表)。

    系统保证从表在外部键上的取值要么是主表中某一个主键值或唯一键值,要么取空值。以此保证两个表之间的连接,确保了实体的参照完整性。

    FOREIGN KEY既可用于列约束,也可用于表约束,

    其语法格式为:

    [CONSTRAINT <约束名>] FOREIGN KEY REFERENCES <主表名> (<列名>[{<列名>}])

    当使用外部键约束时,应该考虑以下几个因素:

    ①外部键约束提供了字段参照完整性。

    ②外部键从句中的字段数目和每个字段指定的数据类型必须和REFERENCES从句中的字段相匹配。

    ③外部键约束不能自动创建索引,需要用户手动创建。

    ④用户想要修改外部键约束的数据,必须有对外部键约束所参考表的SELECT权限或者REFERENCES权限。

    ⑤参考同一表中的字段时,必须只使用REFERENCES子句,不能使用外部键子句。

    ⑥一个表中最多可以有31个外部键约束。

    ⑦在临时表中,不能使用外部键约束。

    ⑧主键和外部键的数据类型必须严格匹配。

    6. NULL 约束

    (1)NULL/NOT NULL

    是否允许该字段的值为NULL。

    NULL值不是0也不是空白,更不是填入字符串“NULL”,而是表示“不知道”、“不确定”或“没有数据”的意思。

    当某一字段的值一定要输入才有意义的时候,则可以设置为NOT NULL。

    如主键列就不允许出现空值,否则就失去了唯一标识一条记录的作用

    只能用于定义列约束,

    其语法格式如下:

    [CONSTRAINT <约束名> ][NULL|NOT NULL]

    转载于:https://www.cnblogs.com/youngerger/p/8445622.html

    展开全文
  • 列级约束和表级约束

    千次阅读 2016-09-15 19:27:49
    约束分为列级约束和表级约束。   如果我们了解了这件事情,那么当我们用T—SQL语句创建约束时,思路就会更加清晰。了解了这件事,相信我们会对约束有更进一步的理解。   大家都知道,在SQL Server ...
  • 约束条件 约束描述 primary key 主键约束,约束的值可唯一的标识对应的记录 not null 非空字段的值不能为空 unique 唯一约束,约束1...
  • 数据库中外键的特点与列级约束与表级约束的区别 外键的特点: 1.要求在从表设置外键关系 2、从表的外键列的类型和主表的关联列的类型要求一致或兼容,名称无要求 3.主表的关联列必须是一个key (一-般是主键或唯一) 4....
  • 约束分为列级约束和表级约束。   如果我们了解了这件事情,那么当我们用T—SQL语句创建约束时,思路就会更加清晰。了解了这件事,相信我们会对约束有更进一步的理解。   大家都知道,在SQL Server ...
  • SQL Server 2000中的列级约束与表级约束 (2010-11-09 11:15:09) 转载▼ 标签: 数据库 表级约束 外部键 列级约束 sql server 2000 杂谈 分类: 编程日记(C系列)积累点点滴滴 ...
  • 你上次和我说,可以做表级约束,也可以做列级约束,但是我怎么做表级约束就出错,做列级约束就可以,但是书上的例题就是表级约束。例如:create table test(sno char(10),age int constraint cage default ...
  • 约束分为列级约束和表级约束。   如果我们了解了这件事情,那么当我们用T—SQL语句创建约束时,思路就会更加清晰。了解了这件事,相信我们会对约束有更进一步的理解。   大家都知道,在SQL Server 2000中有5种...
  • 前言 ´・ᴗ・` 约束(constrain) 介绍常用六大约束 外键 foreign key 列级约束与表级约束 彩蛋 总结 ´◡`
  • 一:什么是约束约束是用来规范表中结构的,是一种限制,为了保证数据的可靠性和稳定性 二:常见的约束有哪些以及作用 ① not null 非空,用于保证该字段的值不能为空 比如姓名,学号等 ② default 默认约束,...
  • SQL Server (列级约束与表级约束)

    千次阅读 2010-11-20 17:19:00
    列级约束:列级约束是行定义的一部分,只能应用于一列上。 表级约束:表级约束是独立于列的定义,可以应用在一个表中的多列上。 (3)列级约束与表级约束在SQL中的用法(即如何在SQL中定义约束) 在创建表时定义约束:...
  • /*进阶17 变量 系统变量: 全局变量: 会话变量: 自定义变量: 用户变量: 局部变量: */ /* #一: 系统变量 #说明: 变量由系统提供,不是用户定义的,属于服务器层面 ...2.查看满足条件的...
  • 数据库表的约束条件

    千次阅读 2020-08-16 20:54:35
    deptno varchar(20) primary key, --列级约束条件 dname varchar(20), location varchar(40) ); 表级主键约束演示: create table dept_htlwk( deptno varchar(20) , dname varchar(20) , location varchar(40) ,
  • 1.1 列级约束条件 1.2 表级约束条件 1.3 语法格式 2. 主键(PRIMARY KEY)约束 3. 唯一性(UNIQUE)约束 4. 空与非空(NULL/NOT NULL)约束 5. 默认值(DEFAULT)约束 6. 检查(CHECK)约束 7. 外键(FOREIGN)...
  • 六种约束 检查约束(check) 唯一约束(Unique) ...列级约束 作用于一列 表级约束 作用于表 报错: 名称 作用 ORA-00001:违反唯一键约束条件 可能是主键报错或者唯一键报错 外键约束 级联删除/级...
  • SQLServer约束介绍

    2018-09-10 16:25:00
    SQLServer约束介绍 ... 列级约束条件是对某一个特定列的约束,包含在列定义中,可以直接跟在该列的其他定义之后,用空格分隔,不用指定列名。 表级约束条件 表级约束条件与列定义相...
  • MySQL常见约束条件

    万次阅读 多人点赞 2018-12-02 15:36:23
    约束条件:限制表中的数据,保证添加到数据表中的数据准确和可靠性!凡是不符合约束的数据,插入时就会失败! 约束条件在创建表时可以使用, 也可以修改表的时候添加约束条件 1、约束条件分类: 1)not null :非空...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,439
精华内容 2,175
关键字:

列级约束条件