.net調用存儲過程詳細介紹_.Net教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      推薦:如何實現vs.net控件updatePanel無刷新
      頁面部分 代碼如下: asp:ScriptManager ID=ScriptManager1 runat=server /asp:ScriptManager h2 使用VS控件updatePanel實現無刷新 /h2 p asp:UpdatePanel ID=UpdatePanel1 RenderMode=Block UpdateMode=Conditional runat=server ContentTemplate 點擊按鈕從服務器獲取

       連接字符串

       

      代碼如下:
      string conn = ConfigurationManager.ConnectionStrings["NorthwindConnectionString"].ConnectionString;

       

      confige文件

      代碼如下:
      <connectionStrings>
      <add name="NorthwindConnectionString" connectionString="Data Source=.;Initial Catalog=Northwind;Integrated Security=True" providerName="System.Data.SqlClient"/>
      </connectionStrings>


      1. 只返回單一記錄集的存儲過程

      代碼如下:
      SqlConnection sqlconn = new SqlConnection(conn);
      SqlCommand cmd = new SqlCommand();
      // 設置sql連接
      cmd.Connection = sqlconn;
      // 如果執行語句
      cmd.CommandText = "Categoriestest1";
      // 指定執行語句為存儲過程
      cmd.CommandType = CommandType.StoredProcedure;

       

      SqlDataAdapter dp = new SqlDataAdapter(cmd);
      DataSet ds = new DataSet();
      // 填充dataset
      dp.Fill(ds);
      // 以下是顯示效果
      GridView1.DataSource = ds;
      GridView1.DataBind();


      存儲過程Categoriestest1

      代碼如下:
      CREATE PROCEDURE Categoriestest1
      AS
      select *
      from Categories
      GO

       

      2. 沒有輸入輸出的存儲過程
      c#代碼部分

      代碼如下:
      SqlConnection sqlconn = new SqlConnection(conn);
      SqlCommand cmd = new SqlCommand();

       

      cmd.Connection = sqlconn;
      cmd.CommandText = "Categoriestest2";
      cmd.CommandType = CommandType.StoredProcedure;
      sqlconn.Open();
      // 執行并顯示影響行數
      Label1.Text = cmd.ExecuteNonQuery().ToString();
      sqlconn.Close();


      存儲過程Categoriestest2

      復制代碼 代碼如下:
      CREATE PROCEDURE Categoriestest2 AS
      insert into dbo.Categories
      (CategoryName,[Description],[Picture])
      values ('test1','test1',null)
      GO


      3. 有返回值的存儲過程
      c#代碼部分

      代碼如下:
      SqlConnection sqlconn = new SqlConnection(conn);
      SqlCommand cmd = new SqlCommand();
      cmd.Connection = sqlconn;
      cmd.CommandText = "Categoriestest3";
      cmd.CommandType = CommandType.StoredProcedure;
      // 創建參數
      IDataParameter[] parameters = {
      new SqlParameter("rval", SqlDbType.Int,4)
      };
      // 將參數類型設置為 返回值類型
      parameters[0].Direction = ParameterDirection.ReturnValue;
      // 添加參數
      cmd.Parameters.Add(parameters[0]);

       

      sqlconn.Open();
      // 執行存儲過程并返回影響的行數
      Label1.Text = cmd.ExecuteNonQuery().ToString();
      sqlconn.Close();
      // 顯示影響的行數和返回值
      Label1.Text += "-" + parameters[0].Value.ToString() ;


      存儲過程Categoriestest3

      代碼如下:
      CREATE PROCEDURE Categoriestest3
      AS
      insert into dbo.Categories
      (CategoryName,[Description],[Picture])
      values ('test1','test1',null)
      return @@rowcount
      GO


      4. 有輸入參數和輸出參數的存儲過程
      c#代碼部分

      代碼如下:
      SqlConnection sqlconn = new SqlConnection(conn);
      SqlCommand cmd = new SqlCommand();
      cmd.Connection = sqlconn;
      cmd.CommandText = "Categoriestest4";
      cmd.CommandType = CommandType.StoredProcedure;
      // 創建參數
      IDataParameter[] parameters = {
      new SqlParameter("@Id", SqlDbType.Int,4) ,
      new SqlParameter("@CategoryName", SqlDbType.NVarChar,15) ,
      };
      // 設置參數類型
      parameters[0].Direction = ParameterDirection.Output; // 設置為輸出參數
      parameters[1].Value = "testCategoryName";
      // 添加參數
      cmd.Parameters.Add(parameters[0]);
      cmd.Parameters.Add(parameters[1]);

       

      sqlconn.Open();
      // 執行存儲過程并返回影響的行數
      Label1.Text = cmd.ExecuteNonQuery().ToString();
      sqlconn.Close();
      // 顯示影響的行數和輸出參數
      Label1.Text += "-" + parameters[0].Value.ToString() ;


      存儲過程Categoriestest4

      代碼如下:
      CREATE PROCEDURE Categoriestest4
      @id int output,
      @CategoryName nvarchar(15)
      AS
      insert into dbo.Categories
      (CategoryName,[Description],[Picture])
      values (@CategoryName,'test1',null)
      set @id = @@IDENTITY
      GO


      5. 同時具有返回值、輸入參數、輸出參數的存儲過程
      c#代碼部分

      代碼如下:
      SqlConnection sqlconn = new SqlConnection(conn);
      SqlCommand cmd = new SqlCommand();
      cmd.Connection = sqlconn;
      cmd.CommandText = "Categoriestest5";
      cmd.CommandType = CommandType.StoredProcedure;
      // 創建參數
      IDataParameter[] parameters = {
      new SqlParameter("@Id", SqlDbType.Int,4) ,
      new SqlParameter("@CategoryName", SqlDbType.NVarChar,15) ,
      new SqlParameter("rval", SqlDbType.Int,4)
      };
      // 設置參數類型
      parameters[0].Direction = ParameterDirection.Output; // 設置為輸出參數
      parameters[1].Value = "testCategoryName"; // 給輸入參數賦值
      parameters[2].Direction = ParameterDirection.ReturnValue; // 設置為返回值
      // 添加參數
      cmd.Parameters.Add(parameters[0]);
      cmd.Parameters.Add(parameters[1]);
      cmd.Parameters.Add(parameters[2]);

       

      分享:asp.net 編輯gridview的小例子
      gridview的編輯方法的小例子,一段代碼,供大家學習參考

      共2頁上一頁12下一頁
      來源:模板無憂//所屬分類:.Net教程/更新時間:2013-04-27
      相關.Net教程