diff --git a/Core/Librarys/SQLite/SQLiteBuilder.cs b/Core/Librarys/SQLite/SQLiteBuilder.cs index ff17bd63f7d7a928722b5e2ec4f850ac8450ba04..c075c7c61c6a4b47b63ebb76c7d281553b3e9a53 100644 --- a/Core/Librarys/SQLite/SQLiteBuilder.cs +++ b/Core/Librarys/SQLite/SQLiteBuilder.cs @@ -178,9 +178,10 @@ namespace Core.Librarys.SQLite } - - HandleVersion1002Migrate(); - + if (!isNew) + { + HandleVersion1002Migrate(); + } // 处理表字段删除 foreach (var dbModel in modelInfosDb) @@ -278,9 +279,10 @@ namespace Core.Librarys.SQLite var ID = rd[0]; var Name = rd[1].ToString(); var Description = rd[2].ToString(); - var icon = Iconer.Get(Name, Description); + Name = SQLiteEscape(Name); + sqlList.Add($"update DailyLogModels set AppModelID={ID} where ProcessName='{Name}'"); sqlList.Add($"update HoursLogModels set AppModelID={ID} where ProcessName='{Name}'"); sqlList.Add($"update AppModels set IconFile='{icon}' where ID={ID}"); @@ -316,6 +318,20 @@ namespace Core.Librarys.SQLite } + private string SQLiteEscape(string str) + { + str = str.Replace("/", "//"); + str = str.Replace("'", "''"); + str = str.Replace("[", "/["); + str = str.Replace("]", "/]"); + str = str.Replace("%", "/%"); + str = str.Replace("&", "/&"); + str = str.Replace("_", "/_"); + str = str.Replace("(", "/("); + str = str.Replace(")", "/)"); + return str; + } + #region 是否需要处理 /// /// 判断是否需要处理数据,比对core程序集版本号