尝试修改 PostgreSQL 中的约束

2024-03-02

我检查了Oracle提供的文档,找到了一种在不删除表的情况下修改约束的方法。问题是,它在修改时出错,因为它无法识别关键字。

使用 PostgreSQL 的 EMS SQL 管理器。

Alter table public.public_insurer_credit MODIFY CONSTRAINT public_insurer_credit_fk1
    deferrable, initially deferred;

我可以通过使用以下方法删除约束来解决这个问题:

ALTER TABLE "public"."public_insurer_credit"
  DROP CONSTRAINT "public_insurer_credit_fk1" RESTRICT;

ALTER TABLE "public"."public_insurer_credit"
  ADD CONSTRAINT "public_insurer_credit_fk1" FOREIGN KEY ("branch_id", "order_id", "public_insurer_id")
    REFERENCES "public"."order_public_insurer"("branch_id", "order_id", "public_insurer_id")
    ON UPDATE CASCADE
    ON DELETE NO ACTION
    DEFERRABLE 
    INITIALLY DEFERRED;

没有ALTERPostgres 中的约束命令。实现这一目标的最简单方法是drop约束并使用所需的参数重新添加它。当然,约束的任何更改都将针对当前表数据运行。

BEGIN;
ALTER TABLE t1 DROP CONSTRAINT ...
ALTER TABLE t1 ADD CONSTRAINT ...
COMMIT;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

尝试修改 PostgreSQL 中的约束 的相关文章

  • 将图像列保存到 SQL Server 2000 中的文件

    我在 SQL Server 2000 中有一个包含图像列的表 我需要将图像数据保存到文件系统上的文件中 在 SQL Server 2005 中 我可以使用 ADODB Stream 对象进行文件 I O 但这在 SQL Server 200
  • 如何检查oracle数据库中分配给模式、角色的对象的权限(DDL、DML、DCL)?

    大多数时候 我们都在与愚蠢的事情作斗争 以获取架构 角色及其对象的权限详细信息 并尝试找到一些简单的方法来获取有关它的所有详细信息以及伪查询代码 以批量生成授予语句以供进一步使用执行 所以我们在这里得到它 关于数据字典视图前缀的一些简单介绍
  • SQL Server Like 查询不区分大小写

    Query SELECT from Table 2 WHERE name like Joe Output 1 100 Joe 2 200 JOE 3 300 jOE 4 400 joe 为什么不区分大小写 Problem 查询不区分大小写
  • 唯一约束与唯一索引?

    之间有区别吗 CREATE TABLE p product no integer name text UNIQUE price numeric and CREATE TABLE p product no integer name text
  • REGEXP_REPLACE - 仅当包含在 () 中时才从字符串中删除逗号

    我在 oracle 论坛网站找到了一个例子 输入字符串 a b c x y z a xx yy zz x WITH t AS SELECT a b c x y z a xx yy zz x col1 FROM dual SELECT t c
  • 创建日期范围表

    我正在编写一份需要显示每天值的报告 我有查询的开始日期和结束日期 但我希望避免丢失日期 以防表不包含特定日期的值 我正在考虑创建一个基本日期范围表 其中包含开始和结束之间的所有日期 然后将其与数据表左连接以显示每一天的值 我找到了一些适用于
  • Postgres:显示继承的字段

    我应该实现什么查询来获取继承的列 读过this http www alberton info postgresql meta info html综合帖子没有找到解决办法 如果我理解正确的话 您想知道作为表之间继承的一部分的列的名称 SELE
  • 在 SQL 中按键组对行进行顺序编号?

    SQL中有没有办法按顺序添加行号按关键组 假设一个表包含任意 CODE NAME 元组 示例表 CODE NAME A Apple A Angel A Arizona B Bravo C Charlie C Cat D Dog D Dopp
  • SQL 约束最小值/最大值?

    有没有办法为数字字段设置 SQL 约束 最小值应为 1234 最大值应为 4523 SQL Server 语法为the check约束 http technet microsoft com en us library ms179491 as
  • 如何使用 SQL 通过表示多级订单的 varchar 字段正确排序?

    我不太喜欢数据库 我发现在查询上出现以下问题SQL服务器数据库旧的遗留应用程序的 我声明不幸的是我无法更改数据库结构 字段类型 这非常难看 我有以下情况 SELECT Sottocategoria IdSottocategoria IdCa
  • 我应该使用平面表还是标准化数据库?

    我目前正在开发一个使用 MySQL 数据库作为后端的 Web 应用程序 在继续下一步之前 我需要知道什么更适合我的情况 简而言之 在这个应用程序中 用户将能够使用任何数字字段 他们决定 构建自己的表单 现在我将其全部存储在通过外键链接的几个
  • 如何计算 Postgres 上图表中所有连接的节点(行)?

    我的桌子有account id and device id One account id可以有多个device ids 反之亦然 我正在尝试计算每个连接的多对多关系的深度 Ex account id device id 1 10 1 11
  • Npgsql 参数化查询输出与 PostGIS 不兼容

    我在 Npgsql 命令中有这个参数化查询 UPDATE raw geocoding SET the geom ST Transform ST GeomFromText POINT longitude latitude 4326 3081
  • SQLite (Android):使用 ORDER BY 更新查询

    Android SQLite 我想要在 myTable 中的其他行之间插入行在android中使用SQLite 为此 我尝试增加从第 3 行开始的所有行的 id 这样 我就可以在位置 3 处插入新行 myTable 的主键是列 id 表中没
  • 在 PostgreSql 中计算百分比

    例如我有一个这样的表 string adm A 2 A 1 B 2 A 1 C 1 A 2 通过 SQL 查询 我想要这样的结果 string perc adm A 50 B 100 C 0 我想要每个字符串中数字 2 出现的百分比 我可以
  • MySQL:如何获取每个分组的x个结果数[重复]

    这个问题在这里已经有答案了 可能的重复 mysql 在 GROUP BY 中使用 LIMIT 来获取每组 N 个结果 https stackoverflow com questions 2129693 mysql using limit w
  • Postgres JSON 数据类型 Rails 查询

    我正在使用 Postgres 的 json 数据类型 但想要使用嵌套在 json 中的数据进行查询 排序 我想在 json 数据类型上使用 where 进行订购或查询 例如 我想查询关注者数量 gt 500 的用户 或者我想按关注者或关注数
  • pg_dump 与 pg_dumpall?使用哪一个来进行数据库备份?

    I tried pg dump然后在另一台机器上我尝试导入 sql 并填充数据库 我看到 CREATE TABLE ERROR role prod does not exist CREATE TABLE ERROR role prod do
  • C# using 语句、SQL 和 SqlConnection

    使用 using 语句 C SQL 可以吗 private static void CreateCommand string queryString string connectionString using SqlConnection c
  • 标量子查询包含多行

    我正在使用 H2 数据库并想要移动一些数据 为此 我创建了以下查询 UPDATE CUSTOMER SET EMAIL SELECT service EMAIL FROM CUSTOMER SERVICE AS service INNER

