对ODB管理工具(SQL*Plus和iSQL*Plus)的简单认识和应用

本文深入探讨SQL*Plus的功能、启动与登录方法、输入命令、使用实例、连接数据库、交互命令及iSQL*Plus的使用,同时提供关键命令与标签的解释。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SQL*Plus

一。SQL*Plus可以实现以下功能:

  输入SQL命令,对SQL*Plus环境进行配置;
  输入、编辑、存储、读取和运行SQL命令和PL/SQL块;
  与终端用户进行交互式的操作;
  将查询结果输出到报表表格中,设置表格格式和计算公式;
  启动和关闭数据库;
  连接数据库;
  定义变量;
  捕捉PL/SQL程序的错误;
  列出表的列定义;
  执行数据库管理。

二,启动SQL*PLUS

  1.在命令行运行SQL*PLUS

    语法如下:
     cmd:  sqlplus [username]/[password][@server][AS SYSDBA|AS SYSOPER]

  2.在Windows环境中运行SQL*PLUS

     win+R下:sqlplus [username]/[password]

三,登录界面

    主机字符串(网络服务名):

包含C:\oracle\product\10.2.0\client_1\NETWORK\ADMIN\tnsnames.ora

ORCL =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = BDE7YF5O35PYVS9)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SID = orcl)
      (SERVER = DEDICATED)
    )
  )

四。退出

    命令:exit 或者 quit 或者使用菜单命令,选择”文件”->”退出”命令

五,输入命令

可以在SQL*PLUS的命令提示符下,输入三种类型的命令:
  SQL命令:用于操作数据库中的信息


  PL/SQL块:用于操作数据库中的信息


  SQL*PLUS命令:用于编辑、保存、运行SQL命令、PL/SQL 块、格式化查询结果、自定义SQL*PLUS环境等。

六,使用SQL*Plus

    查看所有Oracle数据库的名称和创建日期

      select name,created from V$database;

七,相关命令

    List:显示SQL*Plus缓冲区中的一行或多行命令

    Save: Save as “sql文件”

    edit: 只有在SQL缓冲区中有内容时才能启动((当执行SQL命令和PL/SQL块时,会将命令暂时存放到SQL缓冲区中(在输入另一个命令之前一直存放在SQL缓冲区中))((具体操作:在SQL*PLUS命令行下输入某些内容,按回车键;输入edit命令,按回车键,启动编辑器;在记事本编辑器中编辑命令,然后选择“文件”->“保存”,再选择“文件”->“退出”命令,退出编辑器;在SQL*PLUS命令提示符下输入run命令或(/),按回车键。))

            run :SQL缓冲区保留了最后运行的命令。为了以缓冲区方式运行SQL命令或PL/SQL 块,可以使用RUN命令、/命令或菜单命令进行操作。

        / : SQL缓冲区保留了最后运行的命令。为了以缓冲区方式运行SQL命令或PL/SQL 块,可以使用RUN命令、/命令或菜单命令进行操作。

   

 

八,运行命令

  在SQL*PLUS中,可以使用三种方式运行SQL语句和PL/SQL 块,分别是:
      命令行方式 : 以命令行运行SQL语句,只要在输入完SQL语句之后,输入分号(;),或在新的一行输入前斜线(/),按回车键即可。
      SQL缓冲区方式 : 以命令行方式运行PL/SQL块,只需要在输入完PL/SQL块之后,在新的一行输入前斜线(/),按回车键即可
      脚本文件方式: 

       1.  START命令:  START filename[.ext][arg1,arg2,arg3…].

                    filename表示:要运行的脚本文件。SQL*PLUS就使用默认的脚本文件扩展名,通常为.sql。

                    [arg1,arg2,arg3…]表示:希望传递给脚本文件的参数

               (脚本文件中的替换参数必须使用这样的格式声明:&1,&2,&3等。)

          2.    @命令:

                @命令的功能与START命令类似,区别在于:@命令既可以在SQL*PLUS会话内部运行,也可以在命令行运行,

                                    而START命令只能在SQL*PLUS会话内部运行。

九,连接命令

  1. CONN[ECT]:建立连接(CONN[ECT] [username]/[password]@[hoststring])如果用户是sys时,需要加上【as sysdba】或【as sysoper】选项

  如以system用户连接之后,如果要查看scott方案中的对象,就要在对象前使用”scott.”作为前缀,否则提示不能访问。
但如果以用户scott的身份连接数据库实例后,再访问该方案中的对象时,就不再需要前缀

切换用户scott时碰到以下提示,可以用以下命令解决: 

   2. DISC[ONNECT]命令会断开当前的连接,但不会退出SQL*PLUS

      

十,交互命令

    替换变量:替换变量的格式是在变量名称前加一个&

    定义替换变量: 可以事先用DEFINE命令定义替换变量,避免在运行命令或脚本文件时出现反复提示、反复输入的麻烦。

    查看替换变量: 可以用DEFINE命令查看当前SQL*PLUS变量中保留的替换变量的情况

    清除替换变量: 可以用UNDEFINE命令来清除用DEFINE定义的替换变量

           与用户通信:  PROMPT命令用于输出提示信息,以便于使用户了解脚本文件的功能和运行情况。
          PAUSE命令用于暂停脚本文件的运行。
          ACCEPT命令可以让用户指定替换变量的类型(如CHAR,NUMBER,DATE等),用PROMPT选项指定提示信息,

          HIDE选项隐藏输入,以便于用户输入替换变量。

    绑定变量: 使用VARIABLE命令来定义绑定变量(当在SQL语句或PL/SQL块中使用绑定变量时,必须在绑定变量前加冒号(:)当直接给绑定变量赋值时,需要使用EXECUTE命令。)

输出绑定变量:  使用print命令输出绑定变量

 

 

iSQL*Plus

  iSQL*Plus是Web版的SQL*Plus(打开iSQL*Plus之前,应首先启动OracleOraDb10g_home1iSQL*Plus服务。)

  在浏览器中输入:

.....................

 

下面是在iSQL*Plus中不可以使用的SQL*PLUS的命令:

ACCEPT                    CLEAR SCREEN                              EXIT
 GET                           HOST                                        PASSWORD
 PAUSE                       SAVE                                           SPOOL
 STORE       WHENEVER OSERROR EXIT      WHENEVER SQLERROR EXIT

下面是在iSQL*PLUS中不可以使用的SET命令:

 

COLSEP                         EDITFILE                             FLUSH  NEWPAGE                        PAUSE                                SHIFTINOUT  SQLBLANKLINES        SQLCONTINUE                   SQLNUMBER  SQLPREFIX                   SQLPROMPT                         SUFFIX  TAB                                TERMOUT                             TIME  TRIMOUT                        TRIMSPOOL     

 

 

分享“与用户通信.sql”: http://pan.baidu.com/share/link?shareid=417057&uk=3912660076

    

 

转载于:https://www.cnblogs.com/wjshan0808/archive/2013/04/12/3014961.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值