Oracle的DDL,DML语句
来源:互联网 发布:湖南网络作家协会 编辑:程序博客网 时间:2024/04/29 00:04
一。数据字典
Select object_name,object_type from user_objects;
user_objects当前用户所拥有的所有对象。不包含你建立的public对象。
select table_name from user_tables;
user_tables你自己的表,你有一切的权利。你所拥有的表。
select * from tab; tab你所拥有的表和视图,显示的较简洁,列较少。
二。
在现有表的基础上建立表
Create table t2 as select ename name,sal salary from emp;
当t2诞生时就会有子查询中所查出的数据。
如果想改变列的名称,请用别名。
如果不想要数据,只建立表结构,请加一个假条件。
Create table t3 (c1,c2,c3) as
Select ename,empno,sal from emp where 9=1;
修改表结构
如果列为null,可以随便修改列的类型和宽度。
如果有数据,修改会受到限制。但不会破坏数据。
如果不改变数据类型,只改变宽度的话加大是可以的。
alter table t1 modify(name char(4));
修改表的名称
rename t1 to t_1; 必须是表的owner才可以修改表名称
修改列的名称(10g才可以) alter table t3 rename column c1 to name;
Drop table t2; 并没有将表真的删除,只是改了名称。
显示回收站的信息
SQL> show recyclebin
SELECT * FROM USER_RECYCLEBIN;
将回收站的表还原
FLASHBACK TABLE t2 TO BEFORE DROP;
还原表的同时修改表的名称。
FLASHBACK TABLE T2 TO BEFORE DROP RENAME TO TT2;
清空回收站内指定的表
PURGE TABLE T2;
清除当前用户的回收站,不会影响其它用户的回收站
PURGE RECYCLEBIN;
绕过回收站,彻底的删除表,在10G前是没有回收站的,就是彻底的删除。回收站内没有的表是不容易
恢复的,我只能取备份来恢复了。
Drop table t2 PURGE;
Insert的进一步学习
将一张表的数据分别插入到多张表中
insert all
into e1 values(ename,sal,hiredate)
into e2 values(ename,deptno,mgr)
select ename,sal,hiredate,deptno,mgr
from emp where deptno=10;
All的含义为:emp表中的一行将插入到e1,e2中
insert first
when sal>3000 then
into e1 values(ename,sal,hiredate)
when sal>2000 then
into e2 values(ename,deptno,mgr)
select ename,sal,hiredate,deptno,mgr
from emp ;
First的含义为:一行只能给一张表,即使两个表的条件都符合
- Oracle的DDL,DML语句
- oracle DML、DDL语句区别
- 谈谈对oracle处理DDL和DML语句的事务管理
- 关于Oracle处理DDL和DML语句的事务管理
- Oracle的DML、DDL、DCL
- Oracle之DML和DDL语句
- sql重要的DML和DDL语句
- MySQL备注不熟悉的DML|DDL 语句
- 数据库的 DML DDL DCL DQL语句
- DML DDL DCL语句
- DDL DML DCL语句
- DDL DML DCL语句
- DDL DML DCL语句
- DDL DML DCL语句
- DDL DML DCL语句
- 关于oracle ddl dml的说明
- Oracle DML和DDL锁的解决方法
- oracle中DDL DML DCL的区别
- linux icotl函数解析
- 并发与共享
- C#类中static变量
- iOS 6.0旋转兼容
- OpenCV入门例子 反色显示图像
- Oracle的DDL,DML语句
- 利用dokan作虚拟磁盘开发
- DM8148 开发记录 五 dsp 端调试成功
- 【Java常用类库】_Arrays笔记
- 过程执行DDL语句提示ORA-01031错误
- 搜狗&大街网面经
- 鼠标悬浮<a>标签隐藏左下角链接内容
- 难了我两个月的海豚浏览器面试题,终于解决了。
- DSP28x_usDelay()