ASP获取新增记录ID值的方法

这篇文章主要介绍了ASP获取新增记录ID值的方法,分别介绍了ASP+Access2000、ASP+SQL Server 2000两种数据库的获取方法,需要的朋友可以参考下

ASP+Access2000

1.要获取的ID值字段属性必须设为:自动编号(我们假设字段名为recordID)
2.添加记录格式:Rs.Open table,Cn,1,3
注意模式为:1,3
3.newID = rs.Fields("recordID")
4.newID为刚添加的记录的ID值

ASP+SQL Server 2000

1.要获取的ID值字段属性必须设为:自动编号(我们假设字段名为recordID)
2.添加记录代码模式:

Cn.Execute"INSERT INTO table(field1,field2,...) VALUES("field1Value","field2Value",...)"

3.得到ID值

Set Rss = Cn.Execute("SELECT SCOPE_IDENTITY() as newIDValue FROM table")
'Rs.Open sqlStr,Cn,3,1
newID = Rss("newIDValue")

4.newID为刚添加的记录的ID值
5.附上取得ID值的三种方式:
/* 对于想要得到一个表中的最后一个插入操作所产生的ID的最好用IDENT_CURRENT('TBName')*/
INSERT INTO table(field1,field2,...) VALUES("field1Value","field2Value",...) SELECT IDENT_CURRENT('recordID') as newIDValue

/*对于马上使用的刚才插入的新记录ID用SCOPE_IDENTITY()是最合适的*/
INSERT INTO table(field1,field2,...) VALUES("field1Value","field2Value",...) SELECT SCOPE_IDENTITY() as newIDValue

/*对于想要得到一系列的操作中最后得到的那个自增的ID最好用@@IDENTITY*/
INSERT INTO table(field1,field2,...) VALUES("field1Value","field2Value",...) SELECT @@IDENTITY as newIDValue

ASP获取刚插入记录值ID补充

实例1

 Set rs = server.CreateObject("adodb.recordset")       sql = "select * from M_mess"   rs.open sql,conn,3,2       rs.addnew       rs("title") = title       rs("nr") = nr   rs("username")=tel   rs("adddate")=now()   rs("zt")=0   rs("lx")=1   rs("xxgl")=uname   rs("nrid")=ids   rs("lszt")=0         rs.update       rs.movelast       newid = rs("id")       rs.Close       Set rs = Nothing

实例2

 conn.Execute("insert into Tb_Order(CT_Name,CT_Ideny,CT_Tel,JD_Name,P_Number,P_Time,Hit) VALUES('"&vCT_Name&"','"&vCT_Ideny&"','"&vCT_Tel&"','"&vJD_Name&"', '"&vP_Number&"','#"&vP_Time&"#','0')") Set Rss = conn.Execute("SELECT @@IDENTITY as id FROM Tb_Order") newID = Rss("id") conn.Execute("update Tb_Order set Look_Id='"&newID&"' where Order_Id='"&newID&"'") conn.close

注:access 不能用@@identity

以上就是ASP获取新增记录ID值的方法的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » ASP编程