刚才用留言问了版主一个问题:
版主同志,看了你对有关自增量问题的一些回答,想请教你一个mysql的问题。
我建立了一张有自增字段(假设是col1)的表,而另一个字段(假设为col2),为一个varchar类型,要根据col1的值再加上其他内容自动生成。
比如我现在insert一条记录,col1的自增值为201,则col2的值想赋为 concat(hostIP, col1),这里hostIP表示数据库所在主机的IP(该值是一个常量,可以得到,不必担心)。
但是由于mysql不支持触发器,所以很麻烦。我知道可以用last_insert_id()来得到最新的自增值,但是这样的话,我插入一条记录岂不是要两条语句:
insert into tablename (col1,...) vaules (null,...);
update tablename set col2=concat(hostIP,last_insert_id()) where col1=last_insert_id();
有没有更简便的方法。谢谢!版主的回答:
呵呵,前面的点错了,对于你的要求,只能用这个各方式来实现 insert into tablename (col1,...) vaules (null,...);
update tablename set col2=concat(hostIP,last_insert_id()) where col1=last_insert_id();
不过,如果你能保证只有一个连接操作该表的话,
也就是你加上必要的锁表语句
         (注    不支持这样做  :-)   )
你可以用这条语句INSERT INTO tA 
    (Col1, Col2, .....) 
  VALUES
    (NULL, CONCAT(HostIP, LAST_INSERT_ID()+1), ....);所以我发个贴给版主加点分,不知20够不够,呵呵。
还有,欢迎大家也帮我出出主意,如果有好的建议,我也会给分的。