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 پاسخ 448 بازدید
0 امتیاز
2 پاسخ 1.3هزار بازدید
0 امتیاز
0 پاسخ 384 بازدید
0 امتیاز
1 پاسخ 630 بازدید
0 امتیاز
1 پاسخ 899 بازدید
0 امتیاز
0 پاسخ 941 بازدید
...