01 使用CREATE TABLE命令创建基本表
CREATE TABLE STU(
SNO VARCHAR2( 10 ) NOT NULL ,
SNAME VARCHAR2( 10 ) ,
SGENTLE VARCHAR2( 2 ) ,
SBIRTH DATE ,
SDEPT VARCHAR2( 20 ) ) ;
02 使用ALTER TABLE命令增加新字段
ALTER TABLE STU
ADD SMAJOR VACHAR2( 20 )
DEFAULT '计算机科学与技术'
NOT NULL ;
03 使用ALTER TABLE命令修改字段
ALTER TABLE STU
MODIFY SNAME VARCHAR2( 15 )
DEFAULT '无'
NOT NULL ;
04 使用ALTER TABLE命令删除字段
ALTER TABLE STU
DROP COLUMN SBIRTH;
05 重命名基本表
RENAME STU TO STU1;
ALTER TABLE STU1
RENAME TO STU;
06 复制相同结构表
CREATE TABLE STU1
AS
SELECT * FROM STU WHERE 1 = 2 ;
CREATE TABLE STU2
AS
SELECT * FROM STU WHERE ROWNUM < 1 ;
CREATE TABLE STU3
AS
SELECT * FROM STU;
07 使用DROP TABLE命令删除表
DROP TABLE STU1;
DROP TABLE STU2;
DROP TABLE STU3;
08 创建主键约束
CREATE TABLE STU(
SNO VARCHAR2( 10 ) PRIMARY KEY ,
SNAME VARCHAR2( 10 ) ,
SGENTLE VARCHAR2( 2 ) ,
SAGE NUMBER( 2 ) ,
SBIRTH DATE ,
SDEPT VARCHAR2( 20 ) ) ;
ALTER TABLE STU
ADD CONSTRAINT PK_STU
PRIMARY KEY ( SNO) ;
09 创建唯一约束
CREATE TABLE STU(
SNO VARCHAR2( 10 ) PRIMARY KEY ,
SNAME VARCHAR2( 10 ) UNIQUE ,
SGENTLE VARCHAR2( 2 ) ,
SAGE NUMBER( 2 ) ,
SBIRTH DATE ,
SDEPT VARCHAR2( 20 ) ) ;
ALTER TABLE STU
ADD CONSTRAINT UN_SDEPT
UNIQUE ( SDEPT) ;
10 创建CHECK约束
CREATE TABLE STU(
SNO VARCHAR2( 10 ) PRIMARY KEY ,
SNAME VARCHAR2( 10 ) ,
SGENTLE VARCHAR2( 2 ) CHECK ( SGENTLE = '男' OR SGENTLE = '女' ) ,
SAGE NUMBER( 2 ) ,
SBIRTH DATE ,
SDEPT VARCHAR2( 20 ) ) ;
ALTER TABLE STU
ADD CONSTRAINT CK_STU
CHECK ( SNO > = '1000' AND SNO <= '9999' ) ;
11 创建外键约束
CREATE TABLE CLASS(
CLASSNAME VARCHAR2( 20 ) PRIMARY KEY ) ;
CREATE TABLE STU(
SNO VARCHAR2( 20 ) PRIMARY KEY ,
CLASSNAME FOREIGN KEY ( CLASSNAME) ,
REFERENCES CLASS( CLASSNAME) ,
SNAME VARCHAR2( 10 ) ,
SAGE NUMBER( 2 ) ,
SBIRTH DATE ) ;
ALTER TABLE STU
ADD CONSTRAINT FK_STU
FOREIGN KEY ( CLASSNAME) REFERENCES CLASS( CLASSNAME) ;
12 删除约束
ALTER TABLE TABLENAME
DROP CONSTRAINT CONSTRAINTNAME;
13 为字段设置默认值
CREATE TABLE STU(
SNO VARCHAR2( 10 ) NOT NULL ,
SNAME VARCHAR2( 10 ) ,
SGENTLE VARCHAR2( 2 ) DEFAULT '男' ,
SBIRTH DATE ,
SDEPT VARCHAR2( 20 ) ) ;
ALTER TABLE STU
MODIFY SMAJOR DEFAULT NULL ;
14 添加注释
COMMENT ON TABLE STU IS '' ;
COMMENT ON COLUMN STU. SNAME IS '' ;