08-Oracle-DDL

nobility 发布于 2022-09-27 1695 次阅读


DDL

不会受到事务的控制,创建数据表后自动commit

数据类型 含义
VARCHAR2(n) 最多n个字符
NUMBER(n,m) 最多n位,有m个小数位
DATE 日期和时间
CLOB 大文本数据(4G)
BLOB 二进制数据(4G)多媒体文件

语法:

CREATE TABLE 表名 (
	列名称 数据类型[DEFAULT 默认值],
    列名称 数据类型[DEFAULT 默认值],
    ...
    列名称 数据类型[DEFAULT 默认值]
); 

表的复制

CREATE TAB 表名 AS 子查询;
--此处子查询不需要加括号
--只复制表结构就编写一个不会返回数据的子查询

数据字典

dba_users
--用户信息
v$database
--数据库信息

--/app/oracle/admin/实例名称/pfile/init.ora.0192020115156
--数据库实例的启动初始化参数文件

表名称修改(只有Oracle支持)

语法:

RENAME 旧表名 TO 新表名

删除和闪回表

语法:

DROP TABLE 表名[PURGE];
--删除表,加上PURGE是彻底删除
PURGE TABLE 表名;
--删除回收站的表
PURGE RECYCLEBIN
--清空回收站
SHOW RECYCLEBIN
SELECT object_name,original_name,droptime FROM user_recyclebin;
--查看回收站
FLASHBACK TABLE 表名 TO BEFORE DROP;
--闪回表

表结构修改

语法:

ALTER TABLE 表名称 ADD (
	列名称 数据类型[DEFAULT 默认值],
	列名称 数据类型[DEFAULT 默认值]...
)
--不设置默认值,默认为null
--设置默认值,默认为默认值
--会触发事务锁
ALTER TABLE 表名称 MODIFY (
	列名称 数据类型[DEFAULT 默认值],
	列名称 数据类型[DEFAULT 默认值]...
)
--修改字段类型,若想有缩小字段长度或修改类型需要列为空
ALTER TABLE 表名称 DROP COLUMN 字段名称;
--删除字段,不管有没有数据,都会被删除
此作者没有提供个人介绍
最后更新于 2022-09-27