Oracle的一些基础操作
1、创建用户
>create user 用户名 identified by 密码
创建用户(细节) 例子: sql> create user AA identified by m123
default tablespace users
temporary tablespace temp quota 3m on users;
identified by 表明该用户AA将用数据库方式验证 default tablespace users //用户的表空间在users上 temporary tablespace temp //用户shunping的临时表健在temp 空间 quota 3m on users //表明用户AA建立的数据对象(表,索引,视图,pl/sql块..)最大只能是3m 刚刚创建的用户是没有任何权限的,因此,需要dba给该用户授权. sql>grant connect to AA 如果你希望该用户建表没有空间的限制 sql>grand resource to AA 如果你希望该用户成为dba sql>grant dba toAA
2 给用户修改密码
概述:如果给自己修改密码可以直接使用 sql>password 用户名
如果给别人修改密码则需要具有dba的权限,或是拥有alter user的系统权限
sql>alter user 用户名 identified by 新密码
3删除用户
概述:一般以dba的身份去删除某个用户,如果用其它用户去删除用户则需要具有 drop user的权限。
比如 drop user 用户名 【cascade】
4、给用户授权
grant connect,resource to 用户,
给用户撤销权利
revoke connect,resource from 用户
5、(1)帐户锁定
概述: 指定该帐户(用户)登陆时最多可以输入密码的次数,也可以指定用户锁定的时间(天)一般用dba的身份去执行该命令 例子:指定scott这个用户最多只能尝试3次登陆,锁定时间为2天,让我们看看怎么实现。
创建profile文件 sql> create profile lock_account limit failed_login_attempts 3 password_lock_time 2;
sql>alter user tea profile lock_account;
2)给帐户(用户)解锁
sql> alter user tea account unlock;
(3)终止口令 为了让用户定期修改密码可以使用终止口令的指令来完成,同样这个命令也需要dba身份来操作. 例子:给前面创建的用户tea创建一个profile文件,要求该用户每隔10天要修改自家的登陆密码,宽限期为2天。看看怎么做.
sql> create profile myprofile limit password_life_time 10 password_grace_time 2; sql>alter user tea profile myprofile
(4) 删除profile 概述:当不需要某个profile文件时,可以删除该文件.
sql> drop profile profile文件名
7、用户进入数据库
conn 用户名/密码@orcl (as sysdba);
8、用户断开连接
>disc;
>exit;断开连接并且退出管理界面
9、创建一张表
create table(
id number(5),
name nvarchar2(20)
);
10、修改表中的表结构
a、修改表名
rename a to b;
b、修改表字段名字
alter table a rename column b to c;
c、修改字段的属性
alter table a modify (字段 新属性);
d、增加一个字段
alter table a add(address nvarchar2(20));
e、删除一列
alter table a drop column 字段名;
f、删除一个表
drop table a;
g 、查看表结构
>desc 表名;
11、复制一个表
create table a as select * from b ;(这样是复制b表的表结构和b表中的数据)
creatr table a as select * from b where 1=2;(这样写是只复制b表的表结构,因为1不等于2不会成立,所以查不到表b中的数据)
insert into a select * from b;(这样是把b表中的数据全部复制到a表中,注意这样写两个表的表结构必须全部一致)
insert into a(id,name) select id,name from b where id=1;
蠕虫复制:为了增加自己本身的数据insert into a select * from a;