设为首页 收藏本站
查看: 779|回复: 0

[经验分享] PL/SQL Developer实用技法 (转)

[复制链接]

尚未签到

发表于 2016-11-12 02:33:27 | 显示全部楼层 |阅读模式
Oracle数据库相信已成为很多企业构建自身关键业务的重要后台支撑,也是众多开发人员常常采用的后台。但Oracle自己提供的一套客户端工具不是很好用,极大的影响了工作效率,幸好现在有了PL/SQL Developer这款工具。现在越来越多的开发人员成了它的忠实fans。本文就是立足于实用的基础上,总结了了改工具的常用技巧:

类SQL PLUS窗口:File->New ->Command Window 这个类似于oracle的客户端工具sql plus,但用比它好用多了;

关键字自动大写:Tools->Preferences->Editor,将Keyword case选择Uppercase。这样在窗口中输入sql语句时,关键字会自动大写,而其它都是小写。这样阅读代码比较容易,且保持良好得编码风格,同理,在Tools->Preferences->Code Assistant里可以设置数据库对象的大写、小写,首字母大写等;

查看执行计划:选中需要分析的SQL语句,然后点击工具栏的Explain plan按钮(即执行计划),或者直接按F5;这个主要用于分析SQL语句执行效率,分析表的结构,便于为sql调优提供直观依据;

使用自定义快捷键:PL/SQL Developer也可以像其他IDE那样使用自定义快捷键提高编写代码效率,节省时间。
如我们平时在sql窗口中使用最频繁的 select * from 我们就可以设置一个快捷键来简化select * from的输入。
     1).建立一个文本文件shortcuts.txt,并写入如下内容:
          s = SELECT * FROM
          sc = SELECT count(*) FROM
          复制代码另存到PL/SQL Developer的安装路径下的~\PlugIns目录下
     2).Tools-->Preferences-->User Interface-->Editor-->AutoReplace,选中Enable复选框,然后浏览文件选中之前创建的shortcuts.txt,点击Apply
     3).重启PL/SQL Developer,在sql窗口中输入s+空格,sc+空格做测试


执行单条SQL语句:PL/SQL Developer 7.1.2 -->tools->Preferences-->Window types ,勾上“AutoSelect Statement”。在使用PL/SQL Developer的SQL Window时,按F8键,PL/SQL Developer默认是执行该窗口的所有SQL语句,需要设置为鼠标所在的那条SQL语句,即执行当前SQL语句;


格式化SQL语句:选中需要格式化的SQL语句,然后点击工具栏的PL/SQL beautifier按钮。有时候输入的SQL语句太长或太乱,希望能用比较通用的写法格式话一下,这样看起来会好看些,也好分析;


右键菜单:在PL/SQL Developer(下面简称PLD)中的每一个文本编辑窗口,如SQL Window,Command Window和Porgram Window,右键点击某个对象名称,会弹出一个包含操作对象命令的菜单,我们这里称之为右键菜单。对象类型可以是表,视图,同义词,存储过程和函数等;

Select for Update 及其粘贴功能:有时我们需要把一些数据导入数据库中,如果用UE拼Insert语句,会比较麻烦,而且操作性不强。例子介绍一下如何从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可以看到内容;

TNS Names:菜单Help -> Support Info ->TNS Names,可以查看Oracle的tnsnames.ora;

Copy to Excel:在SQL Window中执行Select语句,在结果出来以后,右键点击下面的数据区,选择Copy to Excel,可以把数据区的记录原样拷贝到Excel中。
但有两点需要注意:
      1).field中不能以=开始,否则Excel会误认为是函数;
      2).数字不要超过17位,否则后面的位数将会置为0,但可以通过在数字前加‘来使Excel认为该field是文本,同时对于数据库中Numbe类型的字段,最好用to_char输出,不然可能会显示不正常记住登陆密码:为了工作方便希望PL/SQL Developer记住登录Oracle的用户名和密码;设置方法:PL/SQL Developer 7.1.2 ->tools->Preferences->Oracle->Logon History , “Store history”是默认勾选的,勾上“Store with password” 即可,重新登录在输入一次密码则记住了;

调试存储过程:在使用PL/SQL Developer操作Oracle时,有时候调用某些存储过程,或者调试存储过程;
调用存储过程的方法:首先,在PL/SQL Developer左边的Browser中选择Procedures,查找需要调用的存储过程;然后,选中调试的存储过程,点击右键,选择Test,在弹出来的Test script窗口中,对于定义为in类型的参数,需要给该参数的Value输入值;最后点击上面的条数按钮:start debugger 或者按F9;最后点击:RUN 或者Ctrl+R ;

oralce精简客户端的使用:要想PL/SQL连接oracle数据库,除了PL/SQL Developer 之外还需要Oracle客户端,有一个更方便的方法就是使用Oracle精简客户端,很多地方可以下载,文件很小,耗资源也少。安装完成后修改安装目录下的\Oracle\ora90\network\ADMIN\tnsnames.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) ))。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-298928-1-1.html 上篇帖子: SQL注入程序代码 下篇帖子: 关于SQL Server2000 1433端口连接失败问题的解决
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表