ADO.NET代码

using System;
using System.Data;
using System.Data.OleDb;

namespace KBManager
{
    /// <summary>
    /// Class1 的摘要说明。
    /// </summary>
    public class Data
    {
        private OleDbConnection m_Cn;
        private OleDbDataAdapter m_Da;
        //private OleDbCommandBuilder m_Cb;
        private OleDbCommand m_Cd;

        private OleDbTransaction m_Ta;

        protected Data()
        {
            //string sConn = "Provider=SQLOLEDB.1;Persist Security Info=True; Connect Timeout=0;Password=";
            //string sServer = "10.194.180.114";
            //string sDatabase = "Mobile_Trace";
            //string sUsername = "sa";
            //string sPassword = "ios";
            //sConn = sConn + sPassword + ";User ID=" + sUsername + ";Data Source=" + sServer + ";Initial Catalog=" + sDatabase;

            //m_Cn = new OleDbConnection(sConn);
            if (ConnectionConfiger.Conn != null)
            {
                m_Cn = ConnectionConfiger.Conn;
            }
            m_Cd = new OleDbCommand("", m_Cn);
            m_Cd.CommandTimeout = 10;
        }

        protected Data(string sConn)
        {
            m_Cn = new OleDbConnection(sConn);
            m_Cd = new OleDbCommand("", m_Cn);
            m_Cd.CommandTimeout = 10;
        }

        protected Data(string sServer, string sDatabase, string sUsername, string sPassword)
        {

        }

        public bool ConnectDBSucess(string sServer, string sDatabase, string sUsername, string sPassword)
        {
            bool sucess = false;
            try
            {
                string sConn = "Provider=SQLOLEDB.1;Password=" + sPassword + ";Persist Security Info=True;User ID=" + sUsername + ";Initial Catalog=" + sDatabase + ";Data Source=" + sServer + ";Connect Timeout=5";
                if (ConnectionConfiger.Conn != null)
                {
                    m_Cn = ConnectionConfiger.Conn;
                }
                else
                {
                    m_Cn = new OleDbConnection(sConn);
                    m_Cn.Open();
                    ConnectionConfiger.Conn = m_Cn;
                    sucess = true;
                    //m_Cn.Close();
                    m_Cd = new OleDbCommand("", m_Cn);
                    m_Cd.CommandTimeout = 10;

                }
            }
            catch
            {
                sucess = false;
            }
            return sucess;

        }

        protected void Open()
        {
            m_Cn.Open();
        }

        protected void Close()
        {
            m_Cn.Close();
           
        }

        protected object ExecuteScalar(string sSQL)
        {
            m_Cd.CommandText = sSQL;
            return m_Cd.ExecuteScalar();
        }

        protected int Execute(string sSQL)
        {
            m_Cd.CommandText = sSQL;
            return m_Cd.ExecuteNonQuery();
        }

        protected int Execute(string sProcedure, ref OleDbParameter[] sParameters)
        {
            m_Cd.CommandText = sProcedure;
            m_Cd.CommandType = CommandType.StoredProcedure;
            m_Cd.Parameters.Clear();
            for (int i = 0; i < sParameters.Length; i++)
            {
                m_Cd.Parameters.Add(sParameters[i]);
            }
            return m_Cd.ExecuteNonQuery();
        }

        protected DataSet Select(string sSQL)
        {
            m_Da = new OleDbDataAdapter(sSQL, m_Cn);
            //   m_Cb = new OleDbCommandBuilder(m_Da);
            //   m_Cd = new OleDbCommand(m_Da);
            //   m_Cd.CommandTimeout = 0;
            m_Da.SelectCommand.CommandTimeout = 0;
            DataSet ds = new DataSet();
            m_Da.Fill(ds);
            return ds;
        }

        protected int Update(DataSet ds)
        {
            return m_Da.Update(ds);
        }

        public int ExecuteTransaction(string sSQL)
        {
            int iRet = 0;
            try
            {
                m_Ta = m_Cn.BeginTransaction();
                m_Cd.Transaction = m_Ta;

                m_Cd.CommandText = sSQL;
                iRet = m_Cd.ExecuteNonQuery();
                m_Ta.Commit();
            }
            catch(Exception ee)
            {
                m_Ta.Rollback();
                iRet = -1;
                LogicTool.ShowLog(ee.ToString().Replace("/r/n",""),"Execute SQL Script",Log_Type.Error);
            }
            return iRet;
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值