SQlite如何檢測表是否創建


PDA中設計數據庫后,避免不了的會根據實際的需求改動功能。最害怕的是,PAD都發下去了,很多台,而工作已經開展了,數據已經有一部分了,中間要增加功能,增加表或者增加字段,怎么辦?只有在更新程序的時候,判斷表是否存在,不存在則臨時創建,字段也類似。

  Sqlite中判斷表是否存在,表名'attPointSampleEx'

            string sql = "SELECT COUNT(*)  as CNT FROM sqlite_master where type='table' and name='attPointSampleEx'";

            string sql1 = "CREATE TABLE [attPointSampleEx] ([ID] VARCHAR(50) NOT NULL UNIQUE,[PickName] VARCHAR(20)," +

              "[SpecimenCode] VARCHAR(200), " +

              "[PickTime] VARCHAR(19)," +

              "[PickAddre] VARCHAR(200)," +

              "[Lon] VARCHAR(20)," +

              "[ZYName] VARCHAR(200), " +

              "[ZYCode] VARCHAR(10), " +

              "[PlantXue] VARCHAR(200), " +

              "[HerbalPart] VARCHAR(50), " +

              "[YongTu] VARCHAR(50), " +

              "[SampleType] VARCHAR(2)," +

              "[LiYong] VARCHAR(200)," +

              "[WeiXie] VARCHAR(200)," +

              "[Notion] VARCHAR(200));";

            //_IsCreate Bool類型,判斷是否創建了表

            if (!_IsCreate)

            {

                //讀取系統表,看是否有此表的記錄

                DataTable tDT = MainDataBase.pMainDataBase.pDataBase.getDataTableFromSql(sql);

                if (tDT != null && tDT.Rows.Count>0)

                {

                    //判斷記錄

                    _IsCreate = Convert.ToInt32(tDT.Rows[0][0]) == 1;

                    if (!_IsCreate)

                    {

                        //如果沒有記錄,則創建表

                        _IsCreate = MainDataBase.pMainDataBase.pDataBase.ExecuteNonQuery(sql1) >= 0;

                    }

                    tDT.Dispose();

                }

            }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM