Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Ändern des Datumsformats

Formatieren Sie das Datum nicht, um es überhaupt in SQL aufzunehmen.

Verwenden Sie eine parametrisierte Abfrage , und schließen Sie dann einfach den Wert als Parameter ein. Auf diese Weise müssen Sie überhaupt keine Formatierung vornehmen.

Sie sollten parametrisierte Abfragen für alle verwenden Daten - abgesehen von der Formatierung schützt es Sie auch vor SQL-Injection-Angriffen.

Es ist nicht, ein Datums-/Uhrzeitformat zu erhalten, das für die spezielle Installation von Oracle funktioniert, die Sie gerade verwenden die richtige Abhilfe. Machen Sie es richtig:Vermeiden Sie es, Daten in Ihren Code (das SQL) aufzunehmen.

In einer anderen Angelegenheit geht Ihre Frage zunächst von falschen Annahmen aus. Eine DateTime Variable enthält überhaupt keinen Wert in einem "üblichen Format", genauso wenig wie ein int enthält eine Dezimaldarstellung oder eine Hexadezimaldarstellung einer Zahl. DateTime speichert Text überhaupt nicht intern - es speichert eine Reihe von Ticks. Wie es formatiert wird, wenn Sie ToString aufrufen hängt von allen möglichen kulturellen Aspekten ab. Es lohnt sich, den Begriff des durch einen Typ repräsentierten Grundwerts vom formatierten zu trennen Zeichenfolgendarstellung, die Sie möglicherweise erhalten, indem Sie ToString aufrufen .