mysql> desc oldtable;
+---------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------------+--------------+------+-----+---------+----------------+
| uid | int(11) | NO | PRI | NULL | auto_increment |
| active | char(1) | NO | | NULL | |
| field3 | char(256) | NO | | NULL | |
| field4 | char(256) | NO | | NULL | |
+---------------+--------------+------+-----+---------+----------------+
mysql> desc newtable;
+------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+----------------+
| uid | int(11) | NO | PRI | NULL | auto_increment |
| active | tinyint(1) | NO | | 0 | |
| field5 | int(12) | NO | | 0 | |
| field6 | varchar(12) | NO | | 0 | |
| field7 | varchar(12) | NO | | 0 | |
+------------+--------------+------+-----+---------+----------------+
これは、以前のクエリchange a field and port mysql table data via scriptに似ています? 【oldtableからnewtableにデータを移植(ダンプ)したい。1 つの問題は、以前のテーブルでは、'Y' または 'N' のいずれかの値を格納するアクティブに char(1) を使用していたことです。これで、newtable はそれを 1 または 0 の int として格納します。
データを移植する前にこれを修正するにはどうすればよいですか? そのような修正と移植にはシェルスクリプトを使用する必要がありますか? サンプルスクリプトまたはヒント:)]
しかし、この質問、同じ移植を達成する方法、上記のように両方のテーブルに異なるフィールド数がある場合はどうすればよいですか?