当前位置:编程学习 > C#/ASP.NET >>

Sqlite 查询操作

        public DataTable ExecuteDataTable(string sql)
        {
            SqliteDBHelper.conn.Open();
            SQLiteDataAdapter dap = new SQLiteDataAdapter(sql, SqliteDBHelper.conn);
            DataTable dt = new DataTable();
            dap.Fill(dt);
            SqliteDBHelper.conn.Close();
            //得到执行成功返回值
            return dt;
        }



在 System.FormatException 中第一次偶然出现的“mscorlib.dll”类型的异常
“dap.Fill(dt)”引发了“System.FormatException”类型的异常
    base {System.SystemException}: {"FormatException"} --------------------编程问答-------------------- 求解啊  取个值都不行~ --------------------编程问答-------------------- 几乎所有的程序员论坛上 你问问题几乎都没人回答你
而且有点难度更完了
你这种写法貌似不给力啊 WinForms 还是asp.net?
试试我这个

public DataTable GetDt(string Sql){
   using(SQLiteConnection con = new SQLiteConnection("连接字符串")){
       using(SQLiteCommand command = new SQLiteCommand(Sql,con)){
             using(SQLiteAdapter adapter = new SqlAdapter(command)){
                   DataTable dt = new DataTable();
                   adapter.Fill(dt);
                    return dt;
}
}
}
}
--------------------编程问答-------------------- public class BookDAL
    {
        private const string sConn = "Data Source=D:\\Project\\MySqlite\\Sqlite\\Web\\Book;";

        public static bool BookAdd(Book book)
        {
            try
            {
                using(SQLiteConnection conn=new SQLiteConnection(sConn))
                {
                    conn.Open();
                    SQLiteCommand cmd = conn.CreateCommand();
                    cmd.CommandText = "INSERT INTO book(ID,BookName,Price) VALUES(@ID,@BookName,@Price);";
                    cmd.Parameters.Add(new SQLiteParameter("ID",book.BkID));
                    cmd.Parameters.Add(new SQLiteParameter("BookName", book.BkName));
                    cmd.Parameters.Add(new SQLiteParameter("Price", book.BkPrice));
                    int i = cmd.ExecuteNonQuery();
                    return i == 1;
                }
            }
            catch
            {
                return false;
            }

        }


        public static bool Update(Book book)
        {
            try
            {
                using (SQLiteConnection conn = new SQLiteConnection(sConn))
                {
                    conn.Open();
                    SQLiteCommand cmd = conn.CreateCommand();
                    cmd.CommandText = "UPDATE Book SET BookName=@BookName,Price=@Price where ID=@ID;";
                    cmd.Parameters.Add(new SQLiteParameter("ID", book.BkID));
                    cmd.Parameters.Add(new SQLiteParameter("BookName", book.BkName));
                    cmd.Parameters.Add(new SQLiteParameter("Price", book.BkPrice));
                    int i = cmd.ExecuteNonQuery();
                    return i == 1;
                }
            }
            catch (Exception)
            {
                //Do any logging operation here if necessary
                return false;
            }
        }

        public static bool Delete(int ID)
        {
            try
            {
                using (SQLiteConnection conn = new SQLiteConnection(sConn))
                {
                    conn.Open();
                    SQLiteCommand cmd = conn.CreateCommand();
                    cmd.CommandText = "DELETE FROM Book WHERE ID=@ID";
                    cmd.Parameters.Add(new SQLiteParameter("ID", ID));
                    int i = cmd.ExecuteNonQuery();
                    return i == 1;
                }
            }
            catch (Exception)
            {
                //Do any logging operation here if necessary
                return false;
            }
        }

        public static DataSet GetInfo()
        {
            try
            {
                using (SQLiteConnection conn = new SQLiteConnection(sConn))
                {
                    DataSet ds = new DataSet();
                    conn.Open();
                    SQLiteDataAdapter da = new SQLiteDataAdapter("SELECT * FROM Book order by id desc;",conn);
                    da.Fill(ds);
                    return ds;
                }
            }
            catch (Exception)
            {
                return null;
            }
            finally
            {
                
            }
        }

        public static Book GetbyID(int ID)
        {
            try
            {
                using (SQLiteConnection conn = new SQLiteConnection(sConn))
                {
                    conn.Open();
                    SQLiteCommand cmd = conn.CreateCommand();
                    cmd.CommandText = "SELECT * FROM Book WHERE ID=@ID;";
                    cmd.Parameters.Add(new SQLiteParameter("ID", ID));
                    SQLiteDataReader dr = cmd.ExecuteReader();
                    if (dr.Read())
                    {
                        Book book = new Book();
                        book.BkID = dr.GetInt32(0);
                        book.BkName = dr.GetString(1);
                        book.BkPrice = dr.GetDecimal(2);
                        return book;
                    }
                    else
                        return null;
                }
            }
            catch (Exception)
            {
                
                return null;
            }
        }


        
    }
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,