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

utilizzando c# datetime nella query di aggiornamento di MySQL

Fondamentalmente dovresti evitare di includere direttamente i valori nella tua query.

Senza dubbio potresti metti le virgolette intorno al valore... ma non dovresti. Invece, dovresti usare SQL parametrizzato e inserire il valore nel parametro. In questo modo non esegui una conversione di stringhe soggetta a errori, eviti attacchi di SQL injection (per parametri di stringa) e separi il codice dai dati.

(Come esempio di quanto possa essere leggermente interrotto, il tuo codice corrente utilizzerà i separatori di data e ora della "cultura corrente", che potrebbero non essere / e : . Puoi risolvere il problema specificando CultureInfo.InvariantCulture ... ma è meglio non eseguire affatto la conversione.)

Cerca la documentazione di un Parameters proprietà su qualsiasi Command tipo che stai utilizzando (ad es. MySqlCommand.Parameters ) che si spera ti fornisca esempi. Potrebbe anche esserci una sezione tutorial nella documentazione per SQL parametrizzato. Ad esempio, questa pagina può sii quello che cerchi.