oracle命令大全
Oracle 命令集合
制作人: 陈杉
1、 创建表空间:
create tablespace 表空间名称 datafile ‘文件地址以及文件名’ [ size ] [ autoextend [ on | off ] ];
注:【 size 】 表示要创建的表空间的大小。单位可以为 K 或者 M。
【 autoextend 】 表示创建的表空间是否为自动扩展类型。
2、 创建新用户:
create user 用户名 identified by 密码 [ default tablespace 表空间名 ] [ temporary tablespace 表空间名 ];
注:【default】 语句表示为新创建的用户分配一个默认的表空间;【tempporary】表示为新创建的用户提供一个临时的表空间。另外,如果创建数字账户,如 100、123 之类的登陆账户,那么需要将账户用双引号引起来例如:create user "101" indentified by 密码~~~~~~; 否则会出现“ORA-01935: 缺失用户或角色名”这样的异常。
3、 为新用户授予权限:
grant connect to 用户名; 表示授予用户连接数据库,创建表以及其他结构。
Grant resource to 用户名; 表示授予用户使用数据库空间的权限。
Grant select | update on emp to 用户名;
注:select 表示授予用户查询emp 表的权限,update 表示授予用户修改emp 表的权限。
4、 修改密码:
alter user 用户名 identified by 新密码;
5、 删除用户:
drop user 用户名 cascade ;
注:当用户拥有模式对象时必须使用 cascade;
6、 创建表:
create table 表名称 (字段1 类型,字段2 类型,……..字段N 类型);
7、 修改表结构:
alter table 表名称 madofy (列名 类型,………);
表示修改表中的类型和字段的大小。
alter table 表名称 add (字段 类型,……..);
表示向表中添加新列。
Alter table 表名称 drop column 列名称;
表示删除表中的现有列。
8、 清除表中所有数据:
truncate table 表名称;
truncate 命令和 delete 命令相似,都可以用于删除表中所有的记录,不同的是:truncate 命令表示删除表中所有记录并立即释放空间,而delete 则需要提交事务后才能释放空间,当确定数据无用时使用truncate 比使用delete 效率更高。
9、 查看表结构:
desc 表名称;
10、 删除表
drop table 表名称;
11、 查询无重复列:
select distinct 列名 from 表名;
12、 根据现有表创建新表:
create table 新表名 as select * from 旧表名;
注:改语句非常灵活,新表中的字段和数据根据查询语句而定。如: 可以将查询的 * 改为旧表中存在的列,可以在查询语句后添加where 条件以控制记录插入到新表。
13、 插入来自其他表的记录:
insert into 表名A select * from 表名B [ where 条件];
注:改语句要求表A要于表B具有相同的表结构。
14、 将表的操作权限授予给其他用户:
grant select | delete | update on 表名 to 用户名 [ whit grant option];
注:【with grant option】表示改授权用户可以将此权限授予其他用户。另外,改语句还可以只授予用户对某个表的某些列的修改权限,其语法如下:
grant update (列名1 ,列名2~~~) on 表名 to 用户名;
15、 撤销已授权用户的权限:
revoke select | update | insert on 表名 from 用户名;
16、 集合操作符:
a) union 操作符用于返回两个查询选定的所有不重复的行。例如:
select ID from 表名1 union select ID from 表名2;
b) union all 操作符用于返回两个查询选定的所有行。例如:
select ID from 表名1 union all select ID from 表名2;
c) inte