plsql运行sql语句

plsql运行sql语句

ID:22998308

大小:89.00 KB

页数:15页

时间:2018-11-02

plsql运行sql语句_第1页
plsql运行sql语句_第2页
plsql运行sql语句_第3页
plsql运行sql语句_第4页
plsql运行sql语句_第5页
资源描述:

《plsql运行sql语句》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、plsql运行sql语句PLSQL怎么执行SQL语句通过f5查看到的执行计划,其实是pl/sqldeveloper工具内部执行查询plan_table表然后格式化的结果。select*fromplan_tableent_id=...。其中description列描述当前的数据库操作,objectoe表示操作的对象,cost列表示当前操作的代价(消耗),这个列基本上就是评价sql语句的优劣,cardinality列表示操作影响的行数,bytes列表示字节数篇二:plsqldeveloper工具使用教程plsql入门pl

2、/sql的概述pl/sql的优势pl/sql是一种块结构的语言,允许你将业务逻辑封装在一起,这是到目前为止使用pl/sql的最大优势pl/sql是在服务器上运行,可以与数据库和sql引擎直接进行交互,pl/sql是什么?(procedurallanguage/sql)是oracle在标准的sql语言上的扩展,pl/sql不仅允许嵌入sql语言,还可以定义变量和常量,允许使用条件语句和循环语句,允许使用列外处理各种错误,这样使得它的功能变得更加强大。特性:减少java程序的复杂性一.过程,函数,触发器是pl/sql编写

3、的二.过程、函数、触发器是在oracle中三.pl/sql是非常强大的数据库过程语言四.过程,函数可以再java程序中调用为什么学?a)提高应用程序的运行性能b)模块化的设计思想[分页的过程,订单的过程,转账的过程]c)减少X络传输量(传统的方法,用sql语句传输!现在就只需要调用存储过程)d)提高安全性(传统sql可以看到表名字段等…)不好:移植性不好,(你写好的存储过程,函数等当我们要换数据库时,这些东西就没用了)开发工具:1.sqlplus开发工具是oracle公司提供的一个工具,这个因为我们在以前介绍过:2.

4、pl/sqldeveloper开发工具pl/sqldeveloper是用于开发pl/sql块的集成开发环境(ide)它是一个独立的产品,而不是oracle的一个附带品,createproceduresp_pro1//存储过程名字isbegin---执行部分insertintomytestvalues(‘’,’’);end;/查看错误信息shol语句不能实现自己的需求,比如需要动态建表或某个不确定的操作需要动态执行。这就需要使用动态sql来实现。本文通过几个实例来详细的讲解动态sql的使用。本文适宜读者范围:oracl

5、e初级,中级系统环境:os:l和事务控制的语句中可以直接使用sql,但是ddl语句及系统控制语句却不能在pl/sql中直接使用,要想实现在pl/sql中使用ddl语句及系统控制语句,可以通过使用动态sql来实现。首先我们应该了解什么是动态sql,在oracle数据库开发pl/sql块中我们使用的sql分为:静态sql语句和动态sql语句。所谓静态sql指在pl/sql块中使用的sql语句在编译时是明确的,执行的是确定对象。而动态sql是指在pl/sql块编译时sql语句是不确定的,如根据用户输入的参数的不同而执行不同

6、的操作。编译程序对动态语句部分不进行处理,只是在程序运行时动态地创建语句、对语句进行语法分析并执行该语句。oracle中动态sql可以通过本地动态sql来执行,也可以通过dbms_sql包来执行。下面就这两种情况分别进行说明:一、本地动态sql本地动态sql是使用executeimmediate语句来实现的。1、本地动态sql执行ddl语句:需求:根据用户输入的表名及字段名等参数动态建表。createorreplaceprocedureproc_test(table_nameinvarchar2,--表名field1

7、invarchar2,--字段名datatype1invarchar2,--字段类型field2invarchar2,--字段名datatype2invarchar2--字段类型)asstr_sqlvarchar2(500);beginstr_sql:=’createtable’

8、

9、table_name

10、

11、’(’

12、

13、field1

14、

15、’’

16、

17、datatype1

18、

19、’,’

20、

21、field2

22、

23、’’

24、

25、datatype2

26、

27、’)’;executeimmediatestr_sql;--动态执行ddl语句exceptionber

28、(8)notnull’,’name’,’varchar2(100)’);sql>descdinya_test;----------------------------------------idnumber(8)namevarchar2(100)ysql>到这里,就实现了我们的需求,使用本地动态sql根据用户输入的表名及字段名、字段

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。