2、ORACLE的sqlplus相关命令
8、SqlPlus常用命令(命令中[]里的部分可省略)
(1)show user;
显示当前登录用户名
(2)Conn[ect] scott/tiger;
切换用户,格式为 [用户名/密码]
(3)Disconn[ect];
断开当前用户与oracle的连接,但是不退出sqlPlus窗口
(4)Exit
断开与oracle的连接,同时退出sqlPlus窗口
(5)passw[ord] scott;
修改scott用户的密码,前提是用户为sys或system
(6)set linesize 140;
设置行的最多显示字符(oracle默认为80)
(7)&交互式输入
例子:Select * from [表名] where [列名]=’&abc’;
可以交互式地输入abc的值
(8)edit d:/aa.sql
编辑d盘下的aa.sql文件,如果没有则新建一个
(9)Spool
将屏幕上显示的记录,保存到文件中后分析
用法如下:
①、Spool on;打开spool功能
②、Spool d:/bak.sql; 定义文件位置
③、Select * from emp;执行命令操作
④、Spool off;关闭spool功能
(10)set pagesize 100;
设置每页显示为100行
9、oracle用户管理
(1)Create user [用户名] identified by [密码];创建普通用户,用户密码不能以数字开头。Oracle中刚创建的用户是没有任何权限的,不能登陆,需要管理员分配权限。
(2)给用户分配权限
①、Grant create session to xiaoming;分配登陆权限
②、Grant connect to xiaoming;将connect的角色赋予给xiaoming
(3) 表空间
一个表空间属于一个数据库
(4)oracle管理机制
(5)创建一张表,并插入数据
①、Grant resource to zl;首先要赋予权限
②、Create table users(id number);创建一个表名为users的表,括号里的为(字段1 类型;字段2 类型...)
③、Insert into users values(666);插入666
(6)回收角色
Revoke connect from zl;从zl回收connect角色
Revoke resource from zl;
(7)删除用户
Drop user zl [cascade]
如果要删除的用户自己已经创建过数据对象,那么在删除用户的时候需要加cascade参数,代表把用户所创建的数据对象一并删除。
(8)方案
当一个用户创建好后,如果该用户创建了任意一个数据对象,这时,我们的DBMS就会建一个对应的方案与该用户对应,方案名和用户名一致
①、Grant select on emp to zl;赋予zl用户查询scott的emp表的权限,这个操作要在scott用户下完成
②、Select * from scott.emp;用zl用户查询scott所属的emp表,不带scott.的话,默认查询的是自己的方案里的表
③、Grant select on scott.emp to tea with grant option; (with grant option)代表得到权限的用户,可以把权限继续分配给其他用户
With admin admin;系统权限的分配
(9)profile文件对口令进行管理
①、Create profile zl limit failed_login_attempts 3 password_lock_time 2;创建zl的profile文件,如果登陆3次失败则锁定2天
Alter user scott profile zl;对scott用户分配zl文件
Alter user scott account unlock;使用system账户解锁tea用户
②、create profile zl_2 limit password_life_time 10 password_grace_time 2;创建zl_2文件,设置密码的最长使用期限为10天,宽限期为2天
Alter user scott profile zl_2;对scott生效zl_2文件
③、drop profile zl_2 cascade;删除zl_2这个profile文件,使用zl_2这个文件的用户将自动重新指定default profile文件。