[轉帖]Sqlite數據庫基本應用

Sqlite數據庫基本應用


函數篇:

算術函數
abs(X) 返回給定數字表達式的絕對值。
max(X,Y[,...]) 返回表達式的最大值。
min(X,Y[,...]) 返回表達式的最小值。
random(*) 返回隨機數。
round(X[,Y]) 返回數字表達式並四捨五入爲指定的長度或精度。
字符處理函數
length(X) 返回給定字符串表達式的字符個數。
lower(X) 將大寫字符數據轉換爲小寫字符數據後返回字符表達式。
upper(X) 返回將小寫字符數據轉換爲大寫的字符表達式。
substr(X,Y,Z) 返回表達式的一部分。
randstr()  
quote(A)  
like(A,B) 確定給定的字符串是否與指定的模式匹配。
glob(A,B)  
條件判斷函數
coalesce(X,Y[,...])  
ifnull(X,Y)  
nullif(X,Y)  
集合函數
avg(X) 返回組中值的平均值。
count(X) 返回組中項目的數量。
max(X) 返回組中值的最大值。
min(X) 返回組中值的最小值。
sum(X) 返回表達式中所有值的和。
其他函數
typeof(X) 返回數據的類型。
last_insert_rowid() 返回最後插入的數據的ID。
sqlite_version(*) 返回SQLite的版本。
change_count() 返回受上一語句影響的行數。
last_statement_change_count()

例子:

返回字段內容前3個字符:

Mssql中:select left(tel,3) as tel from 表

Sqlite中:select substr(tel,0,3) as tel from 表

分頁讀取:

select 字段 from 表 where 條件 Limit 返回行數 Offset 從序號記錄起

如:讀取一條記錄

Mssql中:select top 1 id,tel from 表

Sqlite中:select id,tel from 表 Limit 1 Offset 0

使用事務添加記錄:

        private void button3_Click(object sender, EventArgs e)
        {
            SQLiteConnection sconn = new SQLiteConnection(); //創建連接
            SQLiteCommand cmd = null;                                      
            SQLiteDataReader sdr = null;
            string _tel = telnum.Text;
            string _tel2 = "";
            sconn.ConnectionString = _connectionString;
            try
            {
               sconn.Open();
               using (SQLiteTransaction dbTrans = sconn.BeginTransaction()) //使用事務
               {
                   using (cmd = sconn.CreateCommand())
                   {
                     cmd.CommandText = "INSERT INTO webtel(tel,adddt) VALUES(?,?)";
                     SQLiteParameter Field1 = cmd.CreateParameter();   //添加字段
                     SQLiteParameter Field2 = cmd.CreateParameter();
                     cmd.Parameters.Add(Field1);
                     cmd.Parameters.Add(Field2);
                     for (int n = 0; n <= 100; n++)
                     {
                         _tel2 = "0000" + n.ToString();
                         Field1.Value =_tel.ToString()+_tel2.Substring((_tel2.Length-4),4).ToString(); //字符賦值
                         Field2.Value = System.DateTime.Now;
                         cmd.ExecuteNonQuery();
                     }
                   }
                   dbTrans.Commit();     //提交事務執行
                   textBox1.Text = _tel+"批量添加成功";
               }
            }
            catch
            {

            }
            finally
            {

                sconn.Close();
            }
           
        }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章