-2
我不能在管線18除去錯誤PLS-00103:在需要下列之一時出現符號:
ERROR:PLS-00103:出現符號 「=」 期待的 一個時以下:恆異常 表LONG_雙裁判焦時間時間戳間隔日期二進制民族性格的nchar
我的方法:
CREATE OR REPLACE PROCEDURE create_schedule(id IN VARCHAR2,ac1st IN ARCHAR2,ac2nd IN VARCHAR2,ac3rd IN VARCHAR2 ,sleeper IN VARCHAR2)
AS
BEGIN
DECLARE
query_str VARCHAR2(512);
ac1 VARCHAR2(10);
ac2 VARCHAR2(10);
ac3 VARCHAR2(10);
slp VARCHAR2(10);
ac1 := 'ac1st'||id;
ac2 := 'ac2nd'||id;
ac3 := 'ac3rd'||id;
slp := 'sleeper'||id;
query_str := 'alter table schedule
add(:1 number default (:2) not null ,
:3 number default (:4) not null ,
:5 number default (:6) not null ,
:7 number default (:8) not null )';
EXECUTE IMMEDIATE query_str using ac1,ac1st,ac2,ac2nd,ac3,ac3rd,slp,sleeper ;
commit;
END create_schedule ;
/
不能使用動態DDL語句綁定變量。但是,爲什麼要向表中添加列 - 當然,添加時間表應該創建一個新行,而不是修改表結構?這看起來像一個非常糟糕的數據模型。 –