oracle建立自增主鍵過程與錯誤分析

2021-05-27 14:30:29 字數 1034 閱讀 1014

「sys是oracle資料庫中許可權最高的帳號,具有create database的許可權,而system沒有這個許可權,sys的角色是sysdbasystem的角色是sysoper。其餘就是他們兩個使用者共有的許可權了:startup/shutdown/dba兩個使用者都是可以管理的。

平時用system來管理資料庫就可以了。這個使用者的許可權對於普通的資料庫管理來說已經足夠許可權了」

上述一段話使我終於解決了最終的問題,使用plsql登陸上去,建立序列觸發器,完成。

簡述建立過程

首先建表,主鍵為number還是varchar都可以,測試過了

建立序列:

----建立序列

create sequence auto_inc

increment by 1

start with 1

nomaxvalue

nominvalue

nocache

建立觸發器:

create or  replace trigger auto_increase_id

before insert on stu

for each row

begin

select auto_inc.nextval into :new.uuid from dual;

end;

上面的uuid是表中的乙個列

問題:如果建立過程中遇到什麼「索引中丟失  in 或 out 引數:」等一些列莫名其妙的錯誤,記得一定要在dos或比較專業的環境下刷sql,遠離視覺化工具。

如果明明建立好了但是還是報什麼「觸發器無效且未通過重新驗證」,認真檢查一下他所說的是哪個schema的觸發器,有可能是呼叫的別的,執行sq時,系統使用者的觸發器等的優先順序要高於當前自定義使用者,建立的時候由於各種角色的切換可能會導致建立的觸發器或者序列不在同乙個使用者下,找到後乾掉,免得影響當前使用者的使用

額,搞了一下午,終於明白了!雖然學了一年oracle看來都還給老師了,還得複習啊!

Oracle建立自增主鍵

create table scott student test sno number visible not null sname varchar2 255 byte visible varchar2 255 byte visible born varchar2 255 byte visible g...

ORACLE建立主鍵自增表

建立表,設定主鍵自增 create table stu uerid number 4 not null primary key,username varchar 20 userpass varchar 20 email varchar2 30 grade number 5 commit 小查一下 s...

Oracle如何建立自增主鍵

oracle如何建立自增主鍵 1.建立表並設定主鍵.2.建立序列.3.建立觸發器.www.2cto.com 例如 假設已建立好資料表 表名為tbl name,主鍵列為tbl id,其他列有tbl name tbl age,tbl 然後開始建立oracle序列 sql create sequence ...