Sequel有last_insert_id方法吗?
插入后,我需要知道该行的 ID,我该怎么做?
After an insert, I need to know the ID from the row, how can I do that?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
插入后,我需要知道该行的 ID,我该怎么做?
After an insert, I need to know the ID from the row, how can I do that?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(2)
根据 Dataset#insert 文档,返回值
insert()
通常是插入行的主键,但这取决于您使用的适配器。According to the Dataset#insert documentation, the return value for
insert()
is usually the primary key of the inserted row, but it depends which adapter you're using.我尝试使用 SQL-Server 和 uniqueidentifier 进行相同的操作,但没有成功。不返回唯一标识符。
从我的定义中摘录:
当我使用 Sequel 插入时:
数据集添加了唯一标识符,但如果 Dataset#insert 为
nil
,则返回代码。与
你得到相同的结果。
我尝试过,
但“键”只是函数调用,而不是值。使用
Sequel.function(:ID).f
,你会得到一个“无效的列名ID'。”-错误但是如果你使用模型,你会得到唯一标识符:
I tried the same with SQL-Server and a uniqueidentifier, but without success. The uniqueidentifier is not returned.
Extract from my Definition:
When I insert with Sequel:
the dataset is added with a uniqueidentifier, but the return code if Dataset#insert is
nil
.With
you get the same result.
I tried
but 'key' is only the function call, not the value. With
Sequel.function(:ID).f
you get an "Invalid column name ID'."-errorBut if you use a Model, the you get the uniqueidentifier: