[前][次][番号順一覧][スレッド一覧]

mysql:5837

From: "K.Ono" <"K.Ono" <k-ono@xxxxxxxxxx>>
Date: Mon, 22 Jul 2002 20:26:55 +0900
Subject: [mysql 05837] Re: INSERT 時に AUTO_INCREMENT の項目の値を別の項目にも設定する方

小野と申します。

小西さんの仰る通り、last_insert_id()関数で対応可能だと思います。

しかし、そもそも1タプルの中に同じ値を持つ列を2つ持つことに意味
がないのではないですか?

もし、

1.初期状態では bbsno と refno が同じ値
2.なんらかの処置をしたのち、refnoに異なる値が入る

というような用途であるなら、insert時にはrefnoは null もしくは 0 
(auto_increment列には 0 は入らないから)にしておけば十分な気が
します。

その状態で、

select bbsno,ifnull(refno,bbsno) refno from BBS;

なり、

select bbsno,if(refno=0,bbsno,refno) refno from BBS;

なりすれば、refnoが初期状態の場合のみ、bbsnoと同じ値がrefnoとし
て取得でき、refnoに有意な値が入っている場合には、refnoがそのまま
refnoとして取得できます。

外していたらごめんなさい。




[前][次][番号順一覧][スレッド一覧]

      5807 2002-07-18 10:42 [Sugiyama <sugiyama@x] INSERT 時に AUTO_INCREMENT の項目の値を別の項目にも設定する方法
      5826 2002-07-22 13:58 ┗[Daiju Azuma <daiju_a]                                       
      5831 2002-07-22 15:53  ┗[Sugiyama <sugiyama@x] Re: INSERT 時に AUTO_INCREMENT の項目の値を別の項目にも設定する方
      5835 2002-07-22 16:53   ┗[Daiju Azuma <daiju_a]                                   
      5836 2002-07-22 19:50    ┣[小西恒紀 <tkonishi@x]                                 
->    5837 2002-07-22 20:26    ┃┣["K.Ono" <k-ono@xxxxx]                               
      5838 2002-07-23 01:06    ┃┃┣["T.Konishi" <tkonish]                             
      5842 2002-07-23 10:08    ┃┃┃┗[Sugiyama <sugiyama@x]                           
      5841 2002-07-23 10:07    ┃┃┗[Sugiyama <sugiyama@x]                             
      5840 2002-07-23 10:01    ┃┗[Sugiyama <sugiyama@x]                               
      5839 2002-07-23 09:59    ┗[Sugiyama <sugiyama@x]