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
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!