oracle sqlplus环境基本配置

 

   

 

1.忘记数据库sid(system identifier 系统标识符)问题:

可以在注册表中的HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraDb11g_home1中找到oracle_sid的值

HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE这个值中存放的是oracle安装产品和运行环境、参数设置的注册项

HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\Oracle in OraDb11g_home1  存放的是oracle中odbc的注册项

 

 

2.oracle中文件

C:\app\Administrator\admin 文件夹下每个数据库都有一个以数据库名称(即DB_NAME的值)命名的子文件夹,如orcl,其中的pfile文件夹中保存初始化参数文件

C:\app\Administrator\cfgtoollogs 文件夹中存放当运行dbca、emca、netca等图形化配置程序时的日志。

C:\app\Administrator\diag是一个重组之后的文件夹、基本上oracle的每个组件都有了自己的单独的文件夹,无论是asm、crs、rdbms还是lsnrctl和tnslsnr所有逐渐需要被用来诊断的log文件都放在这个文件夹中。

C:\app\Administrator\product 是oracle RDBMS(Relational Database Management System)软件的存放文件夹。

 

 

3.sqlplus

C:\app\Administrator\product\11.2.0\dbhome_1\sqlplus\admin\help中的helpus.sql中保存了sqlplus所有命令的帮助信息;运行helpus.sql这个脚本文件就可以安装帮助信息,用户可以通过查看该脚本文件了解sqlplus的各个命令的使用方法。

 

4.sqlplus命令:

在sqlplus 中输入help index 即可显示所有的sql*plus命令 ( help[?]  命令  即可查询帮助)

   A.常用到的是desc[ribe]命令 用来查看表、视图、同义词等对象的描述。

   B.#的使用:有时候在sql*plus中输入了很长的sql语句后,突然发现想起来某个列的名字了,可以在下一行以#开头,就可以在输入sql语句的过程中临时运行一个         sql*plus命令,执行完成以后再继续输入刚才的sql语句

   C.关于文件的操作命令有:sav[e] 、 get、 edit、 spo[ol]、 start或者@:

      spo 可以将sql*plus中的各种操作及运行结果复制到filename[.ext]所指定的文件中,默认的扩展名为:.lst默认路径和sqlplus.exe程序中的路径相同

   D.与start、@命令不同,get命令将文件读入sql缓冲区再执行,所以读入文件中不能有sql*plus命令,只能有sql语句,pl/sql块,且语句结尾不需要“;”最后一行只     能是“/”不然无法执行。  start filename.sql或者filename.ext 可以指定脚本文件的完整路径。@命令即可以在sqlplus中执行也可以在操作系统的命令提示符中执    行而start只能在sqlplus中执行。如:在dos中输入 sqlplus scott/tiger @d:\script.sql 20 50   注释:20 50是运行脚本文件传递的参数。

 

 

 5.交互式命令:

  1>.sqlplus允许在sql语句中定义替换变量,格式是在变量名称之前加一个&  如:select &a from dept where deptno =20 and job ='&b';在对字符或日期数据类型的列使用替换变量时,应保证在sql语句中将这些替换变量用单引号括起来,如上例,否则用户就需要在输入时用单引号将输入的数据括起来,以保证最后的sql语句的格式正确。

   变量替换:def[ine]|[variable = text]命令定义替换变量并赋值;

   def c=clerk

   select ename from emp where deptno = 20 and job ='&c';用define c可以查看替换变量c的情况;define可以查看oracle变量的设置;用undefine命令清楚该变量

   2>.用户通信命令:

     prompt、pause、 accept

     prompt [text] 将指定的提示信息text或者一个空行输出到屏幕上,以便用户及时了解脚本文件的功能和运行情况;

     pause [text]  将用于暂停脚本文件的运行,将指定的提示信息text或者一个空行输出到屏幕上,等待用户按enter键响应后继续执行;

     accept用法:

     eg:

    undefine pwd a b

    accept pwd prompt '请输入密码: ' hide

    define pwd

    prompt

    prompt 显示xx部门xx工种的员工姓名

    prompt =======================

    prompt

    pause '按<enter>键继续'

    accept a number prompt '请输入部门编号:'

    accept b char prompt '请输入工种名称:'

    define a

    define b

    select ename from emp where deptno =&a and job = &b;

绑定变量命令 : variable     

 6.sqlplus系统设置命令 :

   show、set

   系统变量:arraysize、autocommit、colsep、echo、feedback、heading、headsep、linesize、newpage、pagesize、pause、serveroutput、time、timming、

   trimspool、underline、verify

 

 

 

--注释部分
REMARK crtreport.sql
REMARK 用脚本文件生成报表举例
--设置环境变量
REMARK SET termout off
SET pagesize 18 linesize 80
SET feedback 20
SET underline =
--格式化列
COLUMN deptno HEADING 部门编号 JUSTIFY CENTER FORMAT 0000
COLUMN ename HEADING 雇员|姓名 JUSTIFY CENTER FORMAT 	A10
COLUMN sal HEADING 每月|工资 JUSTIFY CENTER FORMAT  $9999.99
COLUMN comm HEADING 奖金 JUSTIFY CENTER FORMAT $9999.99
-- 现在重复行和使用汇总行
BREAK ON deptno
COMPUTE SUM LABEL 小计: OF sal ON deptno
COMPUTE MAX LABEL 最大值: OF comm ON deptno
COMPUTE SUM LABEL 总计: OF sal ON REPORT
COMPUTE SUM LABEL 最大值计: OF comm ON REPORT
--获取系统当前日期
COLUMN today NEW_VALUE reptoday
SELECT TO_CHAR(sysdate,'YYYY-MM-DD') today FROM dual;
--标题和脚注
REPHEADER CENTER "雇员工资报表" SKIP 1 -
           CENTER reptoday SKIP 1
BTITLE RIGHT "第" FORMAT 99 	SQL.PNO "页"
--输出保存到文件d:\report.txt
SPOOL D:\report.txt
--清除屏幕
CLEAR SCREEN
--SQL命令
SELECT deptno ,ename,sal,comm FROM emp ORDER BY deptno;
--输出结果
SPOOL off
--清除用户自定义的环境、列格式、输出
REMARK SET termout ON
SET pagesize 14 linesize 80
SET feedback 6
SET underline "-"
CLEAR COLUMNS
CLEAR BREAKS
CLEAR COMPUTES
REPHEADER OFF 
BTITLE OFF
 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值