ORACLE表格创建,修改,删除

ORACLE表格创建,修改,删除

数据定义语言(DDL),包括create创建命令,alter修改命令,drop删除命令等。(主要针对表的对象结构)

表的数据类型:

  1、字符串类型

    char   --默认一个字符长度

    char(10)----该字段为10个字符长度,分配了10个长度,只用到5个长度的话,剩下的会自动用空格补全

    varchar2(50)--分配了50个长度,只用到5个长度的话,剩下的不会占用

  2、数字类型

    number              --默认38位

    number(10)   -- 10位整数长度

    number(5,2)--总长度为 5 ,小数部分为 2,整数部分 3  (0~999.99)

  3、日期类型

    date

    timestamp

创建表:

  CREATE TABLE 表名(字段名1 字段类型(长度),

            字段名2 字段类型(长度),
            字段名3 字段类型(长度),
          ...);

创建一个图书表:
  CREATE TABLE BOOK(BNO NUMBER(5),
            BNAME VARCHAR(20),
            RUDATE DATE,
            BPRICE NUMBER(10,2)
  );

  

--复制备份表
  CREATE TABLE 表名 AS 查询的结果集(SELECT);
--备份一份emp表

  CREATE TABLE EMP_ZHI AS SELECT * FROM EMP;  

  

--只复制表的结构
CREATE TABLE EMP_SC AS SELECT * FROM EMP WHERE 1=2;

 

--删除表(表结构,对象)
DROP TABLE EMP_SC;

--清空表(数据)
TRUNCATE TABLE 表明
TRUNCATE TABLE EMP_ZHI;

--修改表

ALTER 针对表结构的修改

1、修改表的字段名称

将EMP_ZHI表的EMPNO字段改为EMP

ALTER TABLE EMP_ZHI RENAME COLUMN EMPNO TO EMP;

 2、字段类型的修改

ALTER TABLE EMP_ZHI MODIFY EMP VARCHAR(8);--可以改大,也可以改小,但是不能小于当前所存在的最大值长度
ALTER TABLE EMP_ZHI MODIFY EMP NUMBER(20)--当列中有值的时候,只能改大不能改小

3、增加一个字段

ALTER TABLE 表名 ADD 字段名 字段类型;

ALTER TABLE EMP_ZHI ADD RUZI_DATE DATE;

4、删除一个字段

ALTER TABLE 表名 DROP COLUMN 字段名;

ALTER TABLE EMP_ZHI DROP COLUMN RUZI_DATE;

5、修改表明

ALTER TABLE 表名 RENAME TO 新表名

ALTER TABLE EMP_ZHI RENAME TO EMP_SSS;

例题:复制一整自己的emp表

  并将EMPNO的字段长度修改小于原表

  --先复制一张表

  CREATE TABLE EMP_XB AS SELECT * FROM EMP;

  --添加一个新的字段

  ALTER TABLE EMP_XB ADD TEMP NUMBER(10);

  --将EMPNO的数据复制到TEMP

  UPDATE EMP_XB SET TEMP = EMPNO;

  --将EMP_XB表格的EMPNO更新为空

  UPDATE EMP_XB SET EMPNO = NULL;

  --修改EMPNO的字段类型(向下)

  ALTER TABLE EMP_XB MODIFY EMPNO NUMBER(5);

  --将TEMP的数据复制到EMPNO

  UPDATE EMP_XB SET EMPNO = TEMP;

  --将TEMP字段删除

  ALTER TABLE EMP_XB DROP COLUMN TEMP;

 

 

posted @ 2021-12-14 13:34  左叔  阅读(274)  评论(0编辑  收藏  举报