过程练习 1:导入型形式参数(in类型)CREATE OR REPLACE PROCEDURE raise_salary(p_id IN emp.empno%TYPE)IS--变量声明BEGINUPDATE emp SET sal = sal * 1.1WHERE empno = p_id;END raise_salary;/--存储过程的调用:EXECUTE raise_salary (7839
转载
精选
2015-06-18 15:02:35
640阅读
Oracle存储过程 EXECUTE IMMEDIATE中使用引号
原创
2022-06-15 16:20:42
2016阅读
前言QQ群讨论的时候有人遇到这样的问题:where子句中无法访问Oracle自定义的字段别名。这篇博客就是就这一问题做一个探讨,并发散下思维,谈谈SQL语句的执行顺序问题。问题呈现直接给出SQL代码和执行error直观来看。[sql] view plaincopyprint?
select ename name from emp where name = 'SIMTH';哦,晃眼而过,可能并不会
原创
2013-06-21 07:47:00
1556阅读
点赞
前言 QQ群讨论的时候有人遇到这样的问题:where子句中无法访问Oracle自定义的字段别名。这篇 博客就是就这一问题做一个探讨,并发散下思维,谈谈SQL语句的执行顺序问题。 问题呈现 直接给出SQL代码和执行error直观来看。 select ename name from emp where name = 'SIMTH'; 哦,晃眼而过,可能并不会发现问题,不过一执行,便会报 如下错误: 也就是where子句中name识别无效。造成这种原因是因为:where子句是先于select进行处理的 深入点来说,造成此类困惑的原因在于对Oracle SQL语句的执行情况不了解。..
转载
2013-06-21 14:55:00
384阅读
2评论
今天在项目中遇到动态拼sql的语句,语句如下:v_sql := 'update Table_Test t '
||' set t.field1 = ''' || 变量1 || ''',' -- v_BalRuleID || v_BalanceSeq || ''','
||' t.field2 = ''' || 变量2 || ''','
||' t.
转载
2023-08-21 20:42:11
353阅读
很多查询类的存储过程会返回一个表结构的结果集,如果在其他存储过程中需要用到这个结果集,为了避免编写重复的sql脚本,可以直接使用前者的查询结果。 如,存储过程sp_GetBorrowRecord @BeginTime,@EndTime 可以查询出某一时间范围(开始时间@BeginTime,结束时间@EndTime)内的所有借书记录。这个存储过程可以用于对借书记录的查询页面。 &nb
转载
2024-08-19 11:19:54
48阅读
http://blog.itpub.net/14740/viewspace-663092/
转载
2018-04-13 14:15:48
2271阅读
oracle 存储过程 调用动态sql CreationTime--2018年8月16日11点25分 Author:Marydon 1.错误实现方式 --开始时间拼接' 00:00:00' V_SQL := 'select decode(length(' || V_END || '),10,' ||
原创
2023-02-14 09:25:30
1161阅读
这句sql可以用来查询一张表中的特定位置的记录
--查询的方法获取分页的语句 select *from (select t1.*,rownum rn from (select *from books) t1 where rownum<=4)&n
原创
2012-11-19 18:08:56
618阅读
点赞
1评论
服务器进程(server process)接收到sql语句。sql语句通过网络到达数据库实例。客户端输入sql语句。
原创
2023-11-14 13:53:53
169阅读
在mysql中,单双引号除了在相互包含对方的情况下,基本上没什么区别!
Oracle中,单双引号则是区别明显
1.一般情况下都是使用单引号
SQL> select 'aa' from dual; 'AA' ---- aa SQL> select&nbs
原创
2013-04-01 16:47:12
4659阅读
1.代码
1 SET QUOTED_IDENTIFIER ON
2 SELECT * FROM "USER" WHERE a='netasp'
3
4 SET QUOTED_IDENTIFIER ON
5 SELECT * FROM [USER] WHERE a='netasp'
6
7 SET QUOTED_IDENTIFIER OFF
8 SELECT * FROM [USER]
转载
2023-12-25 07:17:45
113阅读
在调整之前我们需要了解一些背景知识,只有知道这些背景知识,我们才能更好的去调整sql语句。本节介绍了SQL语句处理的基本过程,主要包括:. 查询语句处理. DML语句处理(insert, update, delete). DDL 语句处理(create , drop , alter , ). 事务控制(commit, rollback)一、SQL 语句的执行过程(SQL Statement Exe
原创
2013-10-08 10:18:10
371阅读
PL/SQL块最大优点:降低网络开销,提高应用程序性能。文章需要用到的表结构及信息select * from emp;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- -----------------
原创
2014-04-21 10:49:04
1108阅读
from:http://jingyan.baidu.com/article/3a2f7c2e144d2826aed61167.html 调试过程对找到一个存过的bug或错误是非常重要的,Oracle作为一款强大的商业数据库,其上面的存过少则10几行,多则上千行,免不了bug的存在,存过上千行的话,找
转载
2021-07-28 09:31:33
450阅读
一、需求,如何根据存储过程定位慢SQL? 需求说明,数据库执行的SQL出现性能问题,如何是单条SQL比较好找到问题SQL,但是如过是存储过程呢? 存储过程中可能会衍生出不同的动态SQL,那么具体调用存储过程中,存储过程执行慢在什么SQL的位置呢? 二、方法 2.1 Trace 10046 SQL>e ...
转载
2021-07-13 14:24:00
578阅读
2评论
--create or replace 创建或替换,如果存在就替换,不存在就创建 create or replace procedure p is cursor c is select * from dept2 for update; begin for row_record in c loop if (row_record.deptno = 30) then update dept2 set dname = substr(dname, 0, length(dname) - 3) wher...
转载
2011-05-03 07:55:00
118阅读
2评论
PL/SQL存储过程● 存储过程存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的 SQL 语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象,任何一个设计良好的数据库应用程序都应该用到存储过程。创建存储过程语法:create [or replace] P...
原创
2021-08-19 15:45:01
408阅读
PL/SQL存储过程● 存储过程存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的 SQL 语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象,任何一个设计良好的数据库应用程序都应该用到存储过程。创建存储过程语法:create [or replace] P...
原创
2022-03-29 11:20:27
181阅读
三、查询语句的处理查询与其它类型的SQL语句不同,因为在成功执行后作为结果将返回数据。其它语句只是简单地返回成功或失败,而查询则能返回一行或许多行数据。查询的结果均采用表格形式,结果行被一次一行或者批量地被检索出来。从这里我们可以得知批量的fetch数据可以降低网络开销,所以批量的fetch也是优化的技巧之一。有些问题只与查询处理相关,查询不仅仅指SELECT语句,同样也包括在其它SQL语句中的隐
原创
2013-10-08 10:20:14
575阅读