sql >> Database teknologi >  >> RDS >> Mysql

bruger c# datetime i mysql opdateringsforespørgsel

Grundlæggende bør du undgå at inkludere værdier direkte i din forespørgsel.

Ingen tvivl om, at du kunne sæt anførselstegn omkring værdien... men det skal du ikke. I stedet skal du bruge parametriseret SQL og sætte værdien i parameteren. På den måde laver du ikke en fejltilbøjelig strengkonvertering, du undgår SQL-injektionsangreb (for strengparametre), og du adskiller kode fra data.

(Som et eksempel på, hvor subtilt brudt dette kan være, vil din nuværende kode bruge "den nuværende kultur"s dato- og tidsseparatorer - som muligvis ikke er / og : . Du kan løse dette ved at angive CultureInfo.InvariantCulture ... men det er bedst slet ikke at foretage konverteringen.)

Se efter dokumentation for en Parameters ejendom på hvilken som helst Command type, du bruger (f.eks. MySqlCommand.Parameters ), som forhåbentlig vil give dig eksempler. Der kan endda være et selvstudieafsnit i dokumentationen til parameteriseret SQL. For eksempel, denne side kan være, hvad du leder efter.



  1. Docker - Kør Apache på vært og container til forskellige websteder

  2. Fjernelse af standardsporingen – Del 3

  3. Databaseforbindelse frigives ikke efter inaktiv timeout i glasfisk

  4. MySQL backup og gendannelse fra kommandolinje