No formatee la fecha para incluirla en SQL.
Use una consulta parametrizada y luego simplemente incluya el valor como un parámetro. De esa forma, no tendrá que obtener ningún formato correcto en absoluto.
Debe usar consultas parametrizadas para todos datos:además de formatear, también lo protege de los ataques de inyección SQL.
Obtener un formato de fecha/hora que funcione para la instalación particular de Oracle que está usando en este momento no el arreglo correcto. Hazlo correctamente:evita incluir datos en tu código (el SQL).
En un asunto diferente, su pregunta está haciendo suposiciones incorrectas para empezar. Un DateTime
la variable no tiene ningún valor en un "formato habitual", más que un int
tiene una representación decimal o una representación hexadecimal de un número. DateTime
no almacena texto internamente en absoluto, almacena una cantidad de tics. Cómo se formatea cuando llamas a ToString
depende de todo tipo de aspectos culturales. Vale la pena separar la noción del valor fundamental representado por un tipo del formateado representación de cadena que podría obtener llamando a ToString
.