亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

c#連接sqlserver數據庫、插入數據、從數據庫獲取時間示例

2020-01-24 02:40:57
字體:
來源:轉載
供稿:網友

c#連接sqlserver、插入數據、從數據庫獲取時間

復制代碼 代碼如下:

using System;
using System.Data.SqlClient;

namespace Test
{
    //連接數據庫
    public class Connection
    {
        private static string connectionString =
            "Server = 192.168.1.222;" +
            "Database = Test;" +
            "User ID = Test;" +
            "Password = abc123;";

        /// <summary>
        /// 連接數據庫
        /// </summary>
        /// <returns></returns>
        private SqlConnection ConnectionOpen()
        {
            SqlConnection conn = new SqlConnection(connectionString);
            conn.Open();
            return conn;
        }

        /// <summary>
        /// 向表(Table)中插入一條數據
        /// </summary>
        public void Insert(string value1, string value2, string value3, DateTime dateTime)
        {
            SqlConnection conn = ConnectionOpen();
            string sql =
                "insert into Table(row1, row2, row3, DateTime) values ('" +
                value1 + "', '" + value2 + "', '" + value3 + "', '" + dateTime + "')";
            SqlCommand comm = new SqlCommand(sql, conn);
            comm.ExecuteReader();
  
            conn.Close();
        }

        /// <summary>
        /// 從數據庫中獲取當前時間
        /// </summary>
        /// <returns></returns>
        public DateTime GetDateTimeFromSQL()
        {
            SqlConnection conn = ConnectionOpen();
            string sql = "select getdate()";
            SqlCommand comm = new SqlCommand(sql, conn);
            SqlDataReader reader = comm.ExecuteReader();
            DateTime dt;
            if (reader.Read())
            {
                dt = (DateTime)reader[0];
                conn.Close();
                return dt;
            }
            conn.Close();
            return DateTime.MinValue;
        }
    }
}

c#連接SQL Server 2008示例

復制代碼 代碼如下:

/*
* 說明
* 功能說明:數據訪問封裝。所有數據都要通過這個類定義的dbConnection訪問數據庫。
* 同時,定義了通用的cmd,以及cmd常用的訪問存儲過程的方法RunPro  
*   
* 作者: RogerWang
*   
* 創建日期:2006-02-15
*   
*/

using System;
using System.Data;
using System.Data.SqlClient;


namespace insurer
{
  /// <summary>
  /// DataAccess 的摘要說明。
  /// </summary>
  public class DataAccess
  {
    private readonly string SQLCONNECTSTR = "server=(local);uid=sa;pwd=lwrong;database=insurer";
    private SqlConnection dbConnection;
    private readonly string RETUENVALUE = "RETURNVALUE";   


    //判斷要不要啟動事務
                private bool startrans = false;

    //為解決多筆數據導入的問題,特添加的事務處理屬性
    private SqlTransaction trans = null;

               
    //定義是否啟動事務屬性
    public bool StartTrans
    {
      get
      {
        return startrans;
      }
      set
      {
        startrans = value;
      }
    }


    //定義事務
    public SqlTransaction Trans
    {
      get
      {
        return trans;
      }
      set
      {
        if (value != null)
        {
          trans = value;
        }
      }
    }

    //創建打開dbConnection對象
    public void OpenConnection()
    {
      if ( dbConnection == null )
      {
        dbConnection = new SqlConnection(SQLCONNECTSTR);
      }

      if ( dbConnection.State == ConnectionState.Closed )
      {
        try
        {
          dbConnection.Open();
        }
        catch(Exception ex)
        {
          SystemError.SystemLog(ex.Message);
        }
        finally
        {
        }
      }
    }

    //釋放dbConnection對象
    public void CloseConnection()
    {
      if (dbConnection != null)
      {
        if (dbConnection.State == ConnectionState.Open)
        {
          dbConnection.Dispose();
          dbConnection = null;
        }
      }
    }


    //

    //創建cmd,注意dbconnection在該函數中創建,但沒有在這函數中釋放。
    //在正確的面向對象設計方法中,對象應該是誰創建,誰就應該負責釋放。按這個觀點,這個過程有些不安全!!!!
        private SqlCommand CreateCommand(string ProName,SqlParameter[] prams)
    {
      OpenConnection();
      SqlCommand cmd = new SqlCommand(ProName,dbConnection);
      cmd.CommandType = CommandType.StoredProcedure;


      //如果進行事務處理,那么對cmd的Transaction的事務賦值
      if (StartTrans)
      {
        cmd.Transaction = Trans;
      }


      if ( prams != null)
      {
        foreach(SqlParameter parameter in prams)
        {
          cmd.Parameters.Add(parameter);
        }
      }

      //cmd.Parameters.Add(

      return cmd;

    }


    /// <summary>
    /// 創建cmd,并執行相應的操作。 然后釋放cmd!
    ///   
    /// 該函數是執行cmd沒有返回值,且沒有參數的方法。
    /// </summary>
    /// <param name="ProName"></param>
    public bool RunProc(string ProName)
    {
      SqlCommand cmd = CreateCommand(ProName,null);

      bool k = false;
      try
      {
        k = (bool)cmd.ExecuteScalar();
      }
      catch(Exception ex)
      {
        SystemError.SystemLog(ex.Message);
      }
      finally
      {
        cmd.Dispose();
      }
      return k;

    }