随机推荐

  • Javax Websocket 由于非法 UTF-8 序列而关闭

    我正在使用 javax websocket API 用 Ja va 编写一个 Websocket 客户端 并且org glassfish tyrus作为实施 通常一切正常 但有时 当我收到非常大的字符串时 连接会以神秘的 非法 UTF 8
  • 如何向 Code::Blocks 编译器添加 C++11 支持?

    我正在编写一些代码 需要 C 11 支持我的 Code Blocks 12 11 我使用的是 MingW 附带的默认 GNU GCC 编译器 我有什么办法可以做到这一点吗 Go to Toolbar gt Settings gt Compi
  • 在代码隐藏中为 xaml 元素设置多重绑定

    我有以下有效的 XAML 代码 它基本上绑定了几个属性来计算用户控件的最终位置
  • 添加自定义 Video.js 控制栏按钮

    我已经在 video js 上工作了大约一天 所以对于这个东西我是一个真正的新手 今天我只想添加一个在两个视频之间切换的按钮 我用 jQuery 快速简单地完成了它 但我宁愿用 javascript 来更好地理解 video js 的整体
  • Linux vi 箭头键在插入模式下损坏

    我的箭头键在家里的插入模式下的 vi 中不起作用 它们只是插入一个换行符和一个大写字母 例如 A 有办法解决这个问题吗 我猜你正在使用 vim 因为它被标记为 Linux 尝试 set nocompatible 您可能想通过添加此命令来配置
  • 错误:原因:com.android.sdklib.repository.FullRevision

    我想尝试从 AS 2 0 即时运行 为此 我必须将构建插件更新为 2 0 0 alpha6 但执行此操作时 我无法再对项目进行 gradle 同步 因为我得到 Gradle myProject 项目刷新失败 错误 原因 com androi
  • Python:未检测到已安装的 selenium 包

    我正在使用Anaconda http continuum io downloadspython 发行版并想使用selenium http selenium googlecode com svn trunk docs api py index
  • 如何在Python中获取线程id?

    我有一个多线程Python程序和一个实用函数 writeLog message 写出时间戳 后跟消息 不幸的是 生成的日志文件没有给出哪个线程正在生成哪个消息的指示 我想writeLog 能够在消息中添加一些内容来识别哪个线程正在调用它 显
  • 如何在 RSAParameters 上设置用于 RSACryptoServiceProvider 的公钥和私钥?

    我在网上阅读了一些教程 并生成了公钥和私钥 但是如何将它们设置为在 C 中使用 这是我所拥有的 string publicKey string privateKey UnicodeEncoding ByteConverter new Uni
  • 从 BitmapSource 中删除 Alpha

    我使用 BitBlt 和 CreateBitmapSourceFromHBitmap 将窗口捕获为 BitmapSource 可以将其显示在 WPF 应用程序中的 Image 元素上 但由于某种原因 它捕获的大部分应用程序都是透明的 这是正
  • htaccess RewriteRule *.php 到 /*/

    我只是找不到满足我需要的正确解决方案 所以我希望有人能够在这里帮助我 我现在有包含此文件的网站 admin images js about php index php news php questions php 所以我现在的网址是 www
  • Route 53 资源记录集的多个 IP 地址

    我正在研究aws route53 当我创建资源记录集时 我可以将多个IP地址添加到记录集的值中 这里多个IP地址的目的是什么 例如 我的域将路由到服务器 1 和服务器 2 我尝试停止服务器 1 并访问我的域 但它没有路由到服务器 2 这里有
  • MySQL:对空值进行平均

    有没有一种简单的方法可以排除空值对平均值的影响 它们似乎算作 0 这不是我想要的 我只是不想考虑它们的平均值 但问题是 我不能将它们从结果集中删除 因为该记录包含我确实需要的数据 Update example select avg col1
  • 默认参数位于参数列表中间?

    我在我们的代码中看到一个函数声明 如下所示 void error char const msg bool showKind true bool exit 我首先认为这是一个错误 因为函数中间不能有默认参数 但编译器接受了这个声明 有没有人见
  • 如何使用动态语言进行不同的编程?

    真正知道如何利用动态编程语言的人与使用静态语言的人相比 如何以不同的方式进行编程 我熟悉关于静态类型与动态类型的整个争论 但这不是我要表达的内容 我想讨论在动态语言中实用但在静态语言中不实用的问题解决技术 我见过的大多数用动态编程语言编写的
  • Maven2中如何使用maven-simian-plugin?

    我正在寻找 Maven2 报告插件Simian http www redhillconsulting com au products simian 我发现的最接近此类报告的是this http repo1 maven org maven2
  • Rails 服务器 bin/rails:6: 警告: 已初始化常量 APP_PATH 错误

    我尝试了很多方法 例如卸载 重新安装 Rails 和 Gems 但无济于事 当我进入新项目并运行rails s或bundle execrails server时 我收到此错误 bin rails 6 warning already init
  • Excel 图表同时将所有数据标签从值更改为系列名称

    我在尝试更改标签时在 Excel 堆积柱形图中遇到此问题 我的图表有多个列 每列中有数百个堆叠值 系列 通过选择图表 然后从布局 gt 数据标签 gt 更多数据标签选项 gt 标签选项 gt 标签包含 gt 选择 系列名称 我只能用一个系列
  • 带有活动脚手架的三柱连接导轨

    我有一个包含三列的连接表 我尝试使用 a has much through 和 habtm 来定义这三个模型 我使用主动脚手架只是为了 CRUD 功能 然后它将被逐步淘汰 我有一种感觉 如果我想要一个三列连接表 我将不得不尽早淘汰活动脚手架
  • 尝试修改 PostgreSQL 中的约束

    我检查了Oracle提供的文档 找到了一种在不删除表的情况下修改约束的方法 问题是 它在修改时出错 因为它无法识别关键字 使用 PostgreSQL 的 EMS SQL 管理器 Alter table public public insur