How to execute a stored procedure within C# program

前端 未结 13 1657
别跟我提以往
别跟我提以往 2020-11-22 00:10

I want to execute this stored procedure from a C# program.

I have written the following stored procedure in a SqlServer query window and saved it as stored1:

<
13条回答
  •  抹茶落季
    2020-11-22 00:29

    this is an example of a stored procedure that returns a value and it's execution in c#

    CREATE PROCEDURE [dbo].[InsertPerson]   
    -- Add the parameters for the stored procedure here  
    @FirstName nvarchar(50),@LastName nvarchar(50),  
    @PersonID int output  
    AS  
    BEGIN  
        insert [dbo].[Person](LastName,FirstName) Values(@LastName,@FirstName)  
    
        set @PersonID=SCOPE_IDENTITY()  
    END  
    Go  
    
    
    --------------
     // Using stored procedure in adapter to insert new rows and update the identity value.  
       static void InsertPersonInAdapter(String connectionString, String firstName, String lastName) {  
          String commandText = "dbo.InsertPerson";  
          using (SqlConnection conn = new SqlConnection(connectionString)) {  
             SqlDataAdapter mySchool = new SqlDataAdapter("Select PersonID,FirstName,LastName from [dbo].[Person]", conn);  
    
             mySchool.InsertCommand = new SqlCommand(commandText, conn);  
             mySchool.InsertCommand.CommandType = CommandType.StoredProcedure;  
    
             mySchool.InsertCommand.Parameters.Add(  
                 new SqlParameter("@FirstName", SqlDbType.NVarChar, 50, "FirstName"));  
             mySchool.InsertCommand.Parameters.Add(  
                 new SqlParameter("@LastName", SqlDbType.NVarChar, 50, "LastName"));  
    
             SqlParameter personId = mySchool.InsertCommand.Parameters.Add(new SqlParameter("@PersonID", SqlDbType.Int, 0, "PersonID"));  
             personId.Direction = ParameterDirection.Output;  
    
             DataTable persons = new DataTable();  
             mySchool.Fill(persons);  
    
             DataRow newPerson = persons.NewRow();  
             newPerson["FirstName"] = firstName;  
             newPerson["LastName"] = lastName;  
             persons.Rows.Add(newPerson);  
    
             mySchool.Update(persons);  
             Console.WriteLine("Show all persons:");  
             ShowDataTable(persons, 14); 
    

提交回复
热议问题