OrderBy... Bye bye. DBTool fixes
This commit is contained in:
parent
8f28bd2b7d
commit
917865cab5
3 changed files with 17 additions and 20 deletions
|
|
@ -18,11 +18,16 @@ namespace TShockAPI.DB
|
||||||
|
|
||||||
string query;
|
string query;
|
||||||
if (TShock.Config.StorageType.ToLower() == "sqlite")
|
if (TShock.Config.StorageType.ToLower() == "sqlite")
|
||||||
query =
|
{
|
||||||
"CREATE TABLE IF NOT EXISTS 'GroupList' ('GroupName' TEXT PRIMARY KEY, 'Commands' TEXT, 'OrderBy' TEXT);";
|
db.Query("CREATE TABLE IF NOT EXISTS 'GroupList' (GroupName TEXT PRIMARY KEY, Commands TEXT, 'OrderBy' TEXT);");
|
||||||
|
query = "CREATE TEMPORARY TABLE GroupList_backup('GroupName' TEXT PRIMARY KEY, 'Commands' TEXT); INSERT INTO GroupList_backup SELECT 'GroupName','Commands' FROM GroupList; DROP TABLE GroupList; CREATE TABLE IF NOT EXISTS GroupList('GroupName' TEXT PRIMARY KEY, 'Commands' TEXT); INSERT INTO 'GroupList' SELECT 'GroupName','Commands' FROM GroupList_backup; DROP TABLE GroupList_backup;";
|
||||||
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
query =
|
query =
|
||||||
"CREATE TABLE IF NOT EXISTS GroupList (GroupName VARCHAR(255) PRIMARY, Commands VARCHAR(255), OrderBy VARCHAR(255));";
|
"CREATE TABLE IF NOT EXISTS GroupList (GroupName VARCHAR(255) PRIMARY, Commands VARCHAR(255));";
|
||||||
|
db.Query("ALTER TABLE GroupList DROP COLUMN OrderBy");
|
||||||
|
}
|
||||||
|
|
||||||
db.Query(query);
|
db.Query(query);
|
||||||
|
|
||||||
|
|
@ -46,10 +51,6 @@ namespace TShockAPI.DB
|
||||||
String[] info = line.Split(' ');
|
String[] info = line.Split(' ');
|
||||||
String comms = "";
|
String comms = "";
|
||||||
int size = info.Length;
|
int size = info.Length;
|
||||||
int test = 0;
|
|
||||||
bool hasOrder = int.TryParse(info[info.Length - 1], out test);
|
|
||||||
if (hasOrder)
|
|
||||||
size = info.Length - 1;
|
|
||||||
for (int i = 1; i < size; i++)
|
for (int i = 1; i < size; i++)
|
||||||
{
|
{
|
||||||
if (!comms.Equals(""))
|
if (!comms.Equals(""))
|
||||||
|
|
@ -58,11 +59,11 @@ namespace TShockAPI.DB
|
||||||
}
|
}
|
||||||
|
|
||||||
if (TShock.Config.StorageType.ToLower() == "sqlite")
|
if (TShock.Config.StorageType.ToLower() == "sqlite")
|
||||||
query = "INSERT OR IGNORE INTO GroupList (GroupName, Commands, OrderBy) VALUES (@0, @1, @2);";
|
query = "INSERT OR IGNORE INTO GroupList (GroupName, Commands) VALUES (@0, @1);";
|
||||||
else if (TShock.Config.StorageType.ToLower() == "mysql")
|
else if (TShock.Config.StorageType.ToLower() == "mysql")
|
||||||
query = "INSERT IGNORE INTO GroupList SET GroupName=@0, Commands=@1, OrderBy=@2;";
|
query = "INSERT IGNORE INTO GroupList SET GroupName=@0, Commands=@1;";
|
||||||
|
|
||||||
db.Query(query, info[0].Trim(), comms, hasOrder ? info[info.Length - 1] : "0");
|
db.Query(query, info[0].Trim(), comms);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -105,12 +106,10 @@ namespace TShockAPI.DB
|
||||||
if (GroupExists(name))
|
if (GroupExists(name))
|
||||||
return "Error: Group already exists. Use /modGroup to change permissions.";
|
return "Error: Group already exists. Use /modGroup to change permissions.";
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
string query = (TShock.Config.StorageType.ToLower() == "sqlite") ?
|
string query = (TShock.Config.StorageType.ToLower() == "sqlite") ?
|
||||||
"INSERT OR IGNORE INTO GroupList (GroupName, Commands, OrderBy) VALUES (@0, @1, @2);" :
|
"INSERT OR IGNORE INTO GroupList (GroupName, Commands) VALUES (@0, @1);" :
|
||||||
"INSERT IGNORE INTO GroupList SET GroupName=@0, Commands=@1, OrderBy=@2;";
|
"INSERT IGNORE INTO GroupList SET GroupName=@0, Commands=@1";
|
||||||
if (database.Query(query, name, permissions, "0") == 1)
|
if (database.Query(query, name, permissions) == 1)
|
||||||
message = "Group " + name + " has been created successfully.";
|
message = "Group " + name + " has been created successfully.";
|
||||||
Group g = new Group(name);
|
Group g = new Group(name);
|
||||||
g.permissions.Add(permissions);
|
g.permissions.Add(permissions);
|
||||||
|
|
|
||||||
|
|
@ -60,10 +60,7 @@ namespace TShockAPI
|
||||||
sb.Append(", ");
|
sb.Append(", ");
|
||||||
}
|
}
|
||||||
|
|
||||||
using (var com = database.CreateCommand())
|
database.Query(sb.ToString());
|
||||||
{
|
|
||||||
com.CommandText = sb.ToString();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
||||||
|
|
@ -156,6 +156,7 @@ namespace TShockAPI
|
||||||
}
|
}
|
||||||
|
|
||||||
DBTools.database = DB;
|
DBTools.database = DB;
|
||||||
|
|
||||||
Backups = new BackupManager(Path.Combine(SavePath, "backups"));
|
Backups = new BackupManager(Path.Combine(SavePath, "backups"));
|
||||||
Backups.KeepFor = Config.BackupKeepFor;
|
Backups.KeepFor = Config.BackupKeepFor;
|
||||||
Backups.Interval = Config.BackupInterval;
|
Backups.Interval = Config.BackupInterval;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue