csharp:SQLite and Access using C# code read data

來源:互聯網
上載者:User

標籤:

SQLite sql script:

CREATE TABLE BookKindList(BookKindID INTEGER PRIMARY KEY AUTOINCREMENT,BookKindName varchar(500) not null,           BookKindCode varchar(100) null,BookKindParent int null)--添加insert into BookKindList(BookKindName,BookKindCode,BookKindParent) values(‘目錄‘,‘0003‘,1);--查詢select * from BookKindList;select * from BookKindList where BookKindList.BookKindID=2;--刪除delete from BookKindList where BookKindList.BookKindID=3;--更新update  BookKindList set BookKindName=‘文學‘,BookKindCode=‘0002‘,BookKindParent=1 where BookKindID=2;--返回添加自增IDselect last_insert_rowid();

  SQLite 資料庫連接字元

<?xml version="1.0" encoding="utf-8" ?><configuration>  <appSettings>    <add key="ConnectionAccess2003String" value="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|geovindu.mdb;Persist Security Info=True"/>    <add key="ConnectionAccess2007String" value="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|geovindu.accdb;Persist Security Info=True"/>    <add key="ConnectionSQLString" value="Data Source=LF-WEN\GEOVINDU;Initial Catalog=geovindu;User ID=sa;Password=geovindu"/>    <add key="ConnectionSQLiteString" value="Data Source=geovindu.db3;Version=3;Password=geovindu;Pooling=true;FailIfMissing=false;"/>    <add key="ConnectionMySQLString" value="Database=‘geovindu‘;Data Source=‘127.0.0.1‘;User Id=‘root‘;Password=‘geovindu‘;charset=‘utf8‘;pooling=true;Port=3306;Allow Zero Datetime=true;"/>    <add key="WebDAL" value="AccessDAL"/>    <!--<add key="WebDAL" value="SqlServerDAL"/>-->    <!--<add key="WebDAL" value="SqlSQLiteDAL"/>-->    <!--<add key="WebDAL" value="SqlMySQLDAL"/>-->    <!--<add key="WebDAL" value="SqlPostgreSQLDAL"/>-->  </appSettings></configuration>

  

Csharp操作SQLite 添加傳回值

 /// <summary>        /// 塗聚文 20150212        /// SQLite 添加傳回值ID        /// </summary>        /// <param name="SQLString"></param>        /// <param name="identity"></param>        /// <param name="cmdParms"></param>        /// <returns></returns>        public static int ExecuteSql(string SQLString, out int identity, params SQLiteParameter[] cmdParms)        {            string en = "";            using (SQLiteConnection connection = new SQLiteConnection(connectionString))            {                using (SQLiteCommand cmd = new SQLiteCommand())                {                    try                    {                        PrepareCommand(cmd, connection, null, SQLString, cmdParms);                        int rows = cmd.ExecuteNonQuery();                        cmd.Parameters.Clear();                        cmd.CommandText = "select last_insert_rowid();";                        en = cmd.ExecuteScalar().ToString();                        identity = int.Parse(en);                        cmd.Parameters.Clear();                        return rows;                    }                    catch (System.Data.OleDb.OleDbException E)                    {                        throw new Exception(E.Message);                    }                }            }        }

  

 /// <summary>        /// 追回傳回值         /// SQLite塗聚文        /// </summary>        /// <param name="bookKindList"></param>        /// <param name="id"></param>        /// <returns></returns>        public int InsertBookKindOut(BookKindListInfo bookKindList, out int id)        {            int ret = 0;            int tid = 0;            try            {                StringBuilder str = new StringBuilder();                str.Append("insert into BookKindList(BookKindName,BookKindCode,BookKindParent) values(");                str.Append("@BookKindName,@BookKindCode,@BookKindParent);");                                SQLiteParameter[] par = new SQLiteParameter[]{new SQLiteParameter("@BookKindName",DbType.String,1000),                new SQLiteParameter("@BookKindCode",DbType.String,1000),new SQLiteParameter("@BookKindParent",DbType.Int32,4),                //new SQLiteParameter("@BookKindID",DbType.Int32,4),};                par[0].Value = bookKindList.BookKindName;                par[1].Value = bookKindList.BookKindCode;                par[2].Value = bookKindList.BookKindParent;                //par[3].Direction = ParameterDirection.Output;//無效  不支援                ret = SQLiteHelper.ExecuteSql(str.ToString(), out tid, par);                if (ret > 0)                {                    //tid = ret;// (int)par[3].Value;                }            }            catch (SQLiteException ex)            {                throw ex;            }            id = tid;            return ret;        }

  Csharp操作Access添加傳回值

        /// <summary>        ///  Access 添加返迴ID值        ///  塗聚文 2014-12-29        ///  Geovin Du        /// 參考:  http://www.mikesdotnetting.com/article/54/getting-the-identity-of-the-most-recently-added-record        /// http://stackoverflow.com/questions/186544/identity-after-insert-statement-always-returns-0        /// </summary>        /// <param name="SQLString"></param>        /// <param name="identity"></param>        /// <param name="cmdParms"></param>        /// <returns></returns>        public static int ExecuteSql(string SQLString, out int identity, params OleDbParameter[] cmdParms)        {                       using (OleDbConnection connection = new OleDbConnection(connectionString))            {                using (OleDbCommand cmd = new OleDbCommand())                {                    try                    {                        PrepareCommand(cmd, connection, null, SQLString, cmdParms);                        int rows = cmd.ExecuteNonQuery();                        cmd.CommandText = "Select @@Identity";                        identity = (int)cmd.ExecuteScalar();                        cmd.Parameters.Clear();                        return rows;                    }                    catch (System.Data.OleDb.OleDbException E)                    {                        throw new Exception(E.Message);                    }                }            }        }

  

        /// <summary>        /// Access 追加傳回值         /// 塗聚文        /// 20141205        /// </summary>        /// <param name="bookKindList"></param>        /// <param name="id"></param>        /// <returns></returns>        public int InsertBookKindOut(BookKindListInfo bookKindList, out int id)        {            int ret = 0;            int tid = 0;            try            {                StringBuilder str = new StringBuilder();                str.Append("insert into BookKindList(BookKindName,BookKindCode,BookKindParent) values(");                str.Append("@BookKindName,@BookKindCode,@BookKindParent);");                OleDbParameter[] par = new OleDbParameter[]{new OleDbParameter("@BookKindName",OleDbType.VarChar,1000),                new OleDbParameter("@BookKindCode",OleDbType.VarChar,1000),new OleDbParameter("@BookKindParent",OleDbType.Integer,4),                //new OleDbParameter("@BookKindID",OleDbType.Integer,4),};                par[0].Value = bookKindList.BookKindName;                par[1].Value = bookKindList.BookKindCode;                par[2].Value = bookKindList.BookKindParent;                //par[3].Direction = ParameterDirection.Output;//無效  不支援                ret = DbHelperOleDb.ExecuteSql(str.ToString(), out tid, par);                if (ret > 0)                {                    //tid = ret;// (int)par[3].Value;                }            }            catch (OleDbException ex)            {                throw ex;            }            id = tid;            return ret;        }

  

csharp:SQLite and Access using C# code read data

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.