Oracle
文章平均质量分 63
Hacker
构架良好的知识体系架构是战胜一切问题的关键!!!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
for update 和 for update of 有什么区别
1 select * from TTable1 for update 锁定表的所有行,只能读不能写 2 select * from TTable1 where pkid = 1 for update 只锁定pkid=1的行 3 select * from Table1 a join Table2 b on a.pkid=b.pkid for update原创 2012-08-21 10:06:02 · 10650 阅读 · 0 评论 -
PLSQL数据抽象
数据抽象 数据抽象可以让我们把必要的属性提取出来,忽略那些非必须的细节问题,有助于我们更好地解决问题。一旦我们设计好一个数据结构,就可以不再考虑细节内容,而专注于操作这个数据结构的算法问题的研究。 集合 集合类型TABLE和VARRAY可以让我们声明索引表、嵌套表和变长数组(略称varray)。集合是类型相同的元素有序组合。在集合中,每个元素都有唯一一个能够确定该元素在集合中位置的下标索原创 2012-08-21 13:44:58 · 625 阅读 · 0 评论 -
PL/SQL架构
PL/SQL的编码和运行时系统是一项技术,而不是一个独立的产品。可以把这项技术想象成一个能够编译并运行PL/SQL块和子程序的引擎。这个引擎可以安装在Oracle服务器上或安装在Oracle Forms,Oracle Reports这样的开发工具中。所以,PL/SQL可以在两种环境中存在: Oracle数据库服务器 Oracle开发工具 这两种环境是独立的。PL/SQL虽被绑原创 2012-08-21 14:04:22 · 1125 阅读 · 0 评论 -
PL/SQL 属性
PL/SQL的变量和游标都有着让我们能够直接引用它们各自的数据类型或结构的属性。数据库字段和表也有类似的属性。"%"是一个属性的指示符。 %TYPE %TYPE可以提供一个变量或数据库字段的数据类型,这在声明存放数据库值的变量时是非常有用的。假设我们要声明一个存放表books中的字段my_title的字段的变量时,就可以这样使用%TYPE属性: my_titl原创 2012-08-21 11:51:45 · 799 阅读 · 0 评论 -
变量为什么要分开在头部和is部分两个地方声明呢?
create or replace procedure change_sal( v_ename in varchar2, v_sal in number, v_job out varchar2, v_dname out varchar2)is v_empno emp.empno%type;begin ... ...end;变量为什么要分开在头部和is部分两个地方声明呢?有什么本质的区别吗?原创 2012-08-21 10:16:33 · 875 阅读 · 0 评论 -
变量与常量
PL/SQL允许我们声明常量和变量,但是常量和变量必须是在声明后才可以使用,向前引用(forward reference)是不允许的。 1、变量声明 变量可以是任何SQL类型,如CHAR,DATE或NUMBER等,也可以是PL/SQL类型,BOOLEAN或BINARY_INTEGER等。声明方法如下: part_no NUMBER(4); in_stock BOOLEAN; 我们还可以用原创 2012-08-21 11:09:07 · 524 阅读 · 0 评论 -
游标的概念引入(隐式游标日常常用,只是一个内部的机制而已)
游标的类型有两种:隐式和显式。 PL/SQL会为所有的SQL数据操作声明一个隐式的游标,包括只返回一条记录的查询操作。 其实我们在pl/sql中每作一次查询操作就用到了oracle的隐式的游标。 此外,我们可以显示地使用游标来处理一条查询结果的游标: DECLARE CURSOR c1 IS SELECT empno, ename, job FROM em原创 2012-08-21 11:35:23 · 1230 阅读 · 0 评论 -
游标变量
游标变量的使用方式和游标类似,但更加灵活,因为它不绑定于某个特定的查询,所以可用于打开任何返回类型相兼容的查询语句。游标变量是真正的 PL/SQL变量,我们可以为它赋值,把它传递给子程序。如下例,我们把游标变量作为存储过程open_cv的一个参数传进去,程序执行时,可以根据 choice值的不同,灵活地打开不同的查询内容。 PROCEDURE open_cv(generic_cv IN OU原创 2012-08-21 11:43:53 · 726 阅读 · 0 评论 -
控制结构
控制结构 流程控制是PL/SQL对SQL的最重要的扩展。PL/SQL不仅能让我们操作Oracle数据,还能让我们使用条件、循环和顺序控制语句来处理数据,如IF-THEN-ELSE,CASE,FOR-LOOP,WHILE-LOOP,EXIT-WHEN和GOTO等。 条件控制 我们经常需要根据环境来采取可选择的行动。IF-THEN-ELSE语句能让我们按照条件来执行一系列语句。IF用原创 2012-08-21 11:56:53 · 549 阅读 · 0 评论 -
模块化
模块化 模块化可以让我们把程序分成多个部分,这样可以把复杂的问题划分开来,更好的解决问题。PL/SQL为我们提供了块、子程序和包三个程序单元来用于模块化处理。 子程序 子程序有两种,分别是函数和过程。子程序很像一段小型的程序,由可选的声明部分,执行控制部分和可选的异常控制部分组成。 PROCEDURE award_bonus(emp_id NUMBER) IS b原创 2012-08-21 13:16:31 · 648 阅读 · 0 评论 -
TRUNCATE和DELETE有以下几点区别
TRUNCATE和DELETE有以下几点区别: 1、TRUNCATE在各种表上无论是大的还是小的都非常快。如果有ROLLBACK命令DELETE将被撤销,而TRUNCATE则不会被撤销。 2、TRUNCATE是一个DDL语言,向其他所有的DDL语言一样,他将被隐式提交,不能对TRUNCATE使用ROLLBACK命令。 3、TRUNCATE将重新设置高水平线和所有的索引。在对整个表和索引进行完原创 2012-10-16 15:25:09 · 482 阅读 · 0 评论 -
SQL UNION 和 UNION ALL 操作符
SQL UNION 操作符 UNION 操作符用于合并两个或多个 SELECT 语句的结果集。 请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。 SQL UNION 语法 SELECT column_name(s) FROM table_name1 UNION SELECT column原创 2012-11-09 15:25:02 · 577 阅读 · 0 评论 -
创建ORACLE JOB
oracle job简介 主要的使用情景 定时在后台执行相关操作:如每天晚上0点将一张表的数据保存到另一张表中,2:定时备份数据库等 熟化说万事开头难,这里我只简单记述一个创建一个简单的job 步骤如下: 1、创建一张表g_test create table G_TEST ( ID NUMBER(12), C_DATE DATE ) 2、创建转载 2012-12-10 10:18:55 · 529 阅读 · 0 评论 -
left join
例2: 表A记录如下: aID aNum 1 a20050111 2 a20050112 3 a20050113 4 a20050114 5 a20050115 表B记录如下: bID bName 1 2006032401 2 2006032402 3 2006032403 4原创 2012-12-13 10:27:31 · 616 阅读 · 0 评论 -
利用--作代码分析
select alias_cardtype, id_card_value, sum(decode(flag, 'inTotal', total, 0)) inTotal,--tj sum(decode(flag, 'outTotal', total, 0)) outTotal,--tj sum(decode(flag, 'active原创 2012-12-13 11:00:09 · 626 阅读 · 0 评论
分享