我有这段代码:
With shtControleblad
Dim strsql_basis As String
strsql_basis = "INSERT INTO is_calculatie (offerte_id) VALUES ('" & Sheets("controleblad").Range("D1").Value & "')"
rs.Open strsql_basis, oConn, adOpenDynamic, adLockOptimistic
Dim last_id As String
last_id = "select last_insert_id()"
End With
字符串last_id未填充。怎么了?我需要找到te last_insert_id,以便我可以在其他查询中使用它。
答案 0 :(得分:1)
打开记录集后必须添加rs.movelast
,这应该有帮助
答案 1 :(得分:1)
last_id = "select last_insert_id()"
您已设置要执行的sql语句,但 未执行 。
使用上面的语句调用rs.Open
来获取'last_insert_id`。
如果mysql在单行上支持多个sql语句,则可以执行
strsql_basis = "INSERT INTO is_calculatie (offerte_id)
VALUES ('" & Sheets("controleblad").Range("D1").Value & "')
; select last_insert_id()"
rs.Open strsql_basis, oConn, adOpenDynamic, adLockOptimistic