private void InitDataBase(int version) { int result = db.ExecuteScalar("SELECT count(*) from sqlite_master where type='table' and name='" + TABLE_NAME + "'"); if (result == 0) { //表不存在 string[] colNames = { "KEY", "VALUE" }; string[] colTypes = { "TEXT", "TEXT" }; db.CreateTable(TABLE_NAME, colNames, colTypes); db.InsertValues(TABLE_NAME, new string[] { "version", version + "" }); } else { //判断数据库是否需要升级 DataTable dt = db.GetTable("select * from " + TABLE_NAME + " where KEY='version'"); if (dt != null && dt.Rows.Count > 0) { int OldVersion = Convert.ToInt32(dt.Rows[0]["VALUE"]); if (OldVersion < version) { UpdateDB(); db.UpdateValues(TABLE_NAME, new string[] { "VALUE" }, new string[] { version + "" }, "KEY", "version", "="); } } } CreateAllTables(); }
/// <summary> /// 查询聊天记录 /// </summary> /// <param name="FormUser"></param> /// <param name="ToUser"></param> /// <returns></returns> public List <Message> GetMessage(string FormUser) { List <Message> list = new List <Message>(); string sql = string.Format("select * from {0} where Seq={1} order by ID asc", TABLE_NAME, FormUser); DataTable dt = Helper.GetTable(sql); if (dt != null && dt.Rows.Count > 0) { foreach (DataRow item in dt.Rows) { string Seq = item["Seq"].ToString(); string Content = item["Content"].ToString(); bool IsSend = Convert.ToBoolean(item["IsSend"]); string FileName = item["FileName"].ToString(); int MsgType = Convert.ToInt32(item["MsgType"]); string FileSize = item["FileSize"].ToString(); DateTime CreateTime = Convert.ToDateTime(item["CreateTime"]); string MsgId = item["MsgId"].ToString(); Message message = CreateMessage(Seq, Content, IsSend, FileName, MsgType, FileSize, MsgId); list.Add(message); } } return(list); }