带约束的 Psql COPY 失败

2024-03-13

我在服务器中有一个这样的表:

CREATE TABLE example_table (
id                          BIGSERIAL PRIMARY KEY,
name                        VARCHAR(70) NOT NULL,
status                      VARCHAR(70) NOT NULL CONSTRAINT status_enum CHECK (status IN ('old', 'new')),
UNIQUE (id, name)
);

我有一个 SQL 文件 example.sql。第一行包含标题:

name_of_class,status
'CLASSNAME','old';

我尝试运行 psql \copy 到谷歌服务器:

PGPASSWORD=password psql -d database --username username --port 5432 --host 11.111.111 << EOF
    BEGIN;
    \copy example_table(name,status) FROM example.sql DELIMITER ',' CSV Header
    COMMIT;
EOF

然后我得到这个错误:

ERROR:  new row for relation "example_table" violates check constraint "status_enum"
DETAIL:  Failing row contains (1, 'CLASSNAME', 'old';).
CONTEXT:  COPY example_table, line 2: "'CLASSNAME','old';"
ROLLBACK

知道如何解决这个问题吗? ????


您的源 csv 似乎正在使用'(单引号)引用所有列。您可以使用选项将其指定为引号字符QUOTE https://www.postgresql.org/docs/current/static/sql-copy.html

The \copy命令正在尝试加载'old'进入状态列,检查值是new or old。额外的引号违反了约束。

\copy example_table(name,status) FROM example.sql DELIMITER ',' CSV Header QUOTE ''''

需要 4 个单引号,因为 1 指定实际的引号字符,1 转义引号字符,2 括起转义的引号字符。

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

带约束的 Psql COPY 失败 的相关文章

  • Postgres - 这是在布尔列上创建部分索引的正确方法吗?

    我有下表 CREATE TABLE recipemetadata Lots of columns diet glutenfree boolean NOT NULL 大多数每一行都会被设置为FALSE除非有人想出一些席卷全国的疯狂新无麸质饮食
  • 将 List 作为参数传递到 postgres 的函数中

    我有这样的 Spring 数据存储库接口 public interface MyEntityRepository extends JpaRepository
  • postgreSQL 将分区表(带插入触发器)从一台服务器转储和恢复到另一台服务器

    尝试将分区表从一台服务器转储到 PostgreSQL 9 4 5 中的另一台服务器 对 postgres 相当陌生 并继承了该项目 如果需要更多背景信息 请告诉我 dbname gt SELECT COUNT id FROM parent
  • 将数组文字传递给 PostgreSQL 函数

    我有一个包含 select 语句的 Postgres 函数 我需要使用包含字符串值数组的传入变量添加条件 CREATE OR REPLACE FUNCTION get questions vcode text RETURN return v
  • Docker-compose v3 不持久保存 postgres 数据库

    在 docker compose v3 容器关闭并重新启动后 我很难保留 postgres 数据 这似乎是一个常见问题 但经过大量搜索后我无法找到有效的解决方案 我的问题与这里类似 如何使用卷将数据保存在 dockerized postgr
  • org.postgresql.util.PSQLException:协议错误。会话设置失败

    我知道这些类型的问题已经存在 但提供的解决方案对我不起作用 在我的应用程序中 没有版本不匹配的黑白驱动程序和 PostgreSQL 服务器 我还没有找到任何其他解决方案 我正在使用 PostgreSQL 服务器 9 4 和 postgres
  • PostgreSQL:在所有表字段的长度上创建索引

    我有一张桌子叫profile 我想按照填写最多的内容对它们进行排序 每列都是 JSONB 列或 TEXT 列 我不需要很大程度的确定性 所以通常我会按如下方式订购 SELECT FROM profile ORDER BY LENGTH CO
  • 如何在 Go 应用程序中处理打开/关闭数据库连接?

    我的 Web API 应用程序中有一组函数 他们对 Postgres 数据库中的数据执行一些操作 func CreateUser db err sql Open postgres user postgres password passwor
  • 查询交叉表视图

    我在 PostgreSQL 中有一个表 如下所示 Item1 Item2 Item3 Item4 Value1 Value2 Value3 Value4 我想要一个查询 该查询将显示如下表 ItemHead ValueHead Item1
  • Postgres 运行缓慢的删除查询

    我们有一个表 其行数刚刚超过 62k 我们正在对其运行一个非常简单的删除查询 需要 45 分钟才能完成 DELETE FROM myTable WHERE createdtime lt 2017 03 07 05 00 00 000 我们尝
  • Postgres where 子句比较时间戳

    我有一个表 其中列的数据类型timestamp 其中包含一天的多条记录 我想选择与日期对应的所有行 我该怎么做 Assuming you actually mean timestamp because there is no datetim
  • PostgreSQL 如何创建数据库或模式的副本?

    有没有一种简单的方法可以在 PostgreSQL 8 1 中创建数据库或模式的副本 我正在测试一些软件 它对数据库中的特定模式进行大量更新 我想复制它 以便我可以与原始版本进行一些比较 如果它位于同一服务器上 则只需使用带有 TEMPLAT
  • 返回年份数组作为年份范围

    我正在尝试查询一个包含以下内容的表character varying 年份列 并将这些年份作为逗号分隔的年份范围字符串返回 年份范围将由数组中存在的连续年份确定 不连续的年份 年份范围应以逗号分隔 数据类型的原因是character var
  • 对 postgresql 中使用 array_agg 创建的文本聚合进行排序

    我在 postgresql 中有一个表 下表 动物 可以解释我的问题 name tiger cat dog 现在我正在使用以下查询 SELECT array to string array agg name FROM animals 结果是
  • 随机数据库与 AWS 中的 Django 和 Postgresql 断开连接

    我试图找出 Django 和数据库连接错误问题的根源 此时 我正在调试提示 因为我认为症状太不具体 一些背景 我一直在使用这个堆栈 在 AWS 中部署了很多年 没有出现任何问题 Ubuntu 在本例中为 20 04 LTS Nginx Uw
  • postgresql 中的锁定表

    我有一个名为 games 其中包含一个名为 title 该列是唯一的 数据库中使用PostgreSQL 我有一个用户输入表单 允许他插入新的 game in games 桌子 插入新游戏的功能会检查之前输入的游戏是否存在 game 与相同的
  • Postgresql 的 SQL_NO_CACHE?

    MySQL 关键字是否有等效的 postgresqlSQL NO CACHE 或 SQL Serverdbcc drop clean buffers 即您可以简单地将其包含在 SQL 语句中或作为脚本的一部分吗 UPDATE 这个问题 查看
  • JPA 和 PostqreSQL:长字符串持久化

    谁能告诉我如何使用 JPA 保存长文本 我使用 PostgreSQL 这是我在类中定义很长字符串的方法 Lob private String body 然而 这会产生一个类型的字段字符变化 255 在数据库中 此外 我尝试使用 Column
  • 手动更改postgresql中查询的执行计划?

    是否可以在postgresql中手动更改执行计划的操作顺序 例如 如果我总是想在过滤之前进行排序操作 尽管这在 postgresql 的正常使用中没有意义 是否可以通过例如手动强制执行该操作改变运营的内部成本 如果我实现自己的功能呢 是否可
  • PostgreSQL:使用for循环迭代表行,根据当前行检索列值

    我有以下2张表 CREATE TABLE salesperson t salespersonid numeric 4 0 NOT NULL salespersonname character varying 25 salespersonte

随机推荐

  • 如何获得 Aptana 的代码协助以与 Google Maps API v3 配合使用?

    有一个 Google 地图 API v3Visual Studio 智能感知助手 http gmapvsdoc codeplex com 这可能非常适合 Visual Studio 但 Aptana 基于 Eclipse 使用不同的 Jav
  • 发送密钥不起作用 selenium webdriver python

    我需要将文本发送到描述文本区域 有一些预定义的文本 单击后会被清除 我尝试在 sendkeys 之前使用 clear 或 click 但没有任何效果正常 它将向那里发送文本 但它仍然是灰色的 并且保存页面后出现错误 说明中没有文本 我可以使
  • 在 Java 中使用 String 和 Object 的 equals() 方法

    Object o1 new Object Object o2 new Object o1 o2 System out println o1 equals o2 它返回false 它可以返回true 如果评论被删除 为什么同样的事情不适用于S
  • 是否可以对我的 iPhone 应用程序进行逆向工程?

    我创建了一个 iPhone 应用程序 我想将编译后的 app 文件发送到我的客户端 以便他可以在他的设备上安装和测试这个 iPhone 应用程序 他是否有可能查看这个 app文件的内容 比如这个应用程序中使用的资源文件 图像 声音文件等 他
  • 在 PDF 中使用 Javascript 列出 XFA 对象的属性

    我正在尝试创建一个包含多个文本字段的 PDF 文档 这些文本字段的高度可以增长到某个最大值 由于项目的限制 我使用的是 Adob e Designer 7 它很高兴允许使用 Javascript 然而 XFA 中的对象与 HTML DOM
  • 验证不适用于 EntityManager.merge()

    我对我的实体几乎没有验证 例如 NotNull 还有一些一代人 比如 Id GeneratedValue strategy AUTO Column name ID private Long id Column GeneratedValue
  • 如何通过 CloudFront 将对象放入 S3

    我想通过 CloudFront 将图像上传到 S3 如果你看到关于CloudFront的文档 你可以发现cloud front提供了put方法来上传到cloudFront 可能会有人问我为什么使用云端上传到S3 如果你搜索一下 你就能找到解
  • 运算符和操作数的排列算法

    我在一个面试网站上看到了这个问题 我们有 4 个数字 即 n1 n2 n3 n4 我们可以将它们放置在任何 顺序 我们可以在它们之间使用数学运算符 最终结果为 24 为此编写一个算法 需要 4 个数字并返回 false 或 true 最终结
  • Eclipse 给出错误,最近更新后缺少 R.java 文件

    我已经更新了我的SDK and ADT到最新版本 我也更新了Eclipse to Kepler最新一篇之后Juno My ADT版本是22 0 在此更新之后 当我创建新项目时 出现错误 指出R cannot be resolved to a
  • 编写一个http嗅探器

    我想编写一个程序来通过数据包捕获提取系统访问的网站的 URL IP 地址 我认为该 URL 将出现在数据部分中 即不在任何标头中 ethernet ip tcp udp 此类程序有时称为http嗅探器 我不应该使用任何可用的工具 作为初学者
  • 无法解析 IntelliJ Idea IDE 中的符号 javafx.application

    我尝试创建一个JavaFXIntelliJ Idea IDE 中的应用程序 但我收到编译错误 java 包 javafx application 不存在 我已将项目 SDK 和项目语言级别更改为 Java 8 重新加载项目 但没有帮助 然后
  • 如何给 TriangleMesh 中的一些三角形着色?

    我想用不同的颜色为 TriangleMesh 的一些三角形着色 最简单的方法是什么 甚至可以在 fxml 文件中实现 java代码 import javafx application Application import javafx fx
  • 以最小尺寸分割字符串

    我正在编写一个 python 脚本 它将接受点分隔的版本号 它将把这个字符串分成单独的部分 使用句点 作为分隔符 我的脚本最多支持 4 个组件 例如1 2 3 4 然而 用户可以指定less or more组件数量超过 4 个 我的脚本需要
  • 在 Bootstrap 3 导航栏上使用 NAV 和 DIV 有什么区别?

    在最新的 Bootstrap 3 导航栏的示例中 我在网络上找到了各种示例 其中外部导航栏标记是 div class navbar navbar default navbar static top div 和其他例子正在使用
  • Clang:错误:非静态数据成员的使用无效

    这个 gcc 是否过于友善并且做了开发人员认为它会做的事情 或者 clang 对某些事情过于挑剔 我是否遗漏了标准中的一些微妙规则 其中 clang 对此的抱怨实际上是正确的 或者我应该使用第二位代码 这基本上就是 offsetof 的工作
  • 如何在 Java 中将文件路径列表转换为 Hireachial 树

    有人可以给我一些建议吗 我想要获取文件路径列表 只是字符串 并转换为类似层次树的结构 因此有两个任务 解析字符串以创建树 以及创建树或某种映射结构以实际将结果放入其中 第三个任务是解析树以在 html 中显示为树 我使用的是 Java 7
  • Laravel中保存模型时直接设置ID和设置eloquent关联关系有什么区别?

    我有两张桌子 employees and employee types employees有以下字段 id PK 员工类型 ID 外籍 name and employee type有以下字段 id PK title 我雄辩的模型函数是 Em
  • GLSL 版本变更日志?

    我可以在哪里阅读有关 GLSL 从版本 1 1 到 1 2 以及从 1 2 到 1 3 所做的更改和添加的信息吗 谷歌似乎对此不知所措 我真的不想开始阅读完整的规范 1 3版 http www opengl org registry doc
  • 无法将类型字符串用作 sql.NullString

    我正在创建一个gorm model Day is a corresponding day entry type Day struct gorm Model Dateday string json dateday gorm type date
  • 带约束的 Psql COPY 失败

    我在服务器中有一个这样的表 CREATE TABLE example table id BIGSERIAL PRIMARY KEY name VARCHAR 70 NOT NULL status VARCHAR 70 NOT NULL CO