精华内容
下载资源
问答
  • sql创建主键约束(转)

    千次阅读 2010-03-12 10:12:00
    使用SQL语句创建主键约束可以在创建表(Create Table)或修改表(Alter Table)时进行 创建。 在修改表中创建主键约束语法: ALTER TABLE table_name ADD CONSTRAINT constraint_name PRIMARY KEY [CLUSTERED | ...
    创建主键约束
    在数据表中经常有一个列或多列的组合,其值能惟一地标识表中的每一行。这样的一列或多列称为表的主键,通过它可强制表的实体完整性。当创建或更改表时可通过定义PRIMARY KEY约束来创建主键。
    1.使用企业管理器创建主键约束
    操作步骤如下:
    (1)打开企业管理器,选择“控制台根目录”→“SQL Server组”→“MRFC”→“数据库”节点。
    (2)在“销售管理系统”中选择“表”,并在右边的详细列表中选择要创建约束的数据表,单击鼠标右键选择“设计表”命令,如图1所示。

    图1  选择“设计表”命令
    (3)在弹出的窗口中选择要设置为主键的列,可以通过快捷工具栏中的 按钮进行单一设定,还可以将列选择多个,并通过单击鼠标右键选择“设置主键”命令将多个列设置为主键,如图2所示。

    图2  将多个列设置为主键
    (4)设置完成后,单击快键工具栏中的 按钮保存主键设置,并关闭此窗口。
    注意:将某列设置为主键时,不可以将此列设置为允许空,否则将弹出如图3所示的信息框。

    图3  主键设置错误提示对话框
    2.使用SQL语句创建主键约束
    使用SQL语句创建主键约束可以在创建表(Create Table)或修改表(Alter Table)时进行  创建。
    在修改表中创建主键约束语法:
    ALTER TABLE table_name
    ADD
    CONSTRAINT constraint_name
    PRIMARY KEY [CLUSTERED | NONCLUSTERED]
    {(Column[,…n])}
    参数说明:
     CONSTRAINT:创建约束的关键字。
     constraint_name:创建约束的名称。
     PRIMARY KEY:表示所创建约束的类型为主键约束。
     CLUSTERED | NONCLUSTERED:是表示为PRIMARY KEY或UNIQUE约束创建聚集或非聚集索引的关键字。PRIMARY KEY约束默认为CLUSTERED,UNIQUE约束默认为 NONCLUSTERED。
    下面在指定的数据库中创建一个名为mytable的数据表,并在该数据表中将“userid”列设置为主键。
    操作步骤:
    (1)在操作系统中选择“开始”→“所有程序”→“Microsoft SQL Server”→“查询分析器”命令,打开查询分析器。
    (2)在查询分析器的工具栏中选择要连接的数据库。
    (3)在代码编辑区中编写如下代码。
    SQL语句如下:
    USE 销售管理系统    --引入数据库
    GO
    CREATE TABLE mytable    --创建表
    (
    USERID int CONSTRAINT pk_id PRIMARY KEY,    --创建主键约束
    USERNAME char (20),    --数据列
    USERPASS char (20),    --数据列
    USERPHONE char (20),    --数据列
    USERADDRESS varchar (50),    --数据列
    USERLEVEL char(2)    --数据列
    )
    GO
    说明:在上段代码中,CONSTRAINT pk_id PRIMARY KEY为创建一个主键约束,pk_id为用户自定义的主键约束名称,但名称必须是合法的标识符。
    下面在mytable表中将USERLEVEL(用户级别)列设定为主键约束。
    SQL语句如下:
    USE 销售管理系统    --引入数据库
    GO
    ALTER TABLE mytable     --修改表
    ADD     /*将USERLEVEL列设置为主键约束*/
    CONSTRAINT pk_level
    PRIMARY KEY CLUSTERED (USERLEVEL)
    GO
    说明:将某个数据列设置为主键约束时,该数据列不能为允许空,否则将会无法创建主键约束。
    可以在查询分析器中写入如下代码将数据列设置为不允许空。
    ALTER TABLE mytable     --修改表
    ALTER Column USERLEVEL char (2) NOT NUL --将USERLEVEL数据列设置为不允许空
    展开全文
  • SQLServer增删改查,创建主键约束、唯一约束、外键约束 SQL语句顺序如下: SELECT 子句 FROM 子句 where 子句 group by 子句 having 子句 order by 子句

    SQLServer增删改查,创建主键约束、唯一约束、外键约束

    SQL语句顺序如下:
    SELECT 子句 FROM 子句
    where 子句
    group by 子句
    having 子句
    order by 子句

    一、SQLServer增删改查

    1.创建表

    CREATE TABLE DW.dbo.MTF_frequency (
    	id int NOT NULL IDENTITY(1,1),
    	project_name varchar(200),
    	mtf_frequency int,
    	lens_structure varchar(200),
    	control_field varchar(200),
    	insert_time datetime DEFAULT (getdate())
    )
    

    2.列出表里所有的列名

    方法一:

    select name from syscolumns
    where id=object_id('DW.dbo.MTF_frequency')
    

    在这里插入图片描述

    方法二:

    SELECT column_name FROM INFORMATION_SCHEMA.columns 
    WHERE TABLE_NAME='stugrade'  and column_name!='studentname'
    

    在这里插入图片描述

    3.增加列

    ALTER TABLE [temp52-51_bak2]
    add insert_time datetime DEFAULT getdate(),
    update_time datetime DEFAULT getdate()
    

    4.修改字段类型

    alter table [1216J].dbo.tb_txtcollect_damo_all alter COLUMN ball_code varchar(100)
    #设置字段为非空
    alter table test alter column name nvarchar(30) not null
    

    5.插入数据

    insert into table(field1,field2) values(value1,value2)
    

    6.删除数据

    delete from DW.dbo.aps_2080_mesdc_bianzu_info where pairDate<'2020-03-09' and pairDate>'2020-03-07'
    

    7.更新数据

    update tablename set field1=value1 where 范围
    

    8.查找数据

    select * from tablename where field1 like '%value1%'
    

    二、创建主键约束PRIMARY KEY

    1.主键约束

    CONSTRAINT PK_ID PRIMARY KEY为创建一个主键约束,PK_ID为用户自定义的主键约束名称

    create TABLE test
    (
    stuID int CONSTRAINT PK_ID PRIMARY KEY,
    name NVARCHAR(30),
    age int,
    subject NVARCHAR(30),
    score int
    )
    

    2.在现有表中添加主键约束

    alter table test ADD CONSTRAINT PRM_stuID PRIMARY KEY(stuID)
    
    • CONSTRAINT:创建约束的关键字
    • PRIMARY KEY:表示所创建约束的类型为主键约束
    • CLUSTERED | NONCLUSTERED:是表示为PRIMARY KEY 或UNIQUE约束创建聚集或非聚集索引的关键字。PRIMARY KEY约束默认为CLUSTERED,UNIQUE约束默认为NONCLUSTERED

    3.删除主键约束

    alter table test drop CONSTRAINT PRM_stuID
    

    三、创建唯一约束UNIQUE

    唯一约束UNIQUE用于强制实施列集中的唯一性。根据UNIQUE约束,表中的任何两行都不能有相同的列值。主键也强制实施唯一性,但主键不允许NULL作为一个唯一值。

    1.创建表时创建唯一约束

    create TABLE test
    (
    stuID int CONSTRAINT UQE_ID UNIQUE,
    name NVARCHAR(30),
    age int,
    subject NVARCHAR(30),
    score int
    )
    

    2.在现有表中添加唯一约束

    alter table test add CONSTRAINT UQE_ID UNIQUE(stuID)
    

    3.删除唯一约束

    alter table test drop CONSTRAINT UQE_ID 
    

    四、创建外键约束FOREIGN KEY

    通过定义FOREIGN KEY约束来创建外键,在外键引用中,当一个表的列被引用作为另一个表的主键值的列时,就在两表直接创建了链接。

    create table cource
    (
    stuID int,
    cource nvarchar(30),
    score nvarchar(30),
    CONSTRAINT FKEY_ID FOREIGN KEY(stuID) 
    REFERENCES test(stuID)
    )
    
    展开全文
  • SQL Server主键约束

    2020-05-13 19:02:20
    PRIMARY KEY:主键约束唯一标识数据库表中的每条记录。...添加主键约束比较 简单,但是删除一个没有约束名的主键约束则比较复杂,如果不是很不了解SQL Server的话则比很难实现该功能。 主键约束操作基本语句 如果...

    PRIMARY KEY:主键 约束唯一标识数据库表中的每条记录。主键必须包含唯一的值。主键列不能包含 NULL 值。每个表都应该有一个主键,并且每个表只能有一个主键。主键约束操作包含了添加约束和删除约束,修改约束其实是添加约束或者删除约束。添加主键约束比较 简单,但是删除一个没有约束名的主键约束则比较复杂,如果不是很不了解SQL Server的话则比很难实现该功能。

    主键约束操作基本语句

    如果是在新建表的时候添加主键约束比较简单,直接在列名后加入primary key即可,标准的添加主键约束的SQL脚本如下:

    create table 表名 (    字段名1 int not null,    …………,
       [constraint 约束名primary key (字段名1, …)
    )

    其中约束名可选(建议选择,否则系统会分配随机临时名称)。这种方法可以任意添加多个或一个主键约束。

    对已有表添加主键约束,与上面的脚本类似,如下:

    alter table 表名 [add constraint 约束名primary key(字段名1 ,… )

    其中约束名与上相同,可选,建议指定。

    SQL Server删除主键约束与MySQL不同,需要主键的约束名称才能删除,SQL Server标准的删除主键的脚本如下:

    ALTER TABLE 表名DROP CONSTRAINT 约束名

     

     

    展开全文
  • SQL主键约束

    2020-12-21 18:40:12
    1、给字段1加主键约束 create table 表名( 字段名1 类型1 primary key 字段名2 类型2 ) 2、给字段1加主键约束 create table 表名( 字段名1 类型1 字段名2 类型2 primary key(字段1) ) 3、通过修改给字段1...

    特点:数据唯一、并且不能为空 null

    添加方式:
    	1、给字段1加主键约束
    		create table 表名(
    			字段名1 类型1 primary key
    			字段名2 类型2
    

    )
    2、给字段1加主键约束
    create table 表名(
    字段名1 类型1
    字段名2 类型2
    primary key(字段1)
    )
    3、通过修改给字段1加主键约束
    create table 表名(
    字段名1 类型1
    字段名2 类型2
    )
    alter table 表名 add primary key(字段1);

    展开全文
  • SQL主键约束和外键约束

    千次阅读 2018-01-17 10:45:06
    主键约束 SQL PRIMARY KEY 约束 PRIMARY KEY 约束唯一标识数据库表中的每条记录。 主键必须包含唯一的值。 主键列不能包含 NULL 值。 每个表都应该有一个主键,并且每个表只能有一个主键。 CREATE TABLE ...
  • SQLServer中有五种约束,Primary Key约束、Foreign Key约束、Unique约束、Default约束和Check约束,今天使用SQL Server2008来演示下这几种约束的创建和使用的方法。... 创建主键约束可以右键单击表...
  • --删除主键 alter table 表名 drop constraint 主键名 --添加主键 alter table 表名 add constraint 主键名 primary key(字段名1,字段名2……) --添加非聚集索引的主键 alter table 表名 add constraint 主键名 ...
  • sql主键约束

    千次阅读 2018-03-17 10:52:37
    数据字段属性:UNSIGNED :无...AUTO_INCREMENT :自动增长的,通常用于设置主键,且为整数类型,可定义起始值和步长;NULL 、NOT NULL :空 和 非空DEFAULT :默认的,用于设置默认值 MySQL主键(Primary Key)是唯...
  • SQLServer 2012 主键约束(定义主键、删除主键)

    万次阅读 多人点赞 2019-04-21 18:18:00
    文章目录定义主键使用SSMS工具定义主键使用SQL方式定义主键方式一:在创建数据表的时候定义主键方式二:修改数据表定义主键删除主键使用SSMS工具删除主键方式一:在对象资源管理器中删除主键方式二:在表设计器中...
  • SQL Server 添加与删除主键约束

    千次阅读 2020-01-07 23:27:12
    SQL Server 添加与删除主键约束
  • ----选择数据库 use ythome go ----查看表是否存在 if Exists ( select * from sysobjects where name='sys_menu' and type='U' ) ----删除表 begin drop table sys_menu ... ----Primary Key 主键
  • 主键约束都是在 id 上使用,而且本身已经默认了内容不能为空,可以在建表的时候指定。 创建一张表,把 person_id 作为主键 示例图: 查看表的信息 主键不可为空 主键不可重复(唯一), SCOTT.SYS_C0017981...
  • sqlserver增加主键约束

    千次阅读 2016-03-08 14:37:34
    alter table t add constraint pk_t primary key(id);
  • 本人新手,无意间发现当表里有个主键后,在某一列在创建 唯一约束,唯一约束的那一列就自动排序了 这是怎么回事,我知道主键有聚集索引,但不是只排序主键那一列吗?![没唯一]...
  • 1、主键约束 primary key 主键是每行的唯一标识符,仅仅通过它就能准确定位到一行,其中主键列在整个表中不能有重复,必须包含唯一的值(不能为NULL)。 alter table t_group  alter column id i...
  • 数据库导出 需要用\copy,并且...数据库创建主键约束名称不能跟表名一样,否则会报relation已经存在,删除表由显示table不存在,如下: CREATE TABLE public.t_add_shixin_predict_features ( id VARCHAR(100) N...
  • SQL Server中如何给主键添加主键约束

    千次阅读 2021-01-20 17:18:55
    SQL Server中如何给主键添加主键约束?方法/步骤1      SQL Server中如何给表添加主键约束,下面为大家分享了两种方法希望大家能够速学速懂。23      在如下图中大家可以看到的是一...
  • SQL - 创建一个学生表,要求有主键约束和非空约束 CREATE TABLE [dbo].[Student] ( [ID] [int] NOT NULL, [Name] [nchar](10) NOT NULL, [Age] [int] NOT NULL, CONSTRAINT [PK_Student] ...
  • 创建、删除唯一约束: db2 "alter table tabname add unique(colname)" db2 "alter table tabname drop ...创建主键约束: db2 "alter table staff add primary key (id)" db2 "alter table t_da_jkda_rkxzl ...
  • SQLserver数据库--主键约束

    千次阅读 2019-04-11 11:31:57
    1、主键约束 创建表时设置约束的方式有两种:一种是在列级...在创建表时设置主键约束 ①在列级设置主键约束: CREATE TABLE table_name ( column_name datatype [[CONSTRAINT constraint_name]primark key] [,…n] ...
  • SQLserver数据库——表中主键约束

    千次阅读 2019-02-05 23:56:50
    常见五种约束: 1.主键约束 2.外键约束 ...1、主键约束 ...创建表时设置约束的方式有两种:一种是在列级设置,另一种是在表级设置。...在创建表时设置主键约束 ①在列级设置主键约束: CREATE...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 83,477
精华内容 33,390
关键字:

sql创建主键约束