gpt4 book ai didi

ruby-on-rails - 截断并重新启动一组表的标识

转载 作者:行者123 更新时间:2023-11-29 14:37:46 25 4
gpt4 key购买 nike

我的应用程序使用 Postgresql
我需要从一组表(table1table4)中删除所有行,然后使用 rb 文件中的一个命令重新启动 id

Postgresql documentation我发现使用 RESTART IDENTITY 的 TRUNCATE 将完成如下工作:

TRUNCATE table1, table2, table3, table4 RESTART IDENTITY;

根据 How to restart id counting on a table in PostgreSQL after deleting some previous data?在 Stackoverflow,我可以使用以下命令:

ActiveRecord::Base.connection.execute("TRUNCATE TABLE your_table_name RESTART IDENTITY")

因此将两个文档放在一起,使用以下命令是否正确:

ActiveRecord::Base.connection.execute("TRUNCATE table1, table2, table3, table4 RESTART IDENTITY")

考虑到 API dock文档 connection 方法被报告为已弃用或移动?

最佳答案

现在推荐的方法是使用 ActiveRecord::Base.connection_pool.with_connection block 。

ActiveRecord::Base.connection_pool.with_connection do |conn|
conn.execute("TRUNCATE table1, table2, table3, table4 RESTART IDENTITY")
end

关于ruby-on-rails - 截断并重新启动一组表的标识,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41829230/

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