MySQLには自動で採番するAUTO_INCREMENTという設定があります。
基本的にはこれを使えば自動的にユニークな番号を採番してくれるのですが、
データを頻繁に削除したり、テーブルをコピーしたりしていると
AUTO_INCREMENTの値が重複したり、過去に削除したデータと同じ値になってしまったりと
いろいろと怖いリスクがあります。
そのリスクを避けるため、私はINSERT文を実行する関数の中で自前で採番するようにしています。
| 1 2 | /* TABLE1.ROW_NO が採番用カラムとする */ select ifnull(max(ROW_NO), 0) + 1 as max_row_no from TABLE1. | 
