sql >> Databasteknik >  >> RDS >> Sqlserver

Hur kör man en SQL-fråga direkt i C#?

För att utföra ditt kommando direkt från C#, skulle du använda klassen SqlCommand.

Snabb exempelkod som använder paramatiserad SQL (för att undvika injektionsattacker) kan se ut så här:

string queryString = "SELECT tPatCulIntPatIDPk, tPatSFirstname, tPatSName, tPatDBirthday  FROM  [dbo].[TPatientRaw] WHERE tPatSName = @tPatSName";
string connectionString = "Server=.\PDATA_SQLEXPRESS;Database=;User Id=sa;Password=2BeChanged!;";

using (SqlConnection connection = new SqlConnection(connectionString))
{
    SqlCommand command = new SqlCommand(queryString, connection);
    command.Parameters.AddWithValue("@tPatSName", "Your-Parm-Value");
    connection.Open();
    SqlDataReader reader = command.ExecuteReader();
    try
    {
        while (reader.Read())
        {
            Console.WriteLine(String.Format("{0}, {1}",
            reader["tPatCulIntPatIDPk"], reader["tPatSFirstname"]));// etc
        }
    }
    finally
    {
        // Always call Close when done reading.
        reader.Close();
    }
}


  1. SQL Server CASE-uttryck

  2. SQL Server - parametersniffning

  3. Kan inte lösa sorteringskonflikten mellan SQL_Latin1_General_CP1_CI_AS och Latin1_General_CI_AS i lika med operationen

  4. SQL Server:konvertera ((int)år,(int)månad,(int)dag) till Datetime