SQLSERVER2000不支持ADO?

xyjnsdcn 2003-12-29 08:47:22
TEST表结构
id自增number
v1 varchar
v2 varchar


代码:
<!--#include file="inc/cnsql.inc"-->
<%
set rs=server.CreateObject("adodb.recordset")
sql1="test"
rs.Open sql1,conn,1,3
rs.AddNew
rs("v1")="hello"
rs("v2")="world"
rs.Update

v1=rs("v1")
v2=rs("v2")
consumerid=rs("id")

Response.Write "<br>consumerid="&consumerid
Response.Write "<br>v1="&v1
Response.Write "<br>v2="&v2
rs.Close
%>

结果:
consumerid=
v1=hello
v2=world

consumerid总是取不到值,为什么?
...全文
30 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
gujinpeng 2004-01-13
  • 打赏
  • 举报
回复
rs.Open sql1, conn, 3, 3
改成->rs.Open sql1, conn, 1, 1
kirc 2004-01-13
  • 打赏
  • 举报
回复
搂主的例子,在我这是好用的
可以返回阿
去掉 movelast 就不行了

我这样试了一下也可以的

sql = "INSERT INTO test1 (txt1, txt2) VALUES ('" & v1 & "','" & v2 & "'); SELECT @@IDENTITY " 'IDENT_CURRENT('test1') as new"
Set rs = conn.Execute (sql)
Set rs2 = rs.NextRecordset
Response.Write "<br/>consumerid=" & rs2(0)
Response.Write "<br/>v1="&v1
Response.Write "<br/>v2="&v2
Set rs = Nothing
Set rs2 = Nothing

注释后面的那个也是好用的..
LoneHome 2004-01-13
  • 打赏
  • 举报
回复
数据库设置的问题吧!
设主键了吗?
xyjnsdcn 2004-01-09
  • 打赏
  • 举报
回复
再顶
xyjnsdcn 2004-01-08
  • 打赏
  • 举报
回复
UP
xyjnsdcn 2004-01-07
  • 打赏
  • 举报
回复
自增ID有什么问题?

程序执行完后取不到ID值,但数据库里是有的。
angel2a 2004-01-06
  • 打赏
  • 举报
回复
自增ID的问题
xyjnsdcn 2004-01-06
  • 打赏
  • 举报
回复
楼上的,看看我的程序哪里有问题?请指点
Ranmei 2004-01-06
  • 打赏
  • 举报
回复
不可能
是你写程序有问题
babycoolku 2004-01-06
  • 打赏
  • 举报
回复
关注ing~~~
xyjnsdcn 2004-01-06
  • 打赏
  • 举报
回复
coolidea(softet) 能详细讲讲吗?


我要做的是要同时(就是一个事务里)在两个表里各插入1条记录,其中一条记录的列值为另一条记录所在表里的自增ID的值,怎么写呢?


解决后,可另开贴给100分
agust 2004-01-05
  • 打赏
  • 举报
回复
帮你up
coolidea 2004-01-05
  • 打赏
  • 举报
回复
ADO当然支持,自增ID不是这样获得的,应该用:
@@identity
如果是sql2000以上的话还可以用IDENT_CURRENT,SCOPE_IDENTITY这两个函数,比@@identity更好用
xyjnsdcn 2004-01-05
  • 打赏
  • 举报
回复
用rs.MoveLast无法获得刚插入的记录的自增ID啊
topmonkey 2003-12-30
  • 打赏
  • 举报
回复
<!--#include file="inc/cnsql.inc"-->
<%
set rs=server.CreateObject("adodb.recordset")
sql1="test"
rs.Open sql1, conn, 3, 3
rs.AddNew
rs("v1")="hello"
rs("v2")="world"
rs.Update
rs.MoveLast

v1=rs("v1").Value
v2=rs("v2").Value
consumerid=rs("id").Value

Response.Write "<br>consumerid="&consumerid
Response.Write "<br>v1="&v1
Response.Write "<br>v2="&v2
rs.Close
%>
xeimm 2003-12-30
  • 打赏
  • 举报
回复
看着怎么感觉怪怪的,在写一个查询 sql="select * form test order by id desc"
放在下面代码的前面
v1=rs("v1")
v2=rs("v2")
consumerid=rs("id")

Response.Write "<br>consumerid="&consumerid
Response.Write "<br>v1="&v1
Response.Write "<br>v2="&v2
rs.Close
xyjnsdcn 2003-12-30
  • 打赏
  • 举报
回复
楼上的做法不和要求啊。需要一步完成
wshzhi 2003-12-29
  • 打赏
  • 举报
回复
<!--#include file="inc/cnsql.inc"-->
<%
set rs=server.CreateObject("adodb.recordset")
sql1="test"
rs.Open sql1,conn,1,3
rs.AddNew
rs("v1")="hello"
rs("v2")="world"
rs.Update
set rs=nothing
rs=nothing
sql1="select * from test"
rs.open sql1,conn,1,3
v1=rs("v1")
v2=rs("v2")
consumerid=rs("id")

Response.Write "<br>consumerid="&consumerid
Response.Write "<br>v1="&v1
Response.Write "<br>v2="&v2
rs.Close
%>

试试能得到什么结果
shleo 2003-12-29
  • 打赏
  • 举报
回复
数据库里有没有这条记录
xyjnsdcn 2003-12-29
  • 打赏
  • 举报
回复
为什么啊?
加载更多回复(2)

28,407

社区成员

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

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