相关疑难解决方法(0)

SQL列出引用表中特定列的所有表

我正在使用PostgreSQL,我试图将表中具有特定列的所有表列为外键/引用.可以这样做吗?我确定这些信息存储在某个地方,information_schema但我不知道如何开始查询它.

sql database postgresql foreign-keys

53
推荐指数
5
解决办法
3万
查看次数

使用SQL序号位置表示法的好处?

背景资料

序号位置表示法(AKA序号)是基于SELECT子句列中列顺序的列速记,而不是列名称或列别名.在该ORDER BY子句中通常支持,一些数据库(MySQL 3.23 +,PostgreSQL 8.0+)也支持该GROUP BY子句的语法.

以下是使用Ordinals的示例:

GROUP BY 1, 2
ORDER BY 1, 2
Run Code Online (Sandbox Code Playgroud)

使用它并不好,因为它会使查询变得脆弱 - 如果列顺序发生变化,则需要更新序数,否则您的查询将不会返回您的想法.很可能,GROUP BY如果在这些位置的列包含在聚合中,则会出现错误...

问题

我能想到的唯一好处是通过网络发送的数据更少,如果你没有使用存储过程或函数(这使得ordinal用法无论如何都对我来说).我还缺少其他任何好处吗?

泄露

这可能听起来像是一项家庭作业,但它确实是研究办公室每个月提供的教育午餐.他们支付午餐费用,我们必须提供一个感兴趣的小话题.

sql sql-server oracle ordinals

29
推荐指数
3
解决办法
2万
查看次数

从Postgresql表中绘制表和关系

是否可以在postgresql数据库中绘制表格,并使用R如下所示关系?

在此输入图像描述

sql database schema plot r

8
推荐指数
1
解决办法
2450
查看次数

通常在POSTGRES中删除外键

我怎么能放弃Foreign keys一般.我的意思是,如果我在表中有很多外键约束.喜欢

MonthlyEvaluatedBudgetTable Contraints:

  • budgetid_pk(主键)
  • branchid_fk(外键)
  • accountid_fk(外键)
  • dept_fk(外键)

在postgres中是否有一种方法可以放弃所有外键,而不是特定地放在现有表中?我使用这行代码删除现有表中的外键.

    ALTER TABLE "public"."monthlyevaluatedbudgettable"
    DROP CONSTRAINT "accountid_fk";
Run Code Online (Sandbox Code Playgroud)

但我想放弃它没有专门输入查询accountid_fk,branchid_fk,dept_fk.有没有办法呢?提前致谢.

sql database postgresql foreign-keys

7
推荐指数
2
解决办法
1万
查看次数

删除外键未引用的行

这与这个问题有些相关:

我有一个带主键的表,我有几个引用该主键的表(使用外键).我需要从该表中删除行,其中主键未在任何其他表中被引用(以及一些其他约束).

例如:

Group
groupid | groupname
    1   |    'group 1'
    2   |    'group 3'
    3   |    'group 2'
    ... |    '...'

Table1
tableid | groupid | data
    1   |    3    |    ...
    ... |    ...  |    ...

Table2
tableid | groupid | data
    1   |    2    |    ...
    ... |    ...  |    ...
Run Code Online (Sandbox Code Playgroud)

等等.Group中的某些行未在任何表中引用,我需要删除这些行.除此之外,我还需要知道如何找到引用Group中给定行的所有表/行.

我知道我可以查询每个表并检查groupid,但由于它们是外键,我想有更好的方法.

顺便说一下,这是使用Postgresql 8.3.

sql postgresql

6
推荐指数
2
解决办法
6266
查看次数

如何找到通过外键引用特定行的表?

给定这样的结构:

CREATE TABLE reference_table (
  reference_table_key numeric NOT NULL,
  reference_value numeric,
  CONSTRAINT reference_table_pk PRIMARY KEY (reference_table_key)
);

CREATE TABLE other_table (
  other_table_key numeric NOT NULL,
  reference_table_key numeric,
  CONSTRAINT other_table_pk PRIMARY KEY (other_table_key),
  ONSTRAINT other_table_reference_fk FOREIGN KEY (reference_table_key)
      REFERENCES reference_table (reference_table_key) MATCH SIMPLE
      ON UPDATE NO ACTION ON DELETE SET NULL
);

CREATE TABLE another_table (
  another_table_key numeric NOT NULL,
  do_stuff_key numeric,
  CONSTRAINT another_table_pk PRIMARY KEY (another_table_key),
  ONSTRAINT another_table_reference_fk FOREIGN KEY (do_stuff_key)
      REFERENCES reference_table (reference_table_key) MATCH SIMPLE
      ON UPDATE NO ACTION …
Run Code Online (Sandbox Code Playgroud)

sql postgresql foreign-keys

4
推荐指数
1
解决办法
2561
查看次数

如何查看PostgreSQL服务器中的表关系?

如何查看PostgreSQL服务器中的表关系?两年多前,我曾多次尝试在 PostgreSQL 服务器中查找表关系,但无法获得任何帮助。那么有什么方法可以在 SQL Server 或 Access 中找到相同的表关系吗?或者可以在PostgreSQL服务器中查看表关系吗?

java vb.net postgresql

4
推荐指数
1
解决办法
2万
查看次数

从PostgreSQL删除未命名的约束

在PostgreSQL中,我具有以下表定义

create table file(
    file_id int generated by default as identity primary key,
    file_name text UNIQUE not null
);
Run Code Online (Sandbox Code Playgroud)

我的问题是:如何删除对的唯一约束file_name

postgresql unique-constraint

1
推荐指数
1
解决办法
217
查看次数