网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
本月文章推荐
.Linux双启动环境的陷井.
.顺利开发数据仓库的七个步骤.
.Oracle数据库中使用DBMS_PROFILE.
.ORACLE中实现ASCII字符串和16进制.
.ORACLE常用傻瓜問題1000問(之四).
.快速解决"Oracle"数据库中的常见.
.Oracle中利用EXP/IMP工具实现数据.
.使用Oracle基础架构 在医疗行业运.
.如何导入指定表.
.带你轻松接触Oracle执行计划的相.
.保持Oracle数据库优良性能的若干.
.简单查询和联合查询两方面介绍查.
.Oracle 9i 数据库管理实务讲座(一.
.利用散列法来处理大的静态统一表.
.前高管曝甲骨文内幕:走马换将渠.
.Oracle体系框架及SQL语句性能探讨.
.Oracle分析函数学习笔记3.
.自己动手写操作系统(一).
.为何我的导出文件只有500K,导入时.
.Oracle 10g RAC与SLES9.

SQLPlus命令使用指南(一)

发表日期:2008-2-9



  
熟悉Oracle的朋友都知道,SQL PLUS是一个重要的和ORACLE打交道的工具。SQL PLUS本身有很多命令,可以帮助我们做很多事情,包括产生一些规格化的报表、提供人机交互等等。下面,我就简单地说明一下,供大家参考:

一 帮助命令

   HELP可以帮助我们,查找SQL PLUS每个命令的用法

举例:

SQL> help accept

 

 ACCEPT

 ------

 

 Reads a line of input and stores it in a given user variable.

 

 ACC[EPT] variable [NUM[BER] CHAR DATE] [FOR[MAT] format]

   [DEF[AULT] default] [PROMPT text NOPR[OMPT]] [HIDE]

 

二  SQLPLUS的人机交互命令

在SQLPLUS里可以接受用户的输入,最常用的命令有:

(1)   ACCEPT

接受整行的数据。

语法:ACC[EPT] variable [NUM[BER]CHARDATE] [FOR[MAT] format]

    [DEF[AULT] default] [PROMPT textNOPR[OMPT]] [HIDE]

举例说明:

角本1.sql,查出工资大于输入金额的雇员。

SET FEEDBACK OFF

SET PAUSE OFF

ACCEPT sal NUMBER PROMPT 'Please input salary(weekly): '

select employee_id,last_name,first_name,salary from employee

where salary>&sal;

在SQLPLUS 中运行

SQL> @c:\1.sql

Please input salary(weekly): 1000

old   2: where salary>&sal

new   2: where salary>      1000

 

EMPLOYEE_ID LAST_NAME    FIRST_NAME          SALARY

----------------- ------------------- ----------------------------- ----------

       7499 ALLEN           KEVIN                 1600

       7505 DOYLE           JEAN                  2850

       7506 DENNIS          LYNN                  2750

       7507 BAKER           LESLIE                2200

       7521 WARD            CYNTHIA               1250

       7555 PETERS          DANIEL                1250

       7557 SHAW            KAREN                 1250

       7560 DUNCAN          SARAH                 1250

       7564 LANGE           GREGORY               1250

       7566 JONES           TERRY                 2975

7569 ALBERTS         CHRIS                 3000

注:

① ACCEPT接受一行的输入,并且把输入的数据根据指定按照指定的类型存放到变量(如不存在,自动创建一个)中。


② FOMRAT用于制定输入的数据格式,如数字可以指定’999.99’,字符可以指定长度’A10’

③ 假如类型是CHAR,长度最大240。

 

(2)   PROMPT

输出提示信息。

语法:PRO[MPT] [text]

举例:

SQL> PROMPT Hello,world

Hello,world

(3)   PAUSE

输出一行信息,并等待用户输入回车。

语法:PAU[SE] [text]

举例:

SQL> PAUSE Please press [RETURN]

Please press [RETURN]

 

SQL>

 

三 编辑命令

通过SQL PLUS发送的最后一次SQL语句都会保存在SQL PLUS的一个数据缓冲区内,而SQLPLUS命令不包括在内可以通过编辑命令进行编辑。

(1)   /

重新执行一下sql 语句。

(2)   APPEND

在命令缓冲区内,追加字符。

举例:

SQL> select * from tab;

….

SQL> A  WHERE taBType='VIEW'

  1* select * from tabwhere tabtype='VIEW'

SQL> /

 

TNAME                          TABTYPE  CLUSTERID

------------------------------ ------- ----------

PLSQL_PROFILER_GRAND_TOTAL     VIEW

PLSQL_PROFILER_LINES_CROSS_RUN VIEW

PLSQL_PROFILER_NOTEXEC_LINES   VIEW

PLSQL_PROFILER_UNITS_CROSS_RUN VIEW

SALES                          VIEW

 

(3)   LIST或;

列出缓冲区内的内容,list可以列出某行的内容,而;则是所有的。

举例:

SQL> ;

  1  select * from tab WHERE tabtype='VIEW'

  2* ORDER BY tname

SQL> l 2

  2* ORDER BY tname

(4)   INPUT

增加一行内容

举例:

SQL> i  ORDER BY tname

SQL> l

  1  select * from tab WHERE tabtype='VIEW'

  2* ORDER BY tname

(5)   CHANGE

把当前行的第一个艘索到的内容替换新的内容,

语法:C[HANGE] sepchar old [sepchar [new[sepchar]]]

举例:

SQL> l

  1* select * from employee where salary>1000 and salary<2000

SQL> c/salary/sal

  1* select * from employee where sal>1000 and salary<2000

注重,当缓冲区有两行的时候,用C替换的是最后一行里的内容。

(6)   Edit

在指定的文本编辑器里,编辑缓冲区的内容。Windows上,缺省是NOTEPAD。

(7)   SPOOL

把输出结果,指定到一个文件中,有点像DOS命令下的>

SPO[OL] [file_name[.ext] OFF OUT]

SQL> spool c:\1.txt

SQL> select * from tab;

SQL> spool off

 

四 执行命令

(1)   @

载入角本,运行。


举例:

SQL>@C:\1.SQL

(2)   EXECUTE

运行PL/SQL过程和程序包。

 

待续。

 

Enhydraboy

enhydraboy@yahoo.com.cn

 
上一篇:Oracle笔记 人气:809
下一篇:在oracle9i,如何在PL/SQL中读写文件 人气:720
浏览全部Oracle教程的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