asp 用ODBC 连接SQLITE,如何获取刚插入记录的自增ID?

yjbnew 2013-06-11 09:02:19
感觉没有ACCESS方便啊.
在ACCESS中,rs.update 后 自动得到Id,但sqlite好像不行.
...全文
269 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yjbnew 2013-06-16
  • 打赏
  • 举报
回复
select last_insert_rowid(); 解决了.谢谢
WWWWA 2013-06-16
  • 打赏
  • 举报
回复
last_insert_rowid()试试 The last_insert_rowid() function returns the ROWID of the last row insert from the database connection which invoked the function. The last_insert_rowid() SQL function is a wrapper around the sqlite3_last_insert_rowid() C/C++ interface function
yjbnew 2013-06-12
  • 打赏
  • 举报
回复
引用 2 楼 hookee 的回复:
sql = "select * from admin where 1=0" rs.CursorLocation = 3 rs.open sql,conn,1,3 rs.addnew rs("uname")="用户名"&i rs("pwd")="密码"&i rs("right")="r"&i bk = rs.Bookmark rs.update rs.Bookmark = bk id = rs("id") rs.close set rs = nothing ... -------- 另外 SQLITE有直接操作的COM组件,应该比用ADO性能好。
不行,报错误,说无效使用NULL
hookee 2013-06-12
  • 打赏
  • 举报
回复
sql = "select * from admin where 1=0" rs.CursorLocation = 3 rs.open sql,conn,1,3 rs.addnew rs("uname")="用户名"&i rs("pwd")="密码"&i rs("right")="r"&i bk = rs.Bookmark rs.update rs.Bookmark = bk id = rs("id") rs.close set rs = nothing ... -------- 另外 SQLITE有直接操作的COM组件,应该比用ADO性能好。
yjbnew 2013-06-12
  • 打赏
  • 举报
回复
引用 4 楼 Donthan 的回复:
[quote=引用 2 楼 hookee 的回复:] sql = "select * from admin where 1=0" rs.CursorLocation = 3 rs.open sql,conn,1,3 rs.addnew rs("uname")="用户名"&i rs("pwd")="密码"&i rs("right")="r"&i bk = rs.Bookmark rs.update rs.Bookmark = bk id = rs("id") rs.close set rs = nothing ... -------- 另外 SQLITE有直接操作的COM组件,应该比用ADO性能好。
看到bookmark我想问下,我一直用的是movelast,这个和bookmark的优劣能不能解释下? 之前在网上看过bookmark的用法,但是写那文章的人来了一句“看不懂bookmark的直接别写程序了”……好伤心- -[/quote] rs.movelast这个性能太差了
yjbnew 2013-06-12
  • 打赏
  • 举报
回复
引用 2 楼 hookee 的回复:
sql = "select * from admin where 1=0" rs.CursorLocation = 3 rs.open sql,conn,1,3 rs.addnew rs("uname")="用户名"&i rs("pwd")="密码"&i rs("right")="r"&i bk = rs.Bookmark rs.update rs.Bookmark = bk id = rs("id") rs.close set rs = nothing ... -------- 另外 SQLITE有直接操作的COM组件,应该比用ADO性能好。
SQLITE有直接操作的COM组件?哪有?谢谢.
Donthan 2013-06-12
  • 打赏
  • 举报
回复
引用 2 楼 hookee 的回复:
sql = "select * from admin where 1=0" rs.CursorLocation = 3 rs.open sql,conn,1,3 rs.addnew rs("uname")="用户名"&i rs("pwd")="密码"&i rs("right")="r"&i bk = rs.Bookmark rs.update rs.Bookmark = bk id = rs("id") rs.close set rs = nothing ... -------- 另外 SQLITE有直接操作的COM组件,应该比用ADO性能好。
看到bookmark我想问下,我一直用的是movelast,这个和bookmark的优劣能不能解释下? 之前在网上看过bookmark的用法,但是写那文章的人来了一句“看不懂bookmark的直接别写程序了”……好伤心- -
Donthan 2013-06-12
  • 打赏
  • 举报
回复
Rs.Open "SELECT * FROM [TABLE_NAME]",Conn,1,3 Rs.AddNew Rs("fields")=Fields .... Rs.Update Rs.MoveLast Id=Rs("id") Rs.Close Set Rs=Nothing
yjbnew 2013-06-11
  • 打赏
  • 举报
回复
'测试代码: sql="select id,uname,pwd,right from admin where 1<>2" rs.open sql,conn,3,3 rs.addnew rs("uname")="用户名"&i rs("pwd")="密码"&i rs("right")="r"&i rs.update MsgBox rs("id") '为空!

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