sql >> Databasteknik >  >> RDS >> Mysql

mysql_real_escape_string() i .NET Framework

Varför vill du göra det? Det korrekta sättet att skicka användarindata till databasen är att inte undkomma den, utan att använda frågeparametrar .

using(var command = new SqlCommand("insert into MyTable(X, Y) values(@x, @y)", connection))
{
    command.Parameters.Add("@x", textBoxX.Text);
    command.Parameters.Add("@y", textBoxY.Text);
    command.ExecuteNonQuery();
}

Detta ger bättre prestanda, eftersom frågetexten alltid är densamma så att frågekörningsplanen kan cachelagras. Detta skyddar dig också mot SQL-injektionsattacker. Och det låter dig också ignorera dataformateringsproblem (t.ex. hur formateras en DateTime i SQL-Server? Hur ska du representera ett tal i SQL? och så vidare)




  1. Finns det en bästa praxis/sammanhängande sätt att uppdatera ett databasfält som innehåller ett hashnyckel-värdelager?

  2. Node.js och mysql Callback :fråga i fråga callback

  3. MySQL:Hur man bulkar SELECT-rader med flera par i WHERE-satsen

  4. Konverteringen misslyckades vid konvertering av datum och/eller tid från teckensträng när datum och tid infogades