Oracle
 sql >> Base de données >  >> RDS >> Oracle

Changer le format de la date

Ne formatez pas du tout la date pour l'inclure dans SQL.

Utilisez une requête paramétrée , puis incluez simplement la valeur en tant que paramètre. De cette façon, vous n'avez pas besoin d'avoir une mise en forme correcte du tout.

Vous devez utiliser des requêtes paramétrées pour tous data - en plus du formatage, il vous protège également des attaques par injection SQL.

Obtenir un format de date/heure qui fonctionne pour l'installation particulière d'Oracle que vous utilisez actuellement n'est pas la bonne solution. Faites-le correctement :évitez d'inclure des données dans votre code (le SQL).

Sur un autre sujet, votre question fait des hypothèses incorrectes pour commencer. Un DateTime la variable ne contient aucune valeur dans un "format habituel", pas plus qu'un int contient une représentation décimale ou une représentation hexadécimale d'un nombre. DateTime ne stocke pas du tout le texte en interne - il stocke un certain nombre de ticks. Comment il est formaté lorsque vous appelez ToString dépend de toutes sortes d'aspects culturels. Il convient de séparer la notion de valeur fondamentale représentée par un type de celle formatée représentation sous forme de chaîne que vous pourriez obtenir en appelant ToString .