首先要確定約束在哪一字段上,使用sql:select * from user_constraints where table_name='tablename',(這裡要注意tabelname必須是大寫),這樣資料表所有的約束都會呈現出來,找到報錯中sys_c0053416約束條件,若本sql確能查詢出該sys_c0053416,刪除該check約束問題也就可以解決,檢視search_condition欄位可以確定該約束使用在哪個欄位上。
刪除check語句:alter table tablename drop constraint sys_c0053416
查詢外來鍵
oracle中查詢該表中的主鍵被哪些表引用的sql語句:
[sql]view plain
copy
select c.table_name
from all_constraints p, all_constraints c
where p.table_name = '表名'
and p.owner = sys_context('userenv', 'current_schema')
and c.owner=sys_context('userenv', 'current_schema')
and c.constraint_type = 'r'
and p.constraint_name = c.r_constraint_name
[sql]view plain
copy
select cl.table_name
from user_cons_columns cl
left join user_constraints c
on cl.constraint_name = c.r_constraint_name
where c.constraint_type = 'r'
and c.table_name = '表名'
ps:查詢owner的sql語句: select sys_context('userenv', 'current_schema') from dual
TortosieGit解決衝突的方法
專案開發中,發生衝突很影響開發效率,發生衝突時,我們必須能正確識別哪些是我們自己的 哪些是別人開發的 git發生衝突後,產生了3個檔案或者更多檔案,比如我在t.php中編輯了內容,pull 時被告知需要stash 我先stash,然後pull,然後stash pop,這時發生了衝突,產生了3個檔案 ...
解決雜湊衝突的方法
在實際的應用中,選取合適的雜湊函式可減少衝突,但衝突是不可避免的。所以我就想給大家說幾種解決雜湊衝突的方法啦 首先就是開放定址法,用這個方法處理衝突的核心思想就是在衝突發生的時候,形成乙個位址序列,順著這個序列挨個去檢查探測,一直等到找到乙個 空 的開放位址。把我們發生衝突的關鍵字值存放到這個 空 ...
解決雜湊衝突的方法
開放定址法和鏈位址法 開放定址法 當衝突發生時,使用某種探查 亦稱探測 技術在雜湊表中形成乙個探查 測 序列。沿此序列逐個單元地查詢,直到找到給定 的關鍵字,或者碰到乙個開放的位址 即該位址單元為空 為止 若要插入,在探查到開放的位址,則可將待插入的新結點存人該位址單元 查詢時探查到開放的 位址則表...