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 پاسخ 453 بازدید
0 امتیاز
2 پاسخ 1.3هزار بازدید
0 امتیاز
0 پاسخ 390 بازدید
0 امتیاز
1 پاسخ 636 بازدید
0 امتیاز
1 پاسخ 910 بازدید
0 امتیاز
0 پاسخ 957 بازدید
...