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 پاسخ 338 بازدید
0 امتیاز
2 پاسخ 1.1هزار بازدید
0 امتیاز
0 پاسخ 254 بازدید
0 امتیاز
1 پاسخ 490 بازدید
0 امتیاز
1 پاسخ 654 بازدید
0 امتیاز
0 پاسخ 648 بازدید
...