1、 启动SQL*plus
(1)SQL*plus是oracle自带的在window下的图形界面工具,首先可以再开始菜单中运行sql*plus软件运行,然后输入登录名以及密码就能登录进去。可以再plus中运行所有的sql语句以及pl/sql语句
(2) 在命令行启动sql*plus:cmd->在dos界面中运行sqlplus,然后输入用户名还有密码就能进入sql*plus,这个跟通过菜单运行的sql*plus是一样的。
2、 sql*plus的使用
a) 创建用户:首先,想要在sql*plus中创建用户,必须用管理员身份登录,执行下面语句:conn system/oracle as sysdba;(这个语句执行后便是以管理员的身份登录了),然后便是创建用户:create user store identified by store;
b) 授权用户:grant conn,resource,create view to store(GRANT connect,resource TO 用户名)
c) 显示当前用户:show user
d) 显示当前链接的数据库:select SYS_CONTEXT('USERENV','INSTANCE_NAME')from dual;
e) 切换当前用户:conn 用户名/密码
f) 删除用户:drop user 用户名
g) 解锁用户:alter user 用户名account unlock;
h) 锁定用户:alter user 用户名account lock;
i) 修改用户密码:alter user 用户名 identified by 密码
j) 帮助指令:help index
还有下面的一些快捷的操作
l R(un)或/ 运行缓存sql指令
l L(ist)显示缓存内容
l A 追加内容到缓存
l C 更新缓存内容
l CL BUFF 清除
l Sqlplus的文件支持指令:
l Sav(e) 文件名 : 保存缓存内容到指定文件中(APPEND追加 REPLACE 替换
l St(art)或@ 文件名: 运行一个文件
l Get 文件名:只载入不运行
l Ed(it):。。。
l Spo 文件名 / spo off : 将结果输出到指定文件中
l Sva[E] filename[{REPLACE|APPEND}]:将plus缓冲区的内容保存到有filename指定的文件中。APPEND选项说明缓冲区的内容追加到一个现有的文件之后,REPLACE选项说明覆盖一个现有文件
l GET filename:将filename中的内容读到sql*plus中
l STA[RT] filename:将文件中的内容读到sql*plus中并且运行该内容
l @filename:也是将文件中的内容读到sql*plus中
l Edit:修改缓冲区中的内容,并运行。
3、格式化
Column{column|alias}[options]
格式化选项
l FOR[mat]format:该列或别名的显示格式设置为由format字符串指定的格式
l HEA[DING]heading:将列或别名的标题中的文本设置为有heading字符串指定的格式
l JUS[TIFY][{LEFT|CENTER|RIGHT}]:将列输出设置为左对齐、居中或右对齐
l WAP[PPED]:在输出结果中将一个字符串的末尾换行显示。该选项可能导致单个单词跨越多行
l WOR[D_WPAPPED]:与WRAPPED选项类似,不同之处在于单个单词不会跨越两行
l CLE[AR]:清楚列的任何格式化。
3、 设置页面大小
a) Set pagesize 100;
4、 设置行显示的大小
a) Set linesize 100
5、 清除格式
a) Column product_id clear
6、 使用变量
a) 临时变量:sql*plus并不保存,用&定义临时变量,这个能提示用户输入一个值,然后这个值便存在临时变量中
i. 控制输出行:set verify off 如果输入前面的指令,就会禁止显示原行或者新行
ii. 修改定量定义字符:set define命令用于指定一个除字符&之外的字符用来定义变量。例子:SET DEFINE # SELECT product_id,name,price FROM products WHEREproduct_id=#v_product_id;
iii. 使用变量替换表名和列名。例如:SELECT name,&v_col FROM &v_tableWHERE &v_col=&v_val;
b) 已定义的变量:
i. 使用DEFINE命令定义并查看变量
ii. 使用ACCEPT命令定义并设置变量:该命令用于等待用户为变量输入一个值。该命令既可以将现有的变量设置为一个新值,也可以定义一个新变量,并使用一个值对该变量进行初始化。ACCEPT variable_name [type] [FORMAT format][PROMPT prompt][HIDE]
7、 创建简单的报表
a) 在脚本中使用临时变量
b) 在脚本中使用已定义的变量
c) 向脚本中的变量传递值
d) 添加页眉和页脚
i. _DATE:显示当前日期
ii. SQL.USER:显示当前用户
iii. SQL.PNO:显示当前页
iv. LEFT、CENTER和RIGHT:对齐文本
v. SKIP2:跳过2行
8、 计算小计
a) BREAK ON子句可以让sql*plus根据列值的范围输出结果
b) COMPUTE子句可以让sql*plus计算一列的值。
9、 从sql*plus获取帮助信息
a) Help