純粹的技術(shù)BLOG

          常用鏈接

          統(tǒng)計

          最新評論

          在C#中運行SQL的SELECT、INSERT和UPDATE命令及存儲過程

          1、存儲過程

          C#的代碼如下:

          /// <summary>
            /// 存儲過程參數(shù)結(jié)構(gòu)
            /// </summary>
            public struct ProcParam
            {
             public string ParamName;
             public string ParamValue;
             public System.Data.SqlDbType ParamType ;
            }

          /// <summary>
            /// 執(zhí)行一個返回數(shù)據(jù)集的存儲過程
            /// </summary>
            /// <param name="strProcName">存儲過程名稱</param>
            /// <param name="alParamName" >參數(shù)名稱</param>
            /// <param name="alParamValue" >參數(shù)值</param>
            /// <param name="constring">數(shù)據(jù)連接串</param>
            /// <returns></returns>
            public static System.Data.SqlClient.SqlDataReader  ExecProcedure(string strProcName,System.Collections.ArrayList alParamName,System.Collections.ArrayList alParamValue,string constring)
            {
             
             System.Data.SqlClient.SqlConnection cn=new System.Data.SqlClient.SqlConnection (constring);
             cn.Open ();
             System.Data.SqlClient.SqlCommand cmd=new System.Data.SqlClient. SqlCommand ();
             cmd.Connection =cn;
             cmd.CommandType =System.Data.CommandType.StoredProcedure ;
             cmd.CommandText =strProcName;
             for(int i=0;i<alParamName.Count ;i++)
             {
              System.Data.SqlClient.SqlParameter  param=new System.Data.SqlClient.SqlParameter (alParamName[i].ToString (),alParamValue[i].ToString ());
              cmd.Parameters.Add (param);
             }
             System.Data.SqlClient.SqlDataReader dr;
             dr=cmd.ExecuteReader ();
             return dr;
            }

          上述代碼可以執(zhí)行任意參數(shù)的存儲過程(返回一個數(shù)據(jù)集)

          2、直接SQL命令

            /// <summary>
            /// 執(zhí)行一個返回字符串的SQL SCRIPT
            /// </summary>
            /// <param name="constring" >連接串</param>
            /// <param name="SQL_COMMAND" >SQL命令</param>
            /// <returns>返回數(shù)據(jù)集</returns>
            public static string  GetDataString(string SQL_COMMAND,string constring)
            { 
             System.Data.SqlClient.SqlConnection cn=new System.Data.SqlClient.SqlConnection (constring);
             cn.Open ();
             System.Data.SqlClient.SqlCommand cmd=new System.Data.SqlClient. SqlCommand ();
             cmd.Connection =cn;
             cmd.CommandType =System.Data.CommandType.Text  ;
             cmd.CommandText =SQL_COMMAND;
             string str="";
             try
             {
              str=cmd.ExecuteScalar().ToString ();
             }
             catch(System.Data.SqlClient.SqlException e)

          {
              System.Diagnostics.Debug.WriteLine (e.Message );
             }
             catch(Exception ex)
             {
              System.Diagnostics.Debug.WriteLine (ex.Message );
             }
             return str;
            }

          /// <summary>
            /// 執(zhí)行一個無返回的SQL
            /// </summary>
            /// <param name="SQL_COMMAND"></param>
            /// <param name="constring"></param>
            /// <returns></returns>
            public static void  Executesql(string SQL_COMMAND,string constring)
            { 
             System.Data.SqlClient.SqlConnection cn=new System.Data.SqlClient.SqlConnection (constring);
             cn.Open ();
             System.Data.SqlClient.SqlCommand cmd=new System.Data.SqlClient. SqlCommand ();
             cmd.Connection =cn;
             cmd.CommandType =System.Data.CommandType.Text  ;
             cmd.CommandText =SQL_COMMAND;
             try
             {
              cmd.ExecuteNonQuery ();
             }
             catch(System.Data.SqlClient.SqlException e)
             {
              System.Diagnostics.Debug.WriteLine (e.Message );
             }
             catch(Exception ex)
             {
              System.Diagnostics.Debug.WriteLine (ex.Message );
             }
            }

          posted on 2007-04-03 11:38 純粹 閱讀(4542) 評論(1)  編輯  收藏

          評論

          # re: 在C#中運行SQL的SELECT、INSERT和UPDATE命令及存儲過程 2007-08-29 17:53 dreamstone

          只用過vb.net,還沒用過c#  回復(fù)  更多評論   


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 金乡县| 峡江县| 乡城县| 高尔夫| 棋牌| 胶州市| 阳春市| 搜索| 台安县| 岳西县| 韶关市| 个旧市| 绥江县| 大足县| 甘洛县| 阿瓦提县| 玉屏| 营山县| 郯城县| 芜湖县| 阿巴嘎旗| 贺兰县| 丰都县| 兴和县| 东乡族自治县| 芜湖县| 凯里市| 姜堰市| 卓尼县| 玉环县| 武清区| 增城市| 旬邑县| 丽水市| 义马市| 宁都县| 都匀市| 东明县| 进贤县| 龙泉市| 大石桥市|