sql >> Database teknologi >  >> RDS >> Sqlserver

Genbruger du SqlCommand?

Ja. Du skal sørge for, at du kalder myCommand.Parameters.Clear mellem hvert opkald for at dumpe parametrene, men der er intet, der forhindrer dig i at genbruge objektet. (Jeg bruger ikke C# ofte, så dette kan have en fejl eller to i teksten)

myConStr = ConfigurationManager.ConnectionStrings["MyConnString"].ConnectionString;
myConn = new SqlConnection(myConStr);
myConn.Open();

myCommand = new System.Data.SqlClient.SqlCommand("team5UserCurrentBooks3", myConn); 
myCommand.CommandType = CommandType.StoredProcedure;
myCommand.Parameters.AddWithValue("@book_id", bookID);
myCommand.Parameters.AddWithValue("@user_id", userID);
myCommand.ExecuteNonQuery();

myCommand.Parameters.Clear();
myCommand.CommandText= "NewStoredProcedureName";
myCommand.CommandType = CommandType.StoredProcedure;
myCommand.Parameters.AddWithValue("@foo_id", fooId);
myCommand.Parameters.AddWithValue("@bar_id", barId);
mycommand.ExecuteNonQuery();

myCommand.Parameters.Clear();
myCommand.CommandText = " SELECT * FROM table1 WHERE ID = @TID;"
myCommand.CommandType = CommandType.Text;
myCommand.Parameters.AddWithValue("@tid", tId);
SqlReader rdr;
rdr = myCommand.ExecuteReader();


  1. Formål med at bruge forskellige typer PL/SQL-samlinger i Oracle

  2. Hvordan bruger man ANY i stedet for IN i en WHERE-klausul med Rails?

  3. SQL for at finde det første ikke-numeriske tegn i en streng

  4. Bedste måde at INDSÆTTE mange værdier i mysqli?