    /// <summary>
    /// 創建cmd,并執行相應的操作。 然后釋放cmd!
    ///   
    /// 該函數是執行cmd沒有返回值,但有參數的方法。
    /// </summary>
    /// <param name="ProName"></param>
    /// <param name="prams"></param>
    public bool RunProc(string ProName,SqlParameter[] prams)
    {
      SqlCommand cmd = CreateCommand(ProName,prams);

      bool k = false;
      try
      {
        k = (bool) cmd.ExecuteScalar();
      }
      catch(Exception ex)
      {
        SystemError.SystemLog(ex.Message);
      }
      finally
      {   
        cmd.Dispose();
        //Close();
      }
      return k;
    }

    /// <summary>
    /// 創建cmd,并執行相應的操作。 然后釋放cmd!
    ///   
    /// 該函數是執行cmd帶有返回值,但沒有參數的方法。   
    /// </summary>
    /// <param name="ProName"></param>
    /// <param name="dataReader"></param>
    public void RunProc(string ProName,out SqlDataReader dataReader)
    {
      SqlCommand cmd = CreateCommand(ProName,null);
      dataReader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
      try
      {

      }
      catch(Exception ex)
      {
        SystemError.SystemLog(ex.Message);
      }
      finally
      {
        cmd.Dispose();
      }
    }

    /// <summary>
                /// 創建cmd,并執行相應的操作。 然后釋放cmd!
    ///   
    /// 該函數是執行cmd帶有返回值,且有參數的方法。
    /// </summary>
    /// <param name="ProName"></param>
    /// <param name="prams"></param>
    /// <param name="dataReader"></param>
    public void RunProc(string ProName,SqlParameter[] prams,out SqlDataReader dataReader)
    {
      SqlCommand cmd = CreateCommand(ProName,prams);
      dataReader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
      try
      {

      }
      catch(Exception ex)
      {
        SystemError.SystemLog(ex.Message);
      }
      finally
      {
        cmd.Dispose();
      }
    }


    /// <summary>
    /// 創建cmd的參數
    /// 該方法的思路就是按條件生成一個SqlParameter對象。
    /// 生成對象后,再給對象賦相應的返回值類型
    /// </summary>
    /// <param name="ParamName"></param>
    /// <param name="DbType"></param>
    /// <param name="size"></param>
    /// <param name="direction"></param>
    /// <param name="Value"></param>
    /// <returns></returns>
    public SqlParameter CreateParam(string ParamName, SqlDbType DbType, int size,ParameterDirection direction,object Value)
    {
      SqlParameter param;

      if (size > 0)
      {
        param = new SqlParameter(ParamName,DbType,size);
      }
      else
      {
        param = new SqlParameter(ParamName,DbType);
      }

      param.Direction = direction;

      param.Value = Value;

      return param;
    }

    /// <summary>
    /// 創建cmd的輸入參數
    /// </summary>
    /// <param name="ParamName"></param>
    /// <param name="DbType"></param>
    /// <param name="size"></param>
    /// <param name="Value"></param>
    /// <returns></returns>
    public SqlParameter CreateInParam(string ParamName, SqlDbType DbType, int size, object Value)
    {
      return CreateParam(ParamName,DbType,size,ParameterDirection.Input,Value);
    }

    /// <summary>
    /// 創建cmd的輸出參數
    /// </summary>
    /// <param name="ParamName"></param>
    /// <param name="DbType"></param>
    /// <param name="size"></param>
    /// <returns></returns>
    public SqlParameter CreateOutParam(string ParamName, SqlDbType DbType, int size)
    {
      return CreateParam(ParamName,DbType,size,ParameterDirection.Output,null);
    }

    /// <summary>
    /// 創建cmd帶有返回值的參數
    /// </summary>
    /// <param name="ParamName"></param>
    /// <param name="DbType"></param>
    /// <param name="size"></param>
    /// <returns></returns>
    public SqlParameter CreateReturnParam(string ParamName,SqlDbType DbType, int size)
    {
      return CreateParam(ParamName,DbType,size,ParameterDirection.ReturnValue,null);
    }


    //開始一個事務
    public void BeginTrans()
    {
      OpenConnection();

      Trans = dbConnection.BeginTransaction(IsolationLevel.Serializable);
    }


    public void Commit()
    {
      if (Trans != null)
      {
        Trans.Commit();
      }
    }

