Core/Sql: missed .sql on full DB files. Added parameters to the log of sql errors

This commit is contained in:
hondacrx
2021-01-03 14:54:18 -05:00
parent 699c4a43f8
commit 6bd9fab9f5
2 changed files with 15 additions and 6 deletions
+2 -2
View File
@@ -51,10 +51,10 @@ namespace Framework.Database
fileName = @"/sql/base/characters_database.sql"; fileName = @"/sql/base/characters_database.sql";
break; break;
case "WorldDatabase": case "WorldDatabase":
fileName = @"/sql/TDB_full_world_837.20101_2020_10_20"; fileName = @"/sql/TDB_full_world_837.20101_2020_10_20.sql";
break; break;
case "HotfixDatabase": case "HotfixDatabase":
fileName = @"/sql/TDB_full_hotfixes_837.20101_2020_10_20"; fileName = @"/sql/TDB_full_hotfixes_837.20101_2020_10_20.sql";
break; break;
} }
+13 -4
View File
@@ -101,7 +101,7 @@ namespace Framework.Database
} }
catch (MySqlException ex) catch (MySqlException ex)
{ {
HandleMySQLException(ex, stmt.CommandText); HandleMySQLException(ex, stmt.CommandText, stmt.Parameters);
return false; return false;
} }
} }
@@ -146,7 +146,7 @@ namespace Framework.Database
} }
catch (MySqlException ex) catch (MySqlException ex)
{ {
HandleMySQLException(ex, stmt.CommandText); HandleMySQLException(ex, stmt.CommandText, stmt.Parameters);
return new SQLResult(); return new SQLResult();
} }
} }
@@ -296,12 +296,22 @@ namespace Framework.Database
} }
} }
MySqlErrorCode HandleMySQLException(MySqlException ex, string query = "") MySqlErrorCode HandleMySQLException(MySqlException ex, string query = "", Dictionary<int, object> parameters = null)
{ {
MySqlErrorCode code = (MySqlErrorCode)ex.Number; MySqlErrorCode code = (MySqlErrorCode)ex.Number;
if (ex.InnerException is MySqlException) if (ex.InnerException is MySqlException)
code = (MySqlErrorCode)((MySqlException)ex.InnerException).Number; code = (MySqlErrorCode)((MySqlException)ex.InnerException).Number;
StringBuilder stringBuilder = new StringBuilder($"SqlException: MySqlErrorCode: {code} Message: {ex.Message} SqlQuery: {query} ");
if (parameters != null)
{
stringBuilder.Append("Parameters: ");
foreach (var pair in parameters)
stringBuilder.Append($"{pair.Key} : {pair.Value}");
}
Log.outError(LogFilter.Sql, stringBuilder.ToString());
switch (code) switch (code)
{ {
case MySqlErrorCode.BadFieldError: case MySqlErrorCode.BadFieldError:
@@ -313,7 +323,6 @@ namespace Framework.Database
break; break;
} }
Log.outError(LogFilter.Sql, $"SqlException: {ex.Message} SqlQuery: {query}");
return code; return code;
} }