Fix repository struct defaults for varchar | text

This commit is contained in:
Akkadius
2020-04-04 02:04:48 -05:00
parent d691db6621
commit 3aaa5020b1
45 changed files with 375 additions and 194 deletions
@@ -78,9 +78,8 @@ my $pass = $config->{"server"}{"database"}{"password"};
my $dsn = "dbi:mysql:$database_name:$host:3306";
my $connect = DBI->connect($dsn, $user, $pass);
my @tables = ();
my @tables = ($requested_table_to_generate);
if ($requested_table_to_generate eq "all" || !$requested_table_to_generate) {
my $table_names_exec = $connect->prepare(
"
SELECT
@@ -177,6 +176,9 @@ foreach my $table_to_generate (@tables) {
my %table_data = ();
my %table_primary_key = ();
$ex->execute($database_name, $table_to_generate);
$table_primary_key{$table_to_generate} = "id";
while (my @row = $ex->fetchrow_array()) {
my $column_name = $row[0];
my $table_name = $row[1];
@@ -197,6 +199,9 @@ foreach my $table_to_generate (@tables) {
if ($column_default eq "''") {
$default_value = '""';
}
if (trim($column_default) eq "" && $column_type =~ /text|varchar/i) {
$default_value = '""';
}
my $struct_data_type = translate_mysql_data_type_to_c($data_type);
@@ -275,7 +280,7 @@ foreach my $table_to_generate (@tables) {
exit;
}
foreach my $column (keys %{ $table_data{$table_to_generate} }) {
foreach my $column (keys %{$table_data{$table_to_generate}}) {
my $column_data = $table_data{$table_to_generate}{$column};
my $data_type = $column_data->[0];
my $column_type = $column_data->[1];
@@ -367,4 +372,4 @@ sub translate_mysql_data_type_to_c {
}
return $struct_data_type;
}
}