簡體   English   中英

如何存儲將行或列值返回到ASP.NET C#變量的SQL存儲過程結果?

[英]How do I store a SQL stored procedure result that returns a row or a column value into an ASP.NET C# variable?

我有一個SQL存儲過程,該存儲過程返回列值(SQL數據類型: nchar(1) )。 存儲的過程將運行,並在傳遞參數時返回所需的值。 基於此返回值,我想轉移程序流。 為此,我需要讀取ASP.NET C#變量中返回的值,但不確定如何執行此操作。

create procedure sproc_Type
      @name as nchar(10)
AS    
SELECT Type FROM Table WHERE Name = @name

我想讀取.cs文件中的Type值,並希望將其保存以備后用。

             SqlConnection conn = null;
             SqlDataReader rdr  = null;
             conn = new 
                SqlConnection("Server=(local);DataBase=Northwind;Integrated Security=SSPI");
            conn.Open();

            // 1.  create a command object identifying
            //     the stored procedure
            SqlCommand cmd  = new SqlCommand(
                "Stored_PROCEDURE_NAME", conn);

            // 2. set the command object so it knows
            //    to execute a stored procedure
            cmd.CommandType = CommandType.StoredProcedure;

            // 3. add parameter to command, which
            //    will be passed to the stored procedure
            cmd.Parameters.Add(
                new SqlParameter("@PARAMETER_NAME", PARAMETER_VALUE));

            // execute the command
            rdr = cmd.ExecuteReader();

            // iterate through results, printing each to console
            while (rdr.Read())
            {
                var result = rdr["COLUMN_NAME"].ToString();
            }
string connectionString = "(your connection string here)";
string commandText = "usp_YourStoredProc";

using (SqlConnection conn = new SqlConnection(connectionString))
{
SqlCommand cmd = new SqlCommand(commandText, conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandTimeout = 600;

conn.Open();
SqlDataReader dr = cmd.ExecuteReader();
while(dr.Read())
{
// your code to fetch here.
}
conn.Close();

}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM