大数据数据蛙数据分析每周作业

SQL基础3:ORACLE、sqlserver、DB2、mysq

2019-12-03  本文已影响0人  夜希辰

目录:
一、ORACLE
二、sqlserver
三、DB2
四、mysql
五、主键定义及作用

一、ORACLE

1、创建表的同时创建主键约束

(1)无命名

create table student (
 studentid int primary key not null,
 studentname varchar(8),
 age int);

(2)有命名

create table students (
  studentid int ,
  studentname varchar(8),
  age int,
  constraint yy primary key(studentid));
2、表建好后添加主键
 alter table 表名 add constraint 主键名 primary key(主键字段);

例:

alter table jack add constraint pk_id primary key(object_id);
3、删除主键
 ALTER TABLE 表名 DROP CONSTRAINT 主键名;

例:

ALTER TABLE jw_jxrw_wxlsrwkcb DROP CONSTRAINT PK_JW_JXRW_WXLSRWKCB;

二、sqlserver

1、创建表的同时创建主键约束

(1)无命名

CREATE TABLE Personsfff
(
Id_P int primary key NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CONSTRAINT pk1_PersonID PRIMARY KEY (Id_P,LastName)
)

(2)有命名

CREATE TABLE Personsfff
(
Id_P int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CONSTRAINT pk1_PersonID PRIMARY KEY (Id_P,LastName)
)
2、表建好后添加主键
alter table 表名 add constraint 主键名 primary key(字段名1,字段名2……)

例:

alter table Personsfff add constraint PK_Personsfff primary key(Id_P)
3、删除主键
alter table 表名 drop constraint 主键名

例:

alter table jw_jxrw_wxlsrwkcb DROP constraint PK_JW_JXRW_WXLSRWKCB;

三、DB2

1、创建表的同时创建主键约束

(1)无命名

CREATE TABLE YWYJ201910.EIMS_EMERGENCY_ENTER  ( 
    SID         VARCHAR(50) primary key NOT NULL,
    ENTERID     VARCHAR(50) NOT NULL,
    DATA_TYPE   VARCHAR(25) NOT NULL,
    DEPT_NAME   VARCHAR(100),
    ENTER_SID   VARCHAR(50),
    CONSTRAINT PK_EIMS_EMERGENCY_ENTER PRIMARY KEY(SID)
)

(2)有命名

CREATE TABLE YWYJ201910.EIMS_EMERGENCY_ENTER  ( 
    SID         VARCHAR(50) NOT NULL,
    ENTERID     VARCHAR(50) NOT NULL,
    DATA_TYPE   VARCHAR(25) NOT NULL,
    DEPT_NAME   VARCHAR(100),
    ENTER_SID   VARCHAR(50),
    CONSTRAINT PK_EIMS_EMERGENCY_ENTER PRIMARY KEY(SID)
)
2、表建好后添加主键
ALTER TABLE  表名 ADD constraint 主键名 primary key(主键字段)

例:

ALTER TABLE  XZXK.XZXK_ITEM_DATATABLE_160 ADD constraint PK_ID primary key(DATATABLEID)
3、删除主键
alter table 表名 drop primary key

例:

alter table db2inst1.aaa drop primary key

四、mysql

1、创建表的同时创建主键约束

(1)单字段主键

CREATE TABLE EIMS_EMERGENCY_ENTER  ( 
    SID         VARCHAR(50) primary key  NOT NULL,
    ENTERID     VARCHAR(50) NOT NULL,
    DATA_TYPE   VARCHAR(25) NOT NULL,
    DEPT_NAME   VARCHAR(100)
)

(2)联合主键

CREATE TABLE EIMS_EMERGENCY_ENTER  ( 
    SID         VARCHAR(50)   NOT NULL,
    ENTERID     VARCHAR(50) NOT NULL,
    DATA_TYPE   VARCHAR(25) NOT NULL,
    DEPT_NAME   VARCHAR(100),
    primary key(SID,ENTERID)
)

mysql中不能创建命名主键

2、表建好后添加主键
ALTER TABLE <数据表名> ADD PRIMARY KEY(<列名>);

例:

ALTER TABLE EIMS_EMERGENCY_ENTER ADD PRIMARY KEY(SID);
3、删除主键
ALTER  TABLE  TABLE_NAME  DROP  PRIMARY  KEY;

例:

ALTER  TABLE  EIMS_EMERGENCY_ENTER  DROP  PRIMARY  KEY;

五、主键定义及作用

数据库主键,指的是一个列或多列的组合,其值能唯一地标识表中的每一行,通过它可强制表的实体完整性。
主键主要是用于其他表的外键关联,以及本记录的修改与删除。
当创建或更改表时可通过定义 PRIMARY KEY 约束来创建主键。一个表只能有一个 PRIMARY KEY 约束,而且 PRIMARY KEY 约束中的列不能接受空值。
由于 PRIMARY KEY 约束确保唯一数据,所以经常用来定义标识列。

作用:
1)保证实体的完整性;
2)加快数据库的操作速度
3)在表中添加新记录时,DBMS会自动检查新记录的主键值,不允许该值与其他记录的主键值重复
4)DBMS自动按主键值的顺序显示表中的记录。如果没有定义主键,则按输入记录的顺序显示表中的记录

上一篇下一篇

猜你喜欢

热点阅读