/// <summary> /// 初始化ChunChenBase库,类型为SQLite数据库 /// </summary> public static void InitBase() { string connectionString = AppDomain.CurrentDomain.BaseDirectory + @"Data\"; //string connectionString = AppDomain.CurrentDomain.BaseDirectory; AppDomain.CurrentDomain.SetData("DataDirectory", connectionString); SQLiteBaseForEF.ExistsDBFile(connectionString, "ChunChenBase.db"); //初始一个admin账户 using (SQLiteConnectConfig context = new SQLiteConnectConfig()) { var employeeInfo = context.EmployeeInfo.Where(x => x.Id == adminEmployeeId).FirstOrDefault(); if (employeeInfo == null) { employeeInfo = new Entity.EmployeeInfo { Id = adminEmployeeId, EmployeeNo = 0, Name = "Admin", Mobile = "15665699774", Gender = 1, Birthday = new DateTime(1996, 7, 1), Authority = 0, Spend = 0, JoinDate = new DateTime(1996, 7, 1), Quit = false, QuitDate = null, CreateDate = DateTime.Now, LastUpdatedOn = DateTime.Now, Deleted = false }; context.EmployeeInfo.Add(employeeInfo); } var accountInfo = context.AccountInfo.Where(x => x.Id == adminAccountId).FirstOrDefault(); if (accountInfo == null) { accountInfo = new Entity.AccountInfo { Id = adminAccountId, Account = "admin", Password = "******", EmployeeId = adminEmployeeId, Deleted = false }; context.AccountInfo.Add(accountInfo); } context.SaveChanges(); } }
/// <summary> /// 创建数据库文件(直接覆盖) /// </summary> /// <param name="fileName"></param> public static bool CreateDBFile() { try { using (SQLiteConnectConfig context = new SQLiteConnectConfig()) { Directory.CreateDirectory(path); SQLiteConnection.CreateFile(path + dbName); //创建账户信息表 context.Database.ExecuteSqlCommand(@"CREATE TABLE [Account] ( [Id] BLOB UNIQUE NOT NULL PRIMARY KEY, [Account] TEXT NOT NULL, [Password] TEXT NOT NULL, [EmployeeId] BLOB NULL, [Deleted] BOOLEAN DEFAULT '0' NOT NULL )"); //创建自增字段记录表 context.Database.ExecuteSqlCommand(@"CREATE TABLE [Autoincrement] ( [Key] TEXT NOT NULL, [Value] TEXT NOT NULL )"); //创建客户信息表 context.Database.ExecuteSqlCommand(@"CREATE TABLE [Customer] ( [Id] BLOB NOT NULL, [CustomerNo] INTEGER NOT NULL, [Name] TEXT NOT NULL, [Gender] INTEGER NULL, [Mobile] TEXT NOT NULL, [Address] TEXT NULL, [Birthday] BLOB NULL, [WaiterId] BLOB NULL, [WaiterName] TEXT NULL, [Spend] FLOAT NULL, [CreateDate] BLOB NULL, [LastUpdatedOn] BLOB NULL, [Deleted] Bool NULL )"); //创建员工信息表 context.Database.ExecuteSqlCommand(@"CREATE TABLE [Employee] ( [Id] BLOB UNIQUE NOT NULL, [EmployeeNo] INTEGER NOT NULL, [Name] TEXT NOT NULL, [Mobile] TEXT NOT NULL, [Gender] INTEGER NOT NULL, [Birthday] DATETIME NULL, [Authority] INTEGER NULL, [Spend] FLOAT NULL, [JoinDate] DATETIME NOT NULL, [Quit] Bool NULL, [QuitDate] DATETIME NULL, [CreateDate] DATETIME NOT NULL, [LastUpdatedOn] DATETIME NOT NULL, [Deleted] Bool NULL )"); //创建订单表 context.Database.ExecuteSqlCommand(@"CREATE TABLE [Order] ( [Id] BLOB UNIQUE NOT NULL PRIMARY KEY, [OrderNo] INTEGER NOT NULL, [Title] TEXT NOT NULL, [Details] TEXT NULL, [Price] FLOAT NULL, [CustomerId] BLOB NULL, [CustomerName] TEXT NULL, [EmployeeId] BLOB NULL, [EmployeeName] TEXT NULL, [Status] INTEGER NULL, [DealDate] BLOB NULL, [CreateDate] BLOB NULL, [LastUpdatedOn] BLOB NULL, [Deleted] BOOLEAN NULL )"); //创建信息记录表 context.Database.ExecuteSqlCommand(@"CREATE TABLE [Record] ( [Id] BLOB NULL PRIMARY KEY, [CustomerId] BLOB NULL, [EmployeeId] BLOB NULL, [EmployeeName] TEXT NULL, [Message] TEXT NULL, [CreateDate] BLOB NULL )"); return(true); } } catch (Exception e) { var message = e.Message; return(false); } }