mysql
lower_case_table_names=0 の時に mysql DBNAME -e "show tables" -NB|ruby -p -e '$_.sub!(/.*$/){|a| "RENAME TABLE #{a} TO #{a.downcase};" }'|mysql DBNAMEすると全部小文字になるので、それから lower_case_table_name=0 する。システム用テーブル以外…
utf8 → utf8mb4 とか! 既存のフィールドが100とかあったりするとちまちまやってられないのでsqlを生成する。まずこうして ALTER DATABASE hogedb CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; それから mysqldump -d hogedb |grep -E ' CHARACTER SE…
オラクルにはROW_NUMBERという関数があるらしい。SELECTした表の行番号が取れるようだ。MySQLでは変数を使うと同じようなことができる。 SET @r=0; SELECT (@r:=@r+1) as row, * FROM `users`; こんなかんじ。変数なんて初めて使ったよ。