日期:2014-05-18  浏览次数:20563 次

MYSQL4.0可以用LAST_INSERT_ID()吗
如果可以用想问下怎么出异常呢 是不是写法不对 以下
INSERT INTO member_section(member_id,section_id,name,furigana_name,entry_date) VALUES ((select LAST_INSERT_ID()),0,'(未設定)','ミセッテイ','2008-09-18')

如果不可以用有什么方法来代替select LAST_INSERT_ID()吗?
大家帮帮忙


------解决方案--------------------
先用一个变量保存,然后再调用变量
------解决方案--------------------
试下INSERT INTO member_section(member_id,section_id,name,furigana_name,entry_date) VALUES (LAST_INSERT_ID(),0,'(未設定)','ミセッテイ','2008-09-18') 


一般情况下获取刚插入的数据的id,使用select max(id) from table 是可以的。LAST_INSERT_ID 是与table无关的,如果向表a插入数据后,再向表b插入数据,LAST_INSERT_ID会改变。 

使用单INSERT语句插入多条记录, LAST_INSERT_ID返回一个列表。 

@@identity是表示的是最近一次向具有identity属性(即自增列)的表插入数据时对应的自增列的值,是系统定义的全局变量。比如有个表A,它的自增列是id,当向A表插入一行数据后,如果插入数据后自增列的值自动增加至101,则通过select@@identity得到的值就是101