SQLite使用笔记

来源:互联网 发布:移动互联网 大数据 编辑:程序博客网 时间:2024/06/06 00:55

一.使用Sqlite 分别添加,SQLite.Interop.dll 和 System.Data.SQLite.dll 到项目

如果要给数据库设置密码,则使用 SQLiteConnection 对象的ChangePassword(“123”);

1.创建SQLite 初始化信息

            SQLiteConnection conn = new SQLiteConnection            ("Data Source=TestDataBase;Version=3;New=False;Compress=True;Password=123;");            /**             * 也可以先创建 SQLiteConnection conn = new SQLiteConnection();             * 然后创建 SQLiteConnectionStringBuilder 指定 数据连接信息             **/            SQLiteConnectionStringBuilder connstr = new SQLiteConnectionStringBuilder();            connstr.BaseSchemaName = "TestDataBase";            connstr.Password = "123";            connstr.Version = 3;            conn.ConnectionString = connstr.ToString();            //SQLiteCommand cmd = new SQLiteCommand("select * from TestTable" ,conn);            SQLiteCommand cmd = new SQLiteCommand();            cmd.Connection = conn;            cmd.CommandText = "select * from TestTable";

2.创建SQLite数据库

        public static void CreateDataBase()        {            //CreateDataBase            SQLiteConnection.CreateFile("TestDataBase");        }

3.执行SQl语句,(来创建表,约束–)

        /// <summary>        /// 执行SQL语句        /// </summary>        /// <param name="sql">sql语句字符串</param>        public void ExecuteSqlStr(string sql)        {            using (SQLiteConnection conn = new SQLiteConnection            ("Data Source = TestDataBase; Version = 3; New = False; Compress = True; Password = 123; "))            {                if (conn.State == ConnectionState.Closed || conn.State == ConnectionState.Broken)                {                    //打开数据库                    conn.Open();                }                using (SQLiteCommand cmd = new SQLiteCommand(sql,conn))                {                    cmd.ExecuteNonQuery();                }            }        }

4.执行带参数的语句查询

        /// <summary>        /// 执行带参数的查询语句,返回SQLiteDataReader ( 注意:调用该方法后,一定要对        SQLiteDataReader进行Close )        /// </summary>        /// <param name="strSQL">查询语句</param>        /// <returns>SqlDataReader</returns>        public SQLiteDataReader GetReader(string strSql, params SQLiteParameter[]         cmdParms)        {            using (SQLiteConnection con = new SQLiteConnection(_connectString))            {                try                {                    SQLiteCommand cmd = new SQLiteCommand(strSql, con);                    if (cmdParms != null)                    {                        foreach (SQLiteParameter param in cmdParms)                        {                            cmd.Parameters.Add(param);                        }                    }                    con.Open();                    SQLiteDataReader myReader = cmd.ExecuteReader();                    cmd.Parameters.Clear();                    return myReader;                }                catch (SQLiteException ex)                {                    throw new Exception(ex.Message);                }            }        }
0 0