    public void Rollback()
    {
      if (Trans != null)
      {
        Trans.Rollback();
      }
    }
  }
}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲最大福利网站| 精品久久久91| 亚洲在线视频福利| 欧美视频在线免费看| 日韩精品黄色网| 亚洲人永久免费| 欧美夫妻性生活xx| 欧美性猛交xxxx免费看漫画| 性欧美长视频免费观看不卡| 久久大大胆人体| 精品中文视频在线| 国产91色在线播放| 97色在线观看| 久久久久久久久电影| 丝袜一区二区三区| 国产精品美女主播| 亚洲激情电影中文字幕| 中文字幕亚洲色图| 日韩在线视频二区| 国产精品视频99| 日本在线精品视频| 91精品视频在线播放| 成人福利网站在线观看11| 欧美日韩亚洲高清| 久久深夜福利免费观看| 2024亚洲男人天堂| 伊人男人综合视频网| 最新亚洲国产精品| 2021久久精品国产99国产精品| 亲子乱一区二区三区电影| 欧美国产高跟鞋裸体秀xxxhd| 久久这里有精品视频| 欧美大尺度激情区在线播放| 亚洲第一在线视频| 国产精品麻豆va在线播放| 欧美成人黑人xx视频免费观看| 久久躁日日躁aaaaxxxx| 91精品国产成人| 国产亚洲精品日韩| 日韩一区av在线| 97精品国产aⅴ7777| 精品久久久一区二区| 国产精品自拍偷拍视频| 欧美做爰性生交视频| 国产精品白嫩美女在线观看| 欧美肥老妇视频| 精品国产老师黑色丝袜高跟鞋| 色妞一区二区三区| 色青青草原桃花久久综合| 久久久日本电影| 在线观看国产欧美| 精品二区三区线观看| 精品爽片免费看久久| 亚洲九九九在线观看| 精品色蜜蜜精品视频在线观看| 欧美成人免费va影院高清| 欧美亚洲国产视频| 亚洲成人黄色在线| 欧美成人sm免费视频| 久久久亚洲影院| 成人免费视频网| 亚洲日本中文字幕| 亚洲欧洲在线视频| 日韩欧美国产成人| 日本一区二区不卡| 超碰97人人做人人爱少妇| 日韩在线视频免费观看| 亚洲综合精品一区二区| 亚洲日本欧美日韩高观看| 国产香蕉一区二区三区在线视频| 国产亚洲精品日韩| 一本色道久久88综合亚洲精品ⅰ| 亚洲最大av网| 色综合天天狠天天透天天伊人| 国产精品久久久久久久久久免费| 久久91亚洲精品中文字幕奶水| 成人国产精品日本在线| 国产视频欧美视频| 久久久久久久爱| 国产日韩综合一区二区性色av| 日韩av在线影视| 日韩一二三在线视频播| 国产精品青青在线观看爽香蕉| www.精品av.com| 国产美女久久精品香蕉69| 亚洲精品一区久久久久久| 色综合老司机第九色激情| 日韩av有码在线| 欧洲午夜精品久久久| 欧美亚洲在线视频| 日韩精品视频中文在线观看| 久久天天躁狠狠躁老女人| 2019中文在线观看| 国产视频久久久久| 国产亚洲精品久久久久久牛牛| 国产精品久久99久久| 亚洲成av人片在线观看香蕉| 国内精品视频一区| 久久夜色精品国产| 国产精品伦子伦免费视频| 欧美老女人性生活| 亚洲人成网站色ww在线| 日韩亚洲一区二区| 亚洲一区二区免费| 青青草原一区二区| 国模叶桐国产精品一区| 亚洲欧美中文字幕| 日本人成精品视频在线| 久久男人资源视频| 久久九九精品99国产精品| 性色av一区二区咪爱| 亚洲国产日韩欧美综合久久| 亚洲福利在线视频| 日韩女在线观看| 欧美成人h版在线观看| 91久久久久久久久久久久久| 亚洲最大的免费| 黄色精品在线看| 亚洲国产精品yw在线观看| 欧美另类老肥妇| 精品久久香蕉国产线看观看亚洲| 国产成人小视频在线观看| 欧美精品亚州精品| 色噜噜狠狠狠综合曰曰曰88av| 97视频在线观看免费高清完整版在线观看| 国产精品入口福利| 在线国产精品播放| 亚洲人成网7777777国产| 欧美激情精品久久久久久黑人| 日韩欧美综合在线视频| 日韩成人av一区| 日韩av在线网址| 国产精品久久一区主播| 中文字幕精品av| 97色在线视频| 日韩欧美中文免费| 欧美另类极品videosbestfree| 成人国产精品免费视频| 久久影视电视剧免费网站| 欧美精品日韩三级| 久久久久久网站| 亚洲国产成人久久综合一区| 色综合久久悠悠| 欧美精品在线看| 国产日韩欧美视频在线| 中文字幕日韩电影| 色偷偷噜噜噜亚洲男人| 国产精品久久久久久久7电影| 亚洲电影免费在线观看| 国产一区二区三区在线观看视频| 国产精品视频男人的天堂| 亚洲国产私拍精品国模在线观看| 欧洲成人免费aa| 91国产美女视频| 国产午夜精品视频免费不卡69堂| 国产va免费精品高清在线观看| 亚洲欧美变态国产另类| 亚洲欧美一区二区激情| 日韩精品在线免费播放| 成人欧美一区二区三区黑人孕妇| 国产ts人妖一区二区三区| 欧美一区二区三区四区在线| 国产成人在线一区二区| 91极品视频在线|