能否在insert的同事返回插入记录的id(id自动编号)?

来源:百度知道 编辑:UC知道 时间:2024/09/23 10:37:17
我用的是ACCESS数据库,我想往一表中插入一条记录的同时,把这条记录的ID存到另一数据表中。请问用SQL如何实现。请详细点。谢谢。
因为在插入一条记录的时候会在最后一条记录下生成插入那条记录的id,这个ID是自动编号的,而这个ID同时存入另一数据表中的某个字段中,这个字段可以是IDID或者PROID,这些字段名称是什么或者数据表是什么不重要,重要的是数据库语言如何实现。
ACCESS是没有触发器的。有很多人用SCOPE_IDENTITY或者 LAST_INSERT_ID()但是在ACCESS中行不通。但是我想知道在access数据库中的实现的最好办法.

在ACCESS数据库中,不能用SCOPE_IDENTITY或者 LAST_INSERT_ID(),只能用于SQL数据库中。

还是分两条语句吧。先取最后一ID号再加1就是要返回的ID,用另一语句存入该ID就可以了。

sql="insert into Productinfo([ProductName],[CateID]) values('"& ProductName&"',"&CateID&")"
set rs_conn=conn.execute("select top 1 id from Productinfo order by id desc")
sql_conn="insert into ProductConn([ProID],[CateID]) values("&rs_conn("id")+1&"," & CateID&")"
conn.execute(sql)
conn.execute(sql_conn)

用insert into 语句来把二个表建立关系.二个表中有一个相同的字断如
id.
insert into 语句也可以表达关系表达式的,所以不要建立也可以!

请楼主详细说明,你这样说容易引起歧义,“把这条记录的ID存到另一数据表中”,另一个表是什么表啊?它的主键是什么,是你所说的ID吗,还是你想把这条记录的ID当做另一个表的其他字段来处理?

请你说详细一点。

记不大清access里有没有触发器

如果有,就建一个insert触发器就可以了

654561651
回答者:V无所不能V - 见习魔法师 二级 4-14 17:41

然后再用select语句查询出来
回答者:yygxpj - 魔法师 五级 4-14 19:23

偶不是很清楚呢.帮不上你.不好意思!但希望你的问题能解决.呵呵!