PL/SQL變數值可變在程式中會變嗎?
忽然有點好奇,如果在pl/sql定義變數部分將變數賦值為可變值,那麼在程式中間插入的值是當初賦值時 的值還是插入時的可變值?不妨測試下:
D:\>set nls_date_format=yyyy-mm-dd hh24:mi:ss
D:\>sqlplus test/test SQL*Plus: Release 10.2.0.1.0 - Production on 星期二 2月 7 12:26:41 2012 Copyright (c) 1982, 2005, Oracle. All rights reserved. 連線到: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning, OLAP and Data Mining options SQL> set serveroutput on SQL> create table test(id number,stamptime date); 表已建立。 SQL> declare 2 v_sysdate date; 3 begin 4 v_sysdate := sysdate; 5 dbms_output.put_line(v_sysdate); 6 insert into test (id, stamptime) values (1, v_sysdate); 7 dbms_lock.sleep(10); 8 insert into test (id, stamptime) values (1, v_sysdate); 9 commit; 10 end; 11 / 2012-02-07 12:27:28 PL/SQL 過程已成功完成。 SQL> select id,stamptime from test; ID STAMPTIME ---------- ------------------- 1 2012-02-07 12:27:28 1 2012-02-07 12:27:28
哦,原來確實是當初賦值時的初始值。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24496749/viewspace-723164/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- PL/SQL變數作用域SQL變數
- PLSQL Language Reference-PL/SQL語言基礎-變數賦值-對BOOLEAN變數賦值SQL變數賦值Boolean
- PLSQL Language Referenc-PL/SQL靜態SQL-游標變數-游標變數賦值SQL變數賦值
- PL/SQL 02 宣告變數 declareSQL變數
- 關於pl/sql中的繫結變數SQL變數
- PLSQL Language Referenc-PL/SQL集合和記錄-集合變數賦值-給可變陣列和巢狀表賦NULL值SQL變數賦值陣列巢狀Null
- PLSQL Language Referenc-PL/SQL靜態SQL-游標變數-游標變數作為宿主變數SQL變數
- PLSQL Language Referenc-PL/SQL靜態SQL-游標變數-建立游標變數SQL變數
- PLSQL Language Referenc-PL/SQL靜態SQL-游標變數-游標變數作為子程式引數SQL變數
- PL/SQL中繫結變數使用的簡單測試SQL變數
- 變數可變性問題變數
- PHP的可變變數名PHP變數
- PLSQL Language Reference-PL/SQL語言基礎-變數賦值-作為子程式引數來賦值SQL變數賦值
- 在程式中定義多個同值不同名的變數變數
- MySQL中變數的定義和變數的賦值使用MySql變數賦值
- 4、在Shell程式中的使用變數變數
- PLSQL Language Reference-PL/SQL語言基礎-變數賦值-使用SELECT INTO賦值SQL變數賦值
- PLSQL Language Referenc-PL/SQL集合和記錄-可變陣列-正確地使用可變陣列SQL陣列
- 獲取sql繫結變數的值SQL變數
- PLSQL Language Reference-PL/SQL語言基礎-變數賦值-使用賦值語句賦值SQL變數賦值
- 動態修改 NodeJS 程式中的變數值NodeJS變數
- 動畫:「變數提升」原理中的變數真的進行提升了嗎?動畫變數
- 繫結變數在靜態sql和動態sql中變數SQL
- PLSQL Language Referenc-PL/SQL靜態SQL-游標變數-開啟和關閉游標變數SQL變數
- 不用第三個變數,交換變數的值變數
- PL/SQL-遊標和遊標變數的使用SQL變數
- PLSQL Language Referenc-PL/SQL靜態SQL-游標變數SQL變數
- 如何列印數值變數變數
- GreatSQL 在SQL中使用 HINT 語法修改會話變數SQL會話變數
- sql monitor中timestamp變數轉換可識別格式SQL變數
- ORACLE USER 變數值Oracle變數
- 【Java】可變引數Java
- Swift: 可變引數Swift
- Java可變引數Java
- Java 可變引數Java
- Java之StringBuffer可變字串(值可以改變)Java字串
- SQL Server中的全域性變數SQLServer變數
- SQL server 動態SQL對變數講行賦值SQLServer變數賦值