laravel - 无法通过 Laravel 插入多个 INSERT 查询
问题描述
我有简单的多重插入:
$query = "
INSERT INTO `products` SET `code` = '0100130', `price` = '273.90', `brand` = 'Alpina', `supplier` = 'karat';
INSERT INTO `products` SET `code` = '0600075', `price` = '222.24', `brand` = 'Alpina', `supplier` = 'karat';
";
我已经尝试过DB::raw($query)
,,DB::query($query)
-DB::statement($query)
所有三个都失败了。但是如果只有一个 INSERT 语句,这三个都可以工作。如果不止一个,我不会收到错误,但不会执行插入。
我正在寻找一种最快的方式来导入 1300 万个插入。服务器一一插入需要24小时。
Laravel v7.12.0
解决方案
试试这样:
$query = "
INSERT INTO products(code, price, brand, supplier) VALUES
(0100130, 273.90, 'Alpina', 'karat'),
(0100130, 273.90, 'Alpina', 'karat')
";
您不能在一个 sql 查询中执行两个(或更多) INSERT INTO 。
推荐阅读
- r - 应用纵向分析上的 nlme::gls() R 代码,第 2 版网站需要一些调整
- python - 如何取消一个cmd命令python
- java - 如何解决android studio中的输入/输出错误?
- docker - 如何使用 docker-compose 将 MinIO 与 Keycloak 集成?
- python - 在 Keras 中自定义减少每批次的损失
- harbor - 如何在港口注册表 UI 上显示工件的自定义图标?
- javascript - 绕过 FCM 数据消息的通知请求弹出窗口?
- c++ - 从接受的客户端连接中获取 C++/WinAPI recv() 函数中的多行输入
- html - 带角度动态表的离子
- c# - 防止会话超时重置定期 AJAX 调用 (.NET Framework 4)