default charset and collate for csv2mysql
[migration-tools.git] / kmig.d / bin / csv2mysql
index f131f5b..6359c8c 100755 (executable)
@@ -100,7 +100,7 @@ sub write_sql_table {
     } else {
            $cfg->{table_name} = 'm_' . lc(basename($fn)); $cfg->{table_name} =~ s/[\-\. ]/_/g;
            print $sql "DROP TABLE IF EXISTS $cfg->{table_name};\n";
-           print $sql "CREATE TABLE $cfg->{table_name} (x_migrate BOOLEAN);\n";
+           print $sql "CREATE TABLE $cfg->{table_name} (x_migrate BOOLEAN) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;\n";
     }
     push @indices, 'x_migrate';
        foreach my $column (@{ $info }) {
@@ -112,7 +112,11 @@ sub write_sql_table {
                $col_info =~ s/^\$VAR1 = //;
                print $sql "ALTER TABLE $cfg->{table_name} ADD COLUMN ";
                print $sql "l_" unless $cfg->{no_legacy_prefix} or $column->{'header'} =~ /^x_/ or $column->{'header'} =~ /^l_/;
-        print $sql "$cn TEXT; ";
+        if ($column->{'header'} eq 'x_egid' || $column->{'header'} eq 'x_hseq') {
+            print $sql "$cn BIGINT; ";
+        } else {
+            print $sql "$cn TEXT; ";
+        }
         print $sql " /*\n         $col_info   */\n";
        }
        foreach my $cn (@indices) {