mysql - 在rails中如何在表中插入数千条记录
问题描述
我已经使用 Ruby on Rails 创建了 API。当我调用 API 端点插入超过 1000 条记录时,它会崩溃。目前,我正在使用数据库Mysql2
我的代码是
quantity.times do
User.create(first_name: "John")
end
需要插入的记录数在哪里quantity
,可以是任何数字,例如 10000、4000000。
谁能建议我如何在不破坏服务器的情况下非常有效地做到这一点
解决方案
items = []
quantity.times.each do |row|
items << User.new(name: "john")
end
User.import(items)
只需查看这些基准,即可了解此选项的速度有多快。这不是为生成 SQL 的单独事务、提交和插入, Model.create
而是在单个查询中处理它。
参考
推荐阅读
- ios-universal-links - 应用搜索 API 验证工具显示“example.com 正在返回 469。请检查您的网址并重试。”
- sql - 弹性搜索过滤器组合
- echo - Singularity exec - 回显重定向问题
- java - 如何拒绝 DML 和 DDL 查询?
- oauth - 报名后登记表
- python - 使用 python 脚本发送带有嵌入图像的 html 电子邮件
- javascript - 移动设备上的 BXSlider 4 全屏:如何保持原生垂直页面滚动(上、下)但保持水平触摸功能(左、右)?
- matlab - MATLAB中的双重求和表达式
- c# - 当文件中的值显然是英文文本时,为什么将文件中的字节编组到结构中会产生亚洲字符?
- java - 如何在基于 Firebase 实时数据库的 android 中添加搜索过滤器?