gpt4 book ai didi

ruby-on-rails - 复制带有 ID 列的 CSV 文件

转载 作者:行者123 更新时间:2023-11-29 12:39:05 25 4
gpt4 key购买 nike

我有一个 Rails 应用程序,我正在尝试通过 PostgreSQL 的 COPY 命令将数据加载到其中。该文件是 CSV。该表映射到 Rails 模型,我需要保留主键 ID 列,以便我可以使用 model.for_each 来处理数据——该表将有超过 500 万行。

我的问题是,如何构建我的 CSV 文件,以便我可以将数据加载到表中,同时仍然允许 ID 列存在?这是一个无赖,因为我需要它的唯一原因是 for_each 方法。

无论如何,我尝试发送 NULL,如:

NULL,col1,col2,col3,col4, etc.

但它不起作用。

谢谢。

最佳答案

无论您为空字符串设置了什么选项,为主键传递空值都不会起作用。您会告诉后端将主键设置为 null,无论要插入的命令是什么,它都不会允许。

我真的不知道你说的保留主键是什么意思。这是无论做什么都会保留的东西。如果您的意思是让数据库为您选择值并且主键是一个序列(自动递增),那么明确命名除主键之外的所有列:

COPY country (colA, colB, colC) FROM '/usr1/proj/bray/sql/country_data'; -- leave out pkey

阅读有关您想使用哪些空字符串选项的文档而不是猜测可能的值可能会更快:

http://www.postgresql.org/docs/9.0/static/sql-copy.html

关于ruby-on-rails - 复制带有 ID 列的 CSV 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5304297/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com