| 我们先看一下PL/SQL的设计方法。 2.1 PL/SQL的设计方法——早邦定 大家知道,程序设计语言按照两种方式邦定变量——早期邦定和后期邦定。邦定变量是识别程序中标示符存储位置的过程。在PL/SQL中还包括检查数据库得到访问引用对象的权限。(即在编译期间确定对象的权限,并与其标示符相邦定) PL/SQL在设计时特别采用了早期邦定。这样,一个语句块的执行将尽变快,因为所有的数据库对象在运行前都已经被编译器所确定。这样设计的结果是,DDL语句被禁止使用了。因为DDL语句会修改数据库对象,而数据库对象的权限是在编译期间决定的。 下面举例子说明: BEGIN CREATE TABLE temp_table( num_value NUMBER, char_value CHAR(10); INSERT INTO temp_table(num_value,char_value) values (10,’HELLO’); END; 在编译这个语句块时,temp_table标示符必须是邦定过的。于是这个过程将检查该表是否存在,但是该表在被运行之前是不会存在的。所以编译通不过,因为该语句块不能被编译,所以他也不可能运行。 2.2 使用动态SQL语句 这 上一页 [1] [2] [3] [4] 下一页 |