這個oracle自動生成編號的儲存過程為什麼執行不了

時間 2022-07-18 01:15:03

1樓:利懷蓮

oracle

自動生成標識列可以用序列。

a)建立序列:

create

sequence

序列名start

with

起始位置

increment

by增量大小

maxvalue

最大值(沒有這些nomaxvalue)

[cycle/nocycle(是否迴圈)];

例如:create

sequence

seq_stu

incrementby1

start

with

001nomaxvalue

nocycle;

b)序列中的兩個特殊屬性:

.nextval

:下一個序列的值

.currval

:當前序列的值;

特別注意:只要使用者使用了.nextval

那麼序列值就會增加一個增量,

eg:select

seq_stu.nextval

from

dual;序列值依然會增加一個增量!

c)兩個特殊屬性的使用:

加入學生資訊表的stuid列是主鍵列,需要自己增長:

insert

into

stuinfo

values

('stu'||to_char(sysdate,'yyyymmdd')||seq_stu.nextval,....);

最後錄入的學號就會是'stu20111218001序列值'。

2樓:匿名使用者

這不是oracle 儲存過程 這個才是

create or replace procedure st_test is

l_id number;

l_sno varchar2(8);

l_sname varchar2(20);

begin

for i in 1 .. 50 loopl_id := i;

if i < 10 then

l_sno := '0901030' || i;

else

l_sno := '090103' || i;

end if;

l_sname := 'name' || i;

insert into st (

id,sno,

sname

) values (

l_id,

l_sno,

l_sname

);end loop;

exception

when others then

raise;

end st_test;

3樓:

呵呵,建議你還是先看看oracle儲存過程 語法吧

oracle 定義儲存過程 不能執行,處於無效狀態。

4樓:

無效狀態有兩種可能:

1、一種是你的儲存過程編輯沒有成功,建立了,但裡面有語法錯誤。

2、還有一種是儲存過程使用的表有結構上的改變,需要重新編譯一下。

解決方法如下:

重新編譯一下,如果不成功,就是有語法問題,你需要修改儲存過程。

延展閱讀:

修改儲存過程的操作:在你的儲存過程,滑鼠右鍵,點修改,再儲存就行了。

5樓:匿名使用者

兩個update後的from都去掉

oracle 定義儲存過程不能執行怎麼辦?

6樓:

無效狀態有兩種可能:

1、一種是你的儲存過程編輯沒有成功,建立了,但裡面有語法錯誤。

2、還有一種是儲存過程使用的表有結構上的改變,需要重新編譯一下。

解決方法如下:

重新編譯一下,如果不成功,就是有語法問題,你需要修改儲存過程。

延展閱讀:

修改儲存過程的操作:在你的儲存過程,滑鼠右鍵,點修改,再儲存就行了。

oracle 我執行了一個儲存過程,產生的表裡為什麼是空的 沒有資料

7樓:

insert into a

select * from b

where ------;

commit;

首先表a和表b的結構必須是一致的,而且表b中有資料。

8樓:

commit要放在儲存過程裡面的insert語句之後

oracle 在儲存過程中用動態sql建立序列為何會遇到許可權不足的問題呢?

9樓:帥代秋

從控制檯進去給使用者賦予許可權。oracle許可權很多很細的,滑鼠點死,怕煩就賦dba。

10樓:暈逍遙

當然不行了,你沒給普通使用者授權執行表空間的新增刪改的許可權

11樓:匿名使用者

create or replace procedurecreate sequence

都需要許可權。。。

用sysdba給該使用者grant一個吧。。

grant execute any procedure to 普通使用者 with admin option;

grant resource to 普通使用者; --這個已經包含了序列的許可權

oracle中這樣建立儲存過程對不,為什麼執行時老是提示錯誤,說儲存過程無效

oracle新手,幫忙看下這個儲存過程問題在**,執行不了

12樓:匿名使用者

1、請確保傳進去的引數執行後資料只有一行,否則請用遊標

2、執行後有沒有報錯?如果要顯示資料,請用dbms_output.put_line

c向sql中插入資料時如何自動生成編號作為主鍵

不識臺北路 建立 的時候將主鍵設定為identitycreate table test id int primary key identity,value nvarchar 128 not null 插入資料的時候,不要給主鍵賦值,主鍵會自動增長insert into test values val...

自動生成的參考文獻怎麼自動生成在目錄中

知實文化 如何自動生成參考文獻 隗梅蒲雪 要想自動生成題目,打檔案時應設定題目格式。一 輸入題目時這樣操作 1 開啟word文件輸入題目時,點選單字型欄左側樣式視窗,選 題目1 並選好字型和字號 如果想在目錄中顯示二級題目,輸入二級題目時應選擇 題目2 2 輸入正文時,則應在樣式視窗選擇 正文 3 ...

Oracle設定物化檢視的自動重新整理

物化檢視日誌字典 select b.master,b.log table,b.rowids,b.primary key,b.last purge date from user mview logs b 檢視物化檢視 結構 select aa.from dba mviews aa where aa.m...