0 امتیاز
قبل در برنامه نویسی توسط (1.1هزار امتیاز)

می خواهم در یک اسکریپت اوراکل یک Constraint را غیر فعال کنم ولی نام آن Constraint مشخص نیست (بدلیل استفاده از تولید خودکار schema توسط ORM) و هر سری متفاوت است چگونه می توانم این کار را انجام دهم؟

1 پاسخ

+1 امتیاز
قبل توسط (1.1هزار امتیاز)

برای این کار باید نام جدول و ستونی که Constraint برروی آن تعریف شده است را بدانید و با استفاده از کد زیر می توانید تمام Constraint های آن ستون را غیر فعال کنید:

begin
for i in (SELECT constraint_name , table_name 
  FROM user_cons_columns 
  WHERE table_name = 'tbl_name' 
  and column_name = 'your_column_name') LOOP
execute immediate 'alter table '||i.table_name||' disable constraint '||i.constraint_name||'';
end loop;
end;

سوالات مشابه

0 امتیاز
1 پاسخ 337 بازدید
0 امتیاز
2 پاسخ 1.1هزار بازدید
0 امتیاز
0 پاسخ 250 بازدید
0 امتیاز
1 پاسخ 486 بازدید
0 امتیاز
1 پاسخ 650 بازدید
0 امتیاز
0 پاسخ 645 بازدید
...