❶ sql创建主键的语法
PRIMARY
KEY
约束唯一标识数据库表中的每条记录。
主键必须包含唯一的值。
主键列不能包含
NULL
值。
每个表都应该有一个主键,并且每个表只能有一个主键。
下面的
SQL
在
"Persons"
表创建时在
"Id_P"
列创建
PRIMARY
KEY
约束:
MySQL:
CREATE
TABLE
Persons
(
Id_P
int
NOT
NULL,
LastName
varchar(255)
NOT
NULL,
FirstName
varchar(255),
Address
varchar(255),
City
varchar(255),
PRIMARY
KEY
(Id_P)
)
SQL
Server
/
Oracle
/
MS
Access:
CREATE
TABLE
Persons
(
Id_P
int
NOT
NULL
PRIMARY
KEY,
LastName
varchar(255)
NOT
NULL,
FirstName
varchar(255),
Address
varchar(255),
City
varchar(255)
)
❷ 在sql中怎样设置主键语法
创建表
--------------------------------------------------------------------------------
CREATE TABLE TABLE_NAME(
column1 DATATYPE [NOT NULL] [PRIMARY KEY],
column2 DATATYPE [NOT NULL],
...
[constraint <约束名> 约束类型 (要约束的字段名)... ]
);
说明:
TABLE_NAME --表名.
column1,column2 --列的名称 不能取关键字
DATATYPE --是Oracle的数据类型,可以查看附录.
NOT NULL /NULL --不可以/可以允许资料有空的.NULL一般省略.
PRIMARY KEY --是本表的主键。
CONSTRAINT --是对表里的字段添加约束.(约束类型有 Check,Unique,Primary key,not null,Foreign key)。
示例:
CREATE TABLE student(
s_id number(8) PRIMARY KEY,
s_name varchar2(20) NOT NULL,
s_sex varchar2(8) ,
clsid number(8) ,
CONSTRAINT u_1 UNIQUE(s_name),
CONSTRAINT c_1 CHECK (s_sex in ('MALE','FEMALE'))
);
表级约束
如 设置 两列不能同时为空
ALTER TABLE tablename ADD CONSTRAINT check_name CHECK (col1 is not null or col2 is not null) ;
复制表
--------------------------------------------------------------------------------
CREATE TABLE TABLE as <SELECT 语句>
(需注意的是复制表不能复制表的约束);
示例:
CREATE TABLE test AS SELECT * FROM emp;
会将表emp的数据一并复制到test中,但约束没有复制.
如果只复制表的结构不复制表的数据则:
CREATE TABLE test as (SELECT * FROM emp WHERE 1=2);
或者
CREATE TABLE test as (SELECT * FROM emp WHERE FALSE);
❸ SQL怎样用命令设置主键
可以参考下面的方法:
建表的时候,可以直接在列名后面增加主键约束,比如:
IDchar(5)primarykey。
对已经建表的列增加主键约束:
alter table 表名addconstraint约束名 primary key (ID)
(3)sql添加主键的语法扩展阅读:
sql语句
添加主键
Alter table tabname add primary key(col)
删除主键
Alter table tabname drop primary key(col)
创建索引
create [unique] index idxname on tabname(col….)
删除索引
drop index idxname
❹ SQL中的插入含有主键的语句怎么写
①通过SQL语句向Oracle数据库中插入主键时,不写主键值,而通过序列得到下个主键值。
如:向表Demo中插入一条数据,ID为主键,序列为no:
insert into Demo(ID,NAME,AGE)values(no,'name',0);
原因是ID为主键值,不用去insert主键,ID是自增的。
②通过SQL语句向Oracle数据库中插入主键时,直接写入主键值。
如:向表Demo中插入一条数据,ID为主键,序列为no:
insert intoDemo(ID,NAME,AGE)values(1,'name',0);
原因是Oracle主键如果在insert插入时有值,将不使用自增。
❺ 数据库中添加主键约束的SQL语句是什么样的
首先需要保证需要改为主键的列的已存在的值不能有空或者重复的,比如修改sno表的stu为主键的代码为:
Alter table sno alter column stu char(6) not null;
Alter table sno add constraint pk_stu primary key (stu)。
❻ sql用命令创建主键与外键。
1、为了方便大家理解,使用一个例子来帮助大家理解。意思大概就是通过引用表二中的字段完成对表一字段的约束。方法:
❼ SQL怎样用命令设置主键
我现在发现使用较少的语句也可以啦,比如:alter
tabler
badd
primary
key(id)将表b中的字段id设为主键这个方法和你的视觉上的效果是一样的,就是不晓得内部是否一样的。
❽ sql用命令创建主键与外键,怎么操作
用命令创建主键与外键方法如下:
❾ SQL 给表插入主键
添加列语法:ALTER TABLE 表名
Add 列名 类型 ...
添加主键语法:ALTER TABLE 表名
ADD CONSTRAINT 主键名 PRIMARY KEY(列名)
ALTER TABLE testTable
Add Id int NOT NULL IDENTITY (1, 1)
go
ALTER TABLE testTable
ADD CONSTRAINT PK_Id PRIMARY KEY(Id)
go
也可以添加列时直接指定是主键 :
ALTER TABLE testTable
Add Id int NOT NULL IDENTITY (1, 1) primary key
go