我正在开发一个symfony应用程序,我需要一次插入多个raw,Doctrine ORM不是一个好选择,因为对于每个raw,它将打开一个连接来执行查询,为了避免这种情况,并有一个连接插入所有原料我使用准备声明的dbal语言,它工作正常,除了我需要获得插入的原始码的ID,它似乎唯一可用的函数是lastinsertedid它只返回最后一个ID不是所有最后插入的,我怎么能做到这一点? 任何帮助将不胜感激!通过doctrine获取插入的raws的id dbal
-1
A
回答
2
这实际上与教义无关。如果你想要所有插入的id,它必须在MySQL中可能。 “这是不可能的,如果学说没有批量插入它将支持批量插入:)之后返回ID列表”
检查与MySQL有关的答案:
How can I Insert many rows into a MySQL table and return the new IDs?
MySQL LAST_INSERT_ID() used with multiple records INSERT statement
但它可能在postgresql(因为你没有提到你DB):
1
在将内容插入数据库之前,您实际上可以生成ID。例如,使用随机UUID。 这个库可能是使用:https://github.com/ramsey/uuid
use Ramsey\Uuid\Uuid;
$uuid4 = Uuid::uuid4();
echo $uuid4->toString()
相关问题
- 1. Doctrine DBAL获取服务器信息
- 2. 插入一条与Doctrine有关系的记录后获取ID
- 3. 想使用Doctrine DBAL
- 4. Doctrine DBAL支持存储过程
- 5. 使用insert()方法将DateTime值插入到PHP Doctrine \ DBAL中2
- 6. Doctrine DBAL和Oracle关键字
- 7. Laravel - 安装doctrine/dbal失败
- 8. 在应用程序初始化时获取doctrine dbal为空
- 9. Mysql插入获取ID然后插入返回的Id
- 10. 插入,获取ID并同时插入
- 11. 获取后插入ID春
- 12. 获取最后插入的行的ID
- 13. 如何从SQL Server中通过QSqlQuery.lastInsertId()获取最后插入的行的ID?
- 14. 获取最后插入的ID
- 15. 获取最后一个插入的ID
- 16. sqlalchemy flush()并获取插入的ID?
- 17. 获取插入后产生的ID
- 18. 使用C#获取插入行的ID
- 19. 获取插入对象的ID
- 20. 获取当前mysql插入的ID
- 21. 插入后获取生成的ID
- 22. Node + Mongoose:获取最后插入的ID?
- 23. 通过id()获取对象?
- 24. 通过Id获取元素
- 25. 获取被插入的记录的ID插入后
- 26. 获取值的行ID通过Ajax
- 27. 通过关系获取模型ID的
- 28. 通过id或itemId获取TabPanel的Tab
- 29. 通过id获取组件的值?
- 30. 获取插入的ID如果插入发生REPLACE INTO
位题外话,但该学说ORM打开每个查询新的连接的概念是不准确的。你能显示你准备好的sql语句吗? – Cerad