zoukankan      html  css  js  c++  java
  • PLSQL Developer使用技巧整理(转)


    一、工具-首选项-用户界面-编辑器-其它-显示行号
    二、工具-首选项-窗口类型-SQL窗口-显示隔号(行号)

    在使用PL/SQL Developer对Procedure进行Debug时,突然发现无法Setp Into。点击Setp Into,结果却运行结束,无法进行单步调试。纠结了半天,发现是编译的时候没有加入Debug信息造成的。

    在Debug程序之前,确保以下几点:
    1. 不要用sys用户去调试.
    2. 确保有debug connect session权限.
    3. 编译Procedure/Function/Package时需加入Debug信息.
        ALTER PROCEDURE/FUNCTION/PACKAGE NAME COMPILE DEBUG;

    Edit/Undo     Ctrl+Z
    Edit/Redo     Shift+Ctrl+Z
    Edit/PL/SQL Beautifier  Ctrl+W   (自定义)

           Shift+Home  选择光标位置到行首
           Shift+End  选择光标位置到行尾
           Ctrl+Shift+Home 选择光标位置到首行行首
           Ctrl+Shift+End 选择光标位置到尾行行尾
    Object:View     Shift+Ctrl+V 查看 (自定义)
    Object:Describe    Shift+Ctrl+D 结构 (自定义)
    Object:Properties   Shift+Ctrl+P 属性 (自定义)
    Object:Browse    Shift+Ctrl+B 浏览 (自定义)
    Object:Edit Data   Shift+Ctrl+E 编辑数据(自定义)
    Object:Standard Query  Shift+Ctrl+S 标准查询(自定义)

    Edit/Find Replace   Ctrl+F
    Edit/Find Next    Ctrl+L
    Edit/Find Previous   Shift+Ctrl+L
    Edit/Replace Next   Ctrl+P
    EDIT/Full Screen   Ctrl+F11
    Edit/Go to Line    Ctrl+G
    Edit/Next Tab Page   Ctrl+H
    Edit/Previous Tab Page  Shift+Ctrl+H

    Session/Execute    F8
    Session/Break    Shift+Esc
    Session/Commit    F10
    Session/Rollback   Shift+F10

    Debug/Toggle Breakpoint  Ctrl+B
    Debug/Start     F9
    Debug/Run     Ctrl+R
    Debug/Step Into    Ctrl+N
    Debug/Step Over    Ctrl+O
    Debug/Step Out    Ctrl+T

    Tools/Explain Plan   F5
    Tools/Code Assistant  F6

    Editor: Start of Document Ctrl+PgUp OR Ctrl+Home
    Editor: End of Document  Ctrl+PgDn OR Ctrl+End
    Editor: Delete Line   Ctrl+Y
    Editor: Navigate Back  Alt+Left
    Editor: Navigate Forward Alt+Right
    SQL Window: Previous SQL Ctrl+Up
    SQL Window: Next SQL  Ctrl+Down

    1. PL/SQL Developer记住登陆密码
    在使用PL/SQL Developer时,
    为了工作方便希望PL/SQL Developer记住登录Oracle的用户名和密码;
    设置方法:
      PL/SQL Developer->tools->Preferences->Oracle->Logon History,
      在右边界面的"Definition"中,"Store history"是默认勾选的,
      再勾选上"Store with password",即可.
    上述方法若不好用,使用下面的方式:
    在上面所说的界面中的"Fixed Users"中,
    添加需要直接选择后就可登录的用户名/密码@ORACLE_SID,
      如:
    cbsdb/cbsdb@cbsdb
      重新登录的时候,从Oracle Logon的登录界面的Username后面的...按钮处,
      选择需要登录的用户即可。
    2. 执行单条SQL语句(SQL Window中根据光标位置自动选择语句)
    在使用PL/SQL Developer的SQL Window时,按F8键,PL/SQL Developer默认是执行该窗口的所
    有SQL语句,需要设置为鼠标所在的那条SQL语句,即执行当前SQL语句;
    设置方法:PL/SQL Developer->tools->Preferences->SQL Window->Window types,
    勾上"AutoSelect Statement" 即可。
    注意,每条语句后面要加分号。

    3. 格式化SQL语句
    在使用PL/SQL Developer的SQL Window时,有时候输入的SQL语句太长或太乱,
    希望能用比较通用的写法格式话一下,这样看起来会好看些,也好分析;
    使用方法:
      选中需要格式化的SQL语句,然后点击工具栏的PL/SQL beautifier按钮即可.
    4. 查看执行计划
    在使用PL/SQL Developer的SQL Window时,有时候输入的SQL语句执行的效率,分析下表结构,
    如何可以提高查询的效率,可以通过查看Oracle提供的执行计划;
    使用方法:
      选中需要分析的SQL语句,然后点击工具栏的Explain plan按钮(即执行计划),
      或者直接按F5即可。

    5. 调试存储过程
    在使用PL/SQL Developer操作Oracle时,有时候调用某些存储过程,或者调试存储过程;
    调用存储过程的方法:
      首先,在PL/SQL Developer左边的Browser中选择Procedures,
      查找需要调用的存储过程;然后,选中调试的存储过程,点击右键,
      选择Test,在弹出来的Test script窗口中,
      对于定义为in类型的参数,需要给该参数的Value输入值;
      最后点击上面的条数按钮:Start debugger或者按F9;
      最后点击:RUN或者Ctrl+R。
      (具体要调式一个存储过程,请参照操作手册,这个大概说明下应用)。
    6. oralce精简客户端的使用
    要想PL/SQL连接oracle数据库,除了PL/SQL Developer 之外还需要Oracle客户端,
    有一个更方便的方法就是使用Oracle精简客户端,很多地方可以下载,文件很小,耗资源也少。
    安装完成后修改安装目录下的Oracleora90 etworkADMIN nsnames.ora文件:
    格式如下:
      DATABASE_NAME =
       (DESCRIPTION =
        (ADDRESS_LIST =
         (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
        )
        (CONNECT_DATA =
         #(SERVICE_NAME = dealer)
         (SID = SID_NAME)
         #(SERVER = DEDICATED)
        )
      )
    7. 关键字自动大写:
    了解一点编程的常识的人都知道,编码风格很重要。
    在阅读代码方面,保持一致的编码风格,阅读起来比较容易;
    在执行效率方面,保持一致的编码风格,更有可能被放到共享SQL区中,
    这样就提供了执行的效率。

    另外,信息系统的核心是数据库,系统出问题时最先要查的就是SQL语句,
    怎样在浩瀚的日志中快速找到那条SQL语句是件比较痛苦的事情。
    SQL语句全部大写并不能彻底解决这一问题,
    但在一堆代码中间找一行全部大写的字符相对容易些,你的眼睛会感谢你。
    设置也很简单:
      Tools->Preferences->Editor,将Keyword case选择Uppercase。
    我一般是让关键字大写,其他比如表名,字段名等都是小写。
    大家都应该养成一种自己的编码习惯,并保持下去。

    8. 右键菜单
    在PL/SQL Developer(下面简称PLD)中的每一个文本编辑窗口,
    如SQL Window,Command Window和Porgram Window,
    右键点击某个对象名称,会弹出一个包含操作对象命令的菜单,我们这里称之为右键菜单。
    对象类型可以是表,视图,同义词,存储过程和函数等。
    根据对象类型的不同,弹出的菜单也有区别。
    表和视图有View, Edit, Rename, Drop, Query data 和Edit data等功能。
    View和Edit分别是查看和修改表的结构信息,如字段,主键,索引和约束等。
    Query data相当于新打开一个窗口,并执行select * from 表。
    Edit data相当于新打开一个窗口,并执行select * from 表 for update。
    存储过程和函数有Test功能,选中后可以进入调试状态。
    有时由于PLD识别错误,右键点击对象并不能出来正确的菜单,
    可以在对象所在的DDL或DML语句的前面,加上分号,这样PLD就能正确的判断出对象的类型

    9. Select for Update
    有时我们需要把一些数据导入数据库中,如果用UE拼Insert语句,会比较麻烦,而且操作性不强。
    PLD的SQL Window可以查询,新增,修改和删除表的内容。
    查询自不必说,而新增,删除和修改,只需在select语句后加入for update,
    对表进行行级锁定,然后点击窗口的锁型图标,即可进入编辑状态。
    下面介绍一下如何从Excel中提取文本插入到数据库中,
    我们的Excel文件中有三列,在数据库中建立临时表:
      CREATE TABLE t1(
       cino varchar2(100),
       contno varchar2(100),
       loanno varchar2(100)
      )
    然后在SQL Window中输入select t1 for update,并点击锁型鼠标,进入编辑状态,
    用鼠标点击第一行的输入窗口,这时PLD会死锁几秒钟,
    然后可以见到光标在第一行的输入框中闪动,
    用鼠标把CINO, CONTNO, LOANNO选中,进入Excel中,把需要插入数据库的内容选中,
    然后切换到PLD,按Ctrl + V,点击√,然后再点击Commit按钮,
    则数据提交到表t1中,执行select * from t1可以看到内容.
    10. PL/SQL Beautifier(PL/SQL 美化器)
    PLD 6以上版本有对DML代码格式化的功能。
    在SQL Window或Program Window中选中部分代码(如果不选则对整个窗口的代码操作),
    在菜单中选Edit -> PL/SQL Beautifier,得到格式化的代码。
    对于非法的DML语句或DDL语句,PLD将会在下方状态栏提示:
    PL/SQL Beautifier could not parse text。
    在缺省的状态下,PLD会把DML语句的每一个字段都排在单独的一行,这样不方便查看。
    在菜单中选Edit à PL/SQL Beautifier Options,进入Preferences窗口,
    选择Edit,进入配置文件编辑界面,在标签栏选DML,
    在窗口中部的Select, Insert和Update组框中把Fit选中,然后点击Save,
    把配置文件保存到PLD的安装目录下,点击Close关闭。
    在Rules file中输入配置文件所在位置,点击OK,完成配置文件切换。
    这时再对代码进行格式化,就可以使每一个字段尽可能的在一行上了。
    11. TNS Names
    菜单Help->Support Info->TNS Names,可以查看Oracle的tnsnames.ora。

    12. Copy to Excel
    在SQL Window中执行Select语句,在结果出来以后,右键点击下面的数据区,
    选择Copy to Excel,可以把数据区的记录原样拷贝到Excel中。
    但有两点需要注意:
    (1) field中不能以=开始,否则Excel会误认为是函数;
    (2) 数字不要超过17位,否则后面的位数将会置为0,
      但可以通过在数字前加'来使Excel认为该field是文本,
      同时对于数据库中Numbe类型的字段,最好用to_char输出,不然可能会显示不正常;

    13. 保持上次打开的SQL脚本
    重新进入PL/SQL Developer时,Window List能打开上次退出时的文档:
    (1) 将菜单Tools->Window list选项勾上;
    (2) Tools->Perferences->User Interface->Options的右边,
      将"Autosave desktop"勾选.
    (3) 退出PL/SQL Developer重新进入.

    14. 快速找到已知表名的表或其他对象:
    在Tools菜单中,勾选上Object Browser,将对象浏览器打开,
    双击对象浏览器中的某个对象所处的文件夹,
    比如表都是在Tables文件夹中,
    然后以尽快的速度输入表名,即可找到以你输入的几个字母开头的对象了.

    15. 快速关闭打开于Windows List中的文档窗口:
    按住Shift键,左键点击需要关闭的文档窗口.

    16. PL/SQL DEVELOPER中的专用复制(Special Copy)
    如果你正在用 PL/SQL Developer 写 SQL 和 PL/SQL 代码,
    随后你又要在其它工具里使用代码,例如象 3GL 这样的程序设计语言,
    那么你可能需要把这些代码转换为稍微不同的格式。
    让我们假设你已经在 PL/SQL Developer 里写了并测试了这样一个SQL 语句:
      select  deptno, sum(sal) mgr_sal
      from  emp
      where  job = 'MANAGER'
      group by deptno
      order by mgr_sal desc

    例如,如果你要在Borland Delphi 里使用这个语句,你可能需要象这样的格式:
      SQL := 'select deptno, sum(sal) mgr_sal from emp' + #13#10 +
        'where job = ''MANAGER''' + #13#10 +
        'group by deptno' + #13#10 +
        'order by mgr_sal desc';

    为了这个目的,在PL/SQL DEVELOPER中选中已写好的SQL语句,鼠标右键,
    在弹出的菜单中找到 Special Copy。这个功能有一个子菜单,它显示了所有被定义的专用复制格式。
    在选择了格式之后,被转换的代码就被储存在剪贴板上了,
    这样你就可以粘贴它到相应工具的编辑器里了。
    专用复制格式被定义在 PL/SQL Developer 安装目录下的 SpecialCopy 子目录里。
    你可以改变预先确定的复制格式或者添加新的复制格式。
    仅仅简单地添加一个带有 .copy 扩展名的文本文件就可以了,
    它包含了一个针对 PL/SQL 代码第一行的变量
    (<line_1>)、一个针对 PL/SQL 代码最后一行的变量(<line_N>)
    和一个针对所有其它行的变量(<line_*>)。下面是一个针对 Borland Delphi 的例子:
      ;PL/SQL Developer SpecialCopy definition for Borland Delphi
      ;<line_1> for first line
      ;<line_*> for all other lines
      ;<line_N> for last line
      ;
      SQL := '<line_1>' + #13#10 +
      '<line_*>' + #13#10 +
      '<line_n>';

    第一行需要为指派到 SQL 的变量加上前言,接下来需要有一个 CR/LF 对。
    最后一行不需要有CR/LF 对,但需要用分号来终止。所有其它行仅仅需要 CR/LF 接在后面。
    如果 <line_1> 和 <line_n> 都与 <line_*> 一样,你可以忽略它们。
    在一些语言里,你需要对特定的字符使用换码序列。
    例如,在 C++ 里,你要对 tab字符(ASCII 码为 9)使用 。
    要定义这些换码序列,请使用 #define 关键词:
      #define char(9) =
      #define = \
      String("<line_1> ") +
      String("<line_*> ") +
      String("<line_n>");
    你还可以使用 "#define compress"来指出你要从结果里移除所有多余的空字符(空格、制表符和换行)。
    注意,.copy 文件的名字将被包括在菜单里,所以你应该使用描述性的文件名。

    17. 在PL/SQL DEVELOPER中复制行记录的简便方法
    (1) 单击要拷贝的行记录左边的黑色小三角,该行被选中,右键复制。
    (2) 粘贴至记事本里,然后复制刚才粘贴的内容。(该步骤不知何故不能缺)
    (3) 单击新记录左边的黑色小三角,右键粘贴即可。

    18. 快捷键定义的位置:
    Tools->Preferences->User Interface->Key configuration
    选中需要定义的Item,然后按一个快捷键组合即可,
    如果所按的快捷键已有定义,会有提示,这时候Cancel,另外选择快捷键组合即可;
    通常情况下,打开PLSQL Developer后,最经常干的事就是打开SQL Window和Command Window,
    就给这两个操作定义了快捷键, ALT+S 和 ALT + C,这样拿鼠标点三下的事情只需要按一下键。
    设置方法:
      菜单Tools -> Preferences -> Key Configuration

    注意:
      如果设置了快捷键不起作用,
      回到Tools -> Preferences -> Key Configuration界面,
      点击最上方的"Default Administrator"右边的"..."按钮,
      在弹出的"Preference Set"界面中,对"Personal Preferences"
      以及下面的"Definition"->"Description"进行一下设置.

    19. 在窗口标题栏内显示文件的完全路径
    Tools->Preferences->User Interface->Options
    勾选"Show complete file path in windows titles"

    20. Object Brower中自定义Object的顺序以及登录后默认自动选中My Objects  
    默认情况下,PL/SQL Developer登录后,Brower里会选择All objects,
    如果你登录的用户是dba,要展开tables目录,正常情况都需要Wait几秒钟,
    而选择My Objects后响应速率则是以毫秒计算的。
    设置方法:
      Tools菜单 -> Object Brower Filters,会打开Define Browser Filters界面,
      选中"My Objects",并勾选 "Default" 设为默认即可。
      Tools菜单 -> Object Brower Folders,会打开Define Browser Folders界面,
      这里可以把经常用到的几个目录(比如:Tables Views Seq Functions Procedures)
      移得靠上一点,并加上颜色区分,这样你的平均寻表时间会大大缩短,试试看。

    21. 双击即显示表数据
    鼠标双击表或者视图时的默认响应实在让我感到失望,因为我最关心的是表结构和数据,
    但是双击后这两件事情都没有发生,也许默认响应是高手们需要的,
    但对我来说查看数据和表结构是最主要的,其他的我不关心。
    不过好的是这是可以设置的,你可以给鼠标双击和拖放绑定需要的事件,
    比如:双击编辑数据,拖放显示表结构,Yeah!
    设置方法:
      菜单Tools -> Preferences -> Object Browser,
      在右侧,为不同的Object Type绑定双击和拖放操作。

    22. 去掉注释的斜体样式:
      菜单Tools -> Preferences -> User Interface->Editor
      在右边的界面中"Syntax Highlighting"下,去掉"Comment"右边的"Italic"的勾选.

    23.数据库自动检测连接情况

    因为数据库每过一段时间不操作,就会自动断开,然后需要自己手动连接,因为网络原因,总会卡在那里。工具提供了检测连接的功能,可以自动连接。
    具体设置在Tools-Preferences-Check connection,Check connection前面勾选即可。

    http://www.cnblogs.com/juddhu/archive/2012/03/17/2403893.html

  • 相关阅读:
    Oracle 导入导出报错的简单处理
    Windows 下面 winrar 压缩简单记录
    zip 与 unzip的简单使用
    [知乎]山东:一枚神奇独一的“三棱锥”
    【喷嚏图卦】 委内瑞拉崩溃的背后:渐行渐近的石油危机
    [互联网]2018年互联网套路简史
    [wiki]陶德曼调停
    [阮一峰]找回密码的功能设计
    sap 最新财报以及云业务转型情况
    debian 7 安装 rz sz lrzsz
  • 原文地址:https://www.cnblogs.com/softidea/p/4178008.html
Copyright © 2011-2022 走看看