Oracle数据库的DDL操作
DDL(Data Definition Language)数据表的创建以及管理
Data Definition Language (DDL) statements are used to define the database structure or schema. Some examples:
·CREATE- to create objects in the database
·ALTER- alters the structure of the database
·DROP- delete objects from the database
·TRUNCATE- remove all records from a table, including all spaces allocated for the records are removed
·COMMENT- add comments to the data dictionary
·RENAME- rename an object
Oracle中的数据类型
数据类型
关键字
备注
字符串
Varchar2(n)
字符串的长度是n
整数
Number(n)
N为整数
小数
Number(n,m)
M位小数n-m位整数
日期
Date
日期
大文本
CloB
海量文字(4G)
大对象
BloB
存储二进制数据
(1) CREATE TABLE表名称
(
列名称1数据类型,
列名称2数据类型,
列名称3数据类型,
....
)
(2) ALTER TABLE名称ALTER TABLE —更改表属性
ALTER TABLE table [ * ]
ADD [ COLUMN ] column type [ FIRST | AFTER COLUMN ]
ALTER TABLE table [ * ]
MODIFY [ COLUMN ] column type
ALTER TABLE table [ * ]
DROP [ COLUMN ] column
ALTER TABLE table [ * ]
ALTER [ COLUMN ] column { SET DEFAULT value | DROP DEFAULT }
ALTER TABLE table [ * ]
RENAME [ COLUMN ] column TO newcolumn
ALTER TABLE table
RENAME TO newtable
(3) Drop
drop tabletable_name purge//这样删除的数据不会进入回收站相当于永久删除而drop table table_name这样删除的数据在oracle中会存在回收站中 在原表中会有痕迹Oracle中提供了闪回技术(FLUSHBACK)可恢复不小心删除的数据集体语法如下:
FlushBack Table table_name to before drop
查看回收站:
Show Recyclebin;
清空回收站:
Purge Recyclebin
直接删除回收站里面的数据:
Purge table table_name
(4) TRUNCATE;
截断表删除的数据不会恢复相当于在内存中放弃了这张表所占用的资源不同于Delete操作的是Delete掉的数据可以通过事务的回滚(Rollback)而截断表是不行的具体语法如下:
Truncate table table_name;
(1)COMMENT
事务的提交
事务的概念:事务是由一系列操作序列构成的程序执行单元,这些操作要么都做,要么都不做,是一个不可分割的工作单位。(一系列操作的集合)
事务以Begin transaction开始,以Commit work或 Rollback work结束。Commit work表示提交,事务正常结束。Rollback work表示事务非正常结束,撤消事务已做的操作,回滚到事务开始时状态。
(2)RENAME
Rename old_table_name to new_table_name;