diff --git a/addons/EGFramework/Module/Extension/EGSqlExtension.cs b/addons/EGFramework/Module/Extension/EGSqlExtension.cs index 51d7328..40c92d3 100644 --- a/addons/EGFramework/Module/Extension/EGSqlExtension.cs +++ b/addons/EGFramework/Module/Extension/EGSqlExtension.cs @@ -107,8 +107,7 @@ namespace EGFramework } return sqlCommand; } - - public static string ToCreateTableSQL(this Type type, string tableName) + public static string ToCreateTableSQL(this Type type, string tableName,string idType = "INTEGER PRIMARY KEY AUTO_INCREMENT") { var properties = type.GetProperties(); FieldInfo[] fields = type.GetFields(); @@ -123,12 +122,12 @@ namespace EGFramework } keySet = keySet.TrimEnd(','); string createSql = @"CREATE TABLE " + tableName + " (" + - "`ID` INTEGER PRIMARY KEY AUTO_INCREMENT, " + keySet + "`ID` "+idType+", " + keySet + ");"; return createSql; } - public static string ToCreateTableSQL(this Dictionary tableParam,string tableName) + public static string ToCreateTableSQL(this Dictionary tableParam,string tableName,string idType = "INTEGER PRIMARY KEY AUTO_INCREMENT") { string keySet = ""; @@ -137,7 +136,7 @@ namespace EGFramework } keySet = keySet.TrimEnd(','); string createSql = @"CREATE TABLE "+tableName+" ("+ - "`ID` INTEGER PRIMARY KEY AUTOINCREMENT, "+keySet + "`ID` "+idType+", "+keySet +");"; return createSql; } diff --git a/addons/EGFramework/Module/SaveTools/Data/EGDapper.cs b/addons/EGFramework/Module/SaveTools/Data/EGDapper.cs index d73d5df..07ed14c 100644 --- a/addons/EGFramework/Module/SaveTools/Data/EGDapper.cs +++ b/addons/EGFramework/Module/SaveTools/Data/EGDapper.cs @@ -11,6 +11,7 @@ namespace EGFramework public abstract class EGDapper : IEGSave, IEGSaveData, IEGDataBase { public DbConnection Connection { get; set; } + public string PrimaryType = "INTEGER PRIMARY KEY AUTO_INCREMENT"; public string ExceptionMsg; public abstract void InitSave(string conn); @@ -303,7 +304,7 @@ namespace EGFramework EG.Print("Table " + dataKey + " has been created!"); return; } - string createSql = typeof(TData).ToCreateTableSQL(dataKey); + string createSql = typeof(TData).ToCreateTableSQL(dataKey,PrimaryType); int count = Connection.Execute(createSql); } @@ -319,7 +320,7 @@ namespace EGFramework { tableType.Add(pair.Key, pair.Value.GetType()); } - string createSql = tableType.ToCreateTableSQL(dataKey); + string createSql = tableType.ToCreateTableSQL(dataKey,PrimaryType); int count = Connection.Execute(createSql); } diff --git a/addons/EGFramework/Module/SaveTools/Data/EGSqliteSave.cs b/addons/EGFramework/Module/SaveTools/Data/EGSqliteSave.cs index c06f138..7e59b55 100644 --- a/addons/EGFramework/Module/SaveTools/Data/EGSqliteSave.cs +++ b/addons/EGFramework/Module/SaveTools/Data/EGSqliteSave.cs @@ -16,10 +16,7 @@ namespace EGFramework{ /// please add *.db suffix or your db file suffix public override void InitSave(string path) { - if (!File.Exists(path)) - { - Directory.CreateDirectory(path); - } + PrimaryType = "INTEGER PRIMARY KEY AUTOINCREMENT"; InitDatabase(path); }