前言: 我们在开发中,常常遇到单表的子-父id级联的表结构,在树形的深度不确定的情况下,一次查询出某个树形结构下的所有具有子-父级关系的数据变得十分困难. 这时,我们使用oracle提供的CONNECT BY PRIOR ... start WITH 实现树形结构具有子父级关系的表递归查询和删除就会很方便. 1.树形结构表举例 (1)假设有一个MENU表,该表结构如下: ID VARCHAR2(32) N sys_guid() 节点id FENXID VARCHAR2(32)…
最近在处理一个分表的问题时,需要为程序创建一个自动分表的存储过程,需要保证所有表结构,约束,索引等等一致,此外视图,存储过程,权限等等问题暂不用考虑. 在Mysql中,创建分表的存储过程,相当简单:create table if not exists <new_table_name> like <old_table_name>;即可,约束,索引一应俱全. 但是在Oracle中貌似没有,所以只能自己写,需要考虑的情况比较多,脚本如下: CREATE OR REPLACE PROCED…
1. IF 语法 IF 表达式 THEN ... END IF; 例如: set serverout on declare v_name varchar2(20):='&name'; begin if v_name='kiki' then dbms_output.put_line('登录成功'); end if; end; / --------执行内容结果如下------- 输入 name 的值: kiki 原值 2: v_name varchar2(20):='&name'; 新值 2:…