MySQLではPostgreSQLでいうsetvalに似たものがない?


一応調べたんだが、MySQLにはsetvalのようなPostgreSQLの関数が無いようだ。



PostgreSQLのsetvalだが、auto_increment部分を操作するクエリだ。

なぜこんなことをMySQLで行いたいかというと、

IDがリレーションにつながった2つのテーブルをコピーしたいから。

それに加えてPostgreSQLからMySQLへの移行作業も行なう。

なおかつテーブル構造も変更している。



そんで今回とった方法がプログラムによってINSERTコピー。

まぁ、急ぎでもないし、これが一番安全かなと。



コピーが無事完了した。

auto_incrementが1のままだからコピーした分だけ

更新しなくてはならないと思ったわけ。・・・検索しても無い。



なんで?で「show table status」してみたわけ。

そしたら「auto_increment」って部分が登録値の最大になってるわけ。



で、試しにINSERTしてみたら、ちゃんと登録できたw



細かいことは調べたくないけど、まぁsetvalは必要ないみたい。

Leave a Comment


NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <img localsrc="" alt="">

Comments links could be nofollow free.