我Foreign keys
一般如何掉线。我的意思是,如果我在表中有许多外键约束。喜欢
MonthlyEvaluatedBudgetTable约束:
postgres中是否有办法删除所有外键,而不是专门删除现有表中的所有外键?我使用这行代码将外键删除到现有表中。
ALTER TABLE "public"."monthlyevaluatedbudgettable"
DROP CONSTRAINT "accountid_fk";
但我想放弃它没有专门输入查询accountid_fk
,branchid_fk
,dept_fk
。有办法吗?提前致谢。
在DO
语句中循环,例如:
b=# create table a (a int primary key, b int unique);
CREATE TABLE
b=# create table b (a int references a(a), b int references a(b));
CREATE TABLE
b=# do
$$
declare r record;
begin
for r in (select constraint_name from information_schema.table_constraints where table_schema = 'public' and table_name='b') loop
raise info '%','dropping '||r.constraint_name;
execute CONCAT('ALTER TABLE "public"."b" DROP CONSTRAINT '||r.constraint_name);
end loop;
end;
$$
;
INFO: dropping b_a_fkey
INFO: dropping b_b_fkey
DO
我正在将数据库从MySQL切换到Postgres SQL。在MySQL中有效的select查询在Postgres中也有效,但类似的delete查询却不能。 我有两个数据表,列出了某些备份文件的位置。现有数据(ed)和新数据(nd)。此语法将挑选出可能说明文件在现有数据表中的位置的现有数据,根据相等的文件名和路径对其进行匹配,但没有关于文件在新数据中的位置的信息: 我希望使用以下语法运行删除查询:
问题内容: 我有一个表,该表的主键在其他几个表中使用,并且对其他表有几个外键。 问题是,当我尝试删除外键列之一(即locationIDX)时,它给了我一个错误。 “错误1025(HY000):重命名错误” 如何在没有出现此错误的情况下将列删除到上面的分配表中? 问题答案: 正如解释在这里,似乎外键约束必须由被丢弃 的约束名称 ,而不是索引名。语法为:
我正在使用mysql并试图删除外部约束,但我无法删除该密钥。 它的节目, 如何解决这个问题,请帮助我。
我有两个表,一个有复合主键,另一个有外键。它们都设置为删除时级联。问题是,当我从主表中删除一个复合键集“name:John date:02.02.2018”时,所有John行都会从带有外键的表中删除,但是可以有一个集合“name:John date:04.04.2018”以及日期为02.02的所有行。也删除了一些行,如何才能使其删除仅匹配外键集的行? 更新:
问题内容: 在Visual Studio中,您将使用+ ,而在Eclipse中,我被迫选择一行;如果为空,则在单击Delete / Backspace之前转到该行的开头。 有快速捷径吗?谢谢! 问题答案: + 从“ 帮助” ->“ 键辅助 …”中可以找到各种有用的Eclipse键盘快捷键。 对于Mac用户:+
问题内容: 我有一个表X,该表具有一个自动递增的ID列作为其主键。我还有其他表A,B,C和D,它们补充了表X中的信息。每个表都必须包含一个引用表X中ID的列。我已经这样做了,并且在我的代码(Java)中,将每个条目的ID返回到表X并在插入其他表时使用该ID的方法。一切都很好。 现在,建议我将表A,B,C和D上的ID列分配为FOREIGN KEYS,因为“这是正确的做法”。我做到了 现在,从表X中删