Core/Sql: missed .sql on full DB files. Added parameters to the log of sql errors
This commit is contained in:
@@ -51,10 +51,10 @@ namespace Framework.Database
|
||||
fileName = @"/sql/base/characters_database.sql";
|
||||
break;
|
||||
case "WorldDatabase":
|
||||
fileName = @"/sql/TDB_full_world_837.20101_2020_10_20";
|
||||
fileName = @"/sql/TDB_full_world_837.20101_2020_10_20.sql";
|
||||
break;
|
||||
case "HotfixDatabase":
|
||||
fileName = @"/sql/TDB_full_hotfixes_837.20101_2020_10_20";
|
||||
fileName = @"/sql/TDB_full_hotfixes_837.20101_2020_10_20.sql";
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
@@ -101,7 +101,7 @@ namespace Framework.Database
|
||||
}
|
||||
catch (MySqlException ex)
|
||||
{
|
||||
HandleMySQLException(ex, stmt.CommandText);
|
||||
HandleMySQLException(ex, stmt.CommandText, stmt.Parameters);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -146,7 +146,7 @@ namespace Framework.Database
|
||||
}
|
||||
catch (MySqlException ex)
|
||||
{
|
||||
HandleMySQLException(ex, stmt.CommandText);
|
||||
HandleMySQLException(ex, stmt.CommandText, stmt.Parameters);
|
||||
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;
|
||||
if (ex.InnerException is MySqlException)
|
||||
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)
|
||||
{
|
||||
case MySqlErrorCode.BadFieldError:
|
||||
@@ -313,7 +323,6 @@ namespace Framework.Database
|
||||
break;
|
||||
}
|
||||
|
||||
Log.outError(LogFilter.Sql, $"SqlException: {ex.Message} SqlQuery: {query}");
|
||||
return code;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user