diff --git a/Kits/Databases/MySqlKitDatabase.cs b/Kits/Databases/MySqlKitDatabase.cs index 9a6b4a1..2875c98 100644 --- a/Kits/Databases/MySqlKitDatabase.cs +++ b/Kits/Databases/MySqlKitDatabase.cs @@ -31,12 +31,22 @@ public async Task LoadDatabaseAsync() command.CommandText = $"SHOW TABLES LIKE '{TableName}';"; if (await command.ExecuteScalarAsync() != null) { + // FIXME: :| + command.CommandText = $"SELECT * FROM `{TableName}` LIMIT 0;"; + var reader = await command.ExecuteReaderAsync(); + var schema = await reader.GetColumnSchemaAsync(); + if (schema[0].ColumnName.Equals("id", StringComparison.OrdinalIgnoreCase)) + { + return; + } + command.CommandText = $@"ALTER TABLE `{TableName}` - ADD COLUMN IF NOT EXISTS `Id` INT(11) NOT NULL AUTO_INCREMENT FIRST, + ADD COLUMN `Id` INT(11) NOT NULL AUTO_INCREMENT FIRST, DROP PRIMARY KEY, ADD PRIMARY KEY (`Id`);"; await command.ExecuteNonQueryAsync(); + return; }