zoukankan      html  css  js  c++  java
  • Oracle SQLPlus命令

    对于Oracle数据库操作主要使用的是命令行方式,而所有的命令都使用sqlplus完成,对于sqlplus有两种形式。

    • 一种是dos风格的sqlplus:sqlplus.exe;
    • 另一种是windows风格的sqlplus:sqlplusw.exe;

    在Oracle 10g之中主要使用的是sqlplusw命令,因为其可以进行一些显示数据的调整。

        

    此时会找到默认的已经可以使用的数据库实例。

    范例:输入查询指令

    SELECT * FROM emp;

    此时的数据已经可以正常的显示,但是依然会存在数据折行的问题,因为这个是默认的每行的数据大小,而现在可以通过两个命令进行调整:

    • 设置每行显示的记录长度:SET LINESIZE 300;
    • 设置每页显示的记录长度:SET PAGESIZE 30;

    以后这两个命令统一被称为格式化命令,但是这些格式化命令在sqlplus下的设置并不是很明显。

    但是sqlplusw虽然显示上方便一些,可是对于命令的编辑上却不是很方便,如正常的操作,命令写错了,则肯定使用方向键移到错误的位置上进行修改,但是在sqlplusw之中,方向键只能控制屏幕的移动,所以这个命令根本就不适合于编辑,所以在sqlplusw之中提供了ed和@指令,可以进行记事本的调用和执行;

    • 使用ed,调用记事本程序:ed a;

          此时会提示用户说,现在找不到“a.sql”的文件,询问是否创建,选择“是”,但是使用ed打开记事本之后 ,Oracle中的sqlplusw窗口会进入到阻塞状态,无法使用。

    • 使用@执行程序:@a;

          但是在windows之中,由于提供了许多方便的编辑软件,所以一般会在外部编辑程序,例如,现在在D盘上建立一个demo.txt的文件,里面保存程序代码。

          这个时候要读取在硬盘上的文件,则必须写上完整的路径:@D:demo.txt,而且如果现在这个文件的后缀是“*.sql”的话,则不用输入文件后缀(demo.sql),输入:@d:demo,或者更省事直接输入:@d:demo。

    在一个数据库之中,会有许多的用户(现在已知的是四个用户),这每一个用户下都会有多张自己的数据表,所以要想查看所有的数据表,则可以使用如下的命令:

    SELECT * FROM tab;

    而且由于用户众多,所以如果要想知道当前的登录用户,则可以使用:SHOW USER; 命令完成。

    而且在sqlplusw之中也可以直接进行用户的登录切换,使用如下的语法完成:

    CONN 用户名/密码 [AS SYSDBA];

    使用sys用户登录:CONN sys/change_on_install AS SYSDBA;

    但是,一旦使用了sys连接之后,则无法直接查询emp表数据。

    对于每一张表,都有其属于的用户,所以一张表的完整名称是“用户名.表名称”或者说是“模式名.表名称”,所以不同的用户要想访问其他用户的表,则应该加上用户名,即现在的访问名称:

    SELECT * FROM scott.emp;

    一旦使用了超级管理员登录的话,可以通过命令手工的控制数据库实例的打开和关闭;

    • 关闭数据库实例:SHUTDOWN IMMEDIATE;
      • 一旦关闭之后用户无法直接连接sqlplusw命令,此时可以先使用“/nolog”登录,之后使用管理员登录;
    复制代码
    SQL> conn sys/sys as sysdba;
    已连接。
    SQL> shutdown immediate;
    数据库已经关闭。
    已经卸载数据库。
    ORACLE 例程已经关闭。
    SQL> 
    复制代码

    •  启动数据库实例:STARTUP;

    另外,sqlplusw命令窗口也可以调用本机的操作命令,使用“host”作为前缀。

    HOST COPY d:demo.sql d:hello.txt

    以上命令必须掌握,以后肯定会使用到。

  • 相关阅读:
    【Java EE 学习 36】【struts2】【struts2系统验证】【struts2 ognl值栈】【struts2 ongl标签】【struts2 UI标签】【struts2模型驱动和令牌机制】
    【Java EE 学习 35 下】【struts2】【struts2文件上传】【struts2自定义拦截器】【struts2手动验证】
    【Java EE 学习 35 上】【strus2】【类型转换器】【struts2和Servlet API解耦】【国际化问题】【资源文件乱码问题已经解决】
    【Java EE 学习 34】【struts2学习第一天】
    【JavaScript中的正则表达式】
    【Java EE 学习 33 下】【validate表单验证插件】
    【Java EE 学习 33 上】【JQuery样式操作】【JQuery中的Ajax操作】【JQuery中的XML操作】
    【Java EE 学习 32 下】【JQuery】【JQuey中的DOM操作】
    【Java EE 学习 32 上】【JQuery】【选择器】
    【Java EE 学习 31】【JavaScript基础增强】【Ajax基础】【Json基础】
  • 原文地址:https://www.cnblogs.com/lc1776/p/9156303.html
Copyright © 2011-2022 走看看