///所有操作表類的抽象基類///publicabstractclassAManage{//////對(duì)應(yīng)表的字段名稱列表///pub" />

黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

對(duì)數(shù)據(jù)庫(kù)表操作,統(tǒng)一的方法。

系統(tǒng) 2521 0
      using System;

using System.Collections.Generic;

using System.Text;

using SW.Henu.DAO;

using System.Data;



namespace LogisManageLibrary

{

    /// <summary>

    /// 所有操作表類的抽象基類

    /// </summary>

    public abstract class AManage

    {

        /// <summary>

        /// 對(duì)應(yīng)表的字段名稱列表

        /// </summary>

        public List<string> attributeList { set; get; }



        /// <summary>

        /// 對(duì)應(yīng)表的字段名稱列表

        /// </summary>

        public List<string> valueList { set; get; }



        /// <summary>

        /// 對(duì)應(yīng)的表名

        /// </summary>

        public string tableName { set; get; }



        // 聲明委托

        public delegate StringBuilder SetSQLBySelf();

        /// <summary>

        /// 初始化字段列表

        /// </summary>

        public AManage()

        {

            attributeList = new List<string>();

            valueList = new List<string>();

        }



        /// <summary>

        /// 初始化表和字段的信息,綁定數(shù)據(jù)表的定義結(jié)構(gòu)

        /// </summary>

        /// <example>tableName="Table";attributeList.Add("Field");</example>

        public abstract void Initialize();



        /// <summary>

        /// 求解查詢語(yǔ)句

        /// </summary>

        /// <returns>返回查詢表</returns>

        /// <example>string ps_Sql = "select Guid,SimpName as  客戶簡(jiǎn)稱,[Name] as 客戶名稱,LinkMan as 聯(lián)系人,Telephone as 電話,Fax as 傳真,Address as 地址,Zip as 郵編,SellType as 銷售類別,ProductName as 產(chǎn)品名稱,Remark as  備注,Case when IsEnable=1 then '停用' when IsEnable=0 then '可用' end as 是否可用  from Client ";</example>

        public abstract StringBuilder SetSelectSQL();



        /// <summary>

        /// 求解插入的SQL語(yǔ)句

        /// </summary>

        /// <returns></returns>

        /// <example>strSql.Append("insert into [Client](");</example>

        public abstract StringBuilder SetInsertSQL();



        /// <summary>

        /// 求解更新的SQL語(yǔ)句

        /// </summary>

        /// <returns></returns>

        /// <example>strSql.Append("update Client set ");</example>

        public abstract StringBuilder SetUpdateSQL();



        /// <summary>

        /// 求解刪除的SQL語(yǔ)句

        /// </summary>

        /// <returns></returns>

        /// <example>string ps_Sql = "delete  from Client  where  Guid='" + ClientGuid + "'";</example>

        public abstract StringBuilder SetDeleteSQL();



        /// <summary>

        /// 通過(guò)pSql得到當(dāng)前是新增狀態(tài)還是修改狀態(tài)

        /// </summary>

        /// <param name="pObj">信息集實(shí)例</param>

        /// <param name="pSql">string pSql = "";pSql = "SELECT Guid   FROM   Client  " +"where Guid  ='" + pObj.Guid + "'";</param>

        /// <returns>返回True或False</returns>

        private bool SaveStatus(string pSql)

        {

            CommonInterface pComm = CommonFactory.CreateInstance(CommonData.sql);

            try

            {

                DataTable pDT = pComm.ExeForDtl(pSql);

                pComm.Close();

                if (pDT.Rows.Count > 0)

                {

                    return true;

                }

                else

                {

                    return false;

                }

            }

            catch (Exception e)

            {

                pComm.Close();

                throw e;

            }

        }



        /// <summary>

        /// 保存數(shù)據(jù)

        /// </summary>

        /// <param name="pObj">信息集實(shí)體類</param>

        /// <param name="pSql">string pSql = "";pSql = "SELECT Guid   FROM   Client  " +"where Guid  ='" + pObj.Guid + "'";</param>

        /// <returns>返回保存成功(true)或失敗(false)</returns>

        public bool Save(string pSql)

        {

            try

            {

                if (SaveStatus(pSql) == false)

                {

                    return Insert();

                }

                else

                {



                    return Update();

                }

            }

            catch (Exception e)

            {

                throw e;

            }

        }





        /// <summary>

        /// 得到數(shù)據(jù)

        /// </summary>

        /// <returns></returns>

        public DataTable Select()

        {

            CommonInterface pObj_Comm = CommonFactory.CreateInstance(CommonData.sql);

            try

            {

                DataTable pDTMain = pObj_Comm.ExeForDtl(SetSelectSQL().ToString());

                pObj_Comm.Close();

                return pDTMain;

            }

            catch (Exception e)

            {

                pObj_Comm.Close();

                throw e;

            }

        }



        /// <summary>

        /// 增加一條數(shù)據(jù)

        /// </summary>

        public bool Insert()

        {

            CommonInterface pComm = CommonFactory.CreateInstance(CommonData.sql);



            try

            {

                pComm.Execute(SetInsertSQL().ToString());//執(zhí)行Sql語(yǔ)句無(wú)返回值

                pComm.Close();

                return true;

            }

            catch (System.Exception e)

            {

                pComm.Close();

                throw e;

            }

        }



        /// <summary>

        /// 更新一條數(shù)據(jù)

        /// </summary>

        public bool Update()

        {



            CommonInterface pComm = CommonFactory.CreateInstance(CommonData.sql);



            try

            {

                pComm.Execute(SetUpdateSQL().ToString());//執(zhí)行Sql語(yǔ)句無(wú)返回值

                pComm.Close();

                return true;

            }

            catch (System.Exception e)

            {

                pComm.Close();

                throw e;

            }

        }



        /// <summary>

        /// 刪除

        /// </summary>

        /// <returns></returns>

        public void Delete()

        {

            CommonInterface pObj_Comm = CommonFactory.CreateInstance(CommonData.sql);

            try

            {

                pObj_Comm.Execute(SetDeleteSQL().ToString());

                pObj_Comm.Close();

            }

            catch (Exception e)

            {

                pObj_Comm.Close();

                throw e;

            }

        }



        /// <summary>

        /// 由參數(shù)的SQL語(yǔ)句增刪改數(shù)據(jù)庫(kù)

        /// </summary>

        public void NotSelect(string pSql)

        {

            CommonInterface pObj_Comm = CommonFactory.CreateInstance(CommonData.sql);

            try

            {

                pObj_Comm.Execute(pSql);

                pObj_Comm.Close();

            }

            catch (Exception e)

            {

                pObj_Comm.Close();

                throw e;

            }

        }



        /// <summary>

        /// 得到數(shù)據(jù)

        /// </summary>

        /// <returns></returns>

        public DataTable Select(string pSql)

        {

            CommonInterface pObj_Comm = CommonFactory.CreateInstance(CommonData.sql);

            try

            {

                DataTable pDTMain = pObj_Comm.ExeForDtl(pSql);

                pObj_Comm.Close();

                return pDTMain;

            }

            catch (Exception e)

            {

                pObj_Comm.Close();

                throw e;

            }

        }



        /// <summary>

        /// 通過(guò)委托得到數(shù)據(jù)

        /// </summary>

        /// <returns></returns>

        public DataTable SelectBySelf(SetSQLBySelf sql)

        {

            CommonInterface pObj_Comm = CommonFactory.CreateInstance(CommonData.sql);

            try

            {

                DataTable pDTMain = pObj_Comm.ExeForDtl(sql().ToString());

                pObj_Comm.Close();

                return pDTMain;

            }

            catch (Exception e)

            {

                pObj_Comm.Close();

                throw e;

            }

        }



        /// <summary>

        /// 由委托增刪改數(shù)據(jù)庫(kù)

        /// </summary>

        public void NotSelect(SetSQLBySelf sql)

        {

            CommonInterface pObj_Comm = CommonFactory.CreateInstance(CommonData.sql);

            try

            {

                pObj_Comm.Execute(sql().ToString());

                pObj_Comm.Close();

            }

            catch (Exception e)

            {

                pObj_Comm.Close();

                throw e;

            }

        }

    }

}


    

這寫代碼定義了所有的增刪改查功能,只需要重寫方法,或者委托,或者直接調(diào)用寫入SQL語(yǔ)句即可。
該代碼寫了三種查詢方式。重寫,委托和直接調(diào)用。具體怎么用我還沒(méi)有事件,但是經(jīng)過(guò)老師的測(cè)試,很好用。

和大家分享下。

對(duì)數(shù)據(jù)庫(kù)表操作,統(tǒng)一的方法。


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論