sql >> Databáze >  >> RDS >> Oracle

jak vložit aktuální datum do pole DATE ve formátu dd/mm/rrrr v oracle

DATE je vestavěný typ v Oracle, který je reprezentován pevným způsobem a nemáte nad ním žádnou kontrolu.

Takže:

Chci, aby vložil [...] jako 08/01/2011 00:00:00

Výše uvedené je nesmyslné. Nevkládáte řetězec, ale datum.

Formát je užitečný pouze tehdy, když chcete:

  • převést řetězec na interní reprezentaci data pomocí TO_DATE (maska ​​formátu:jak analyzovat řetězec);
  • převést interní reprezentaci data na řetězec s TO_CHAR (maska ​​formátu:jak vykreslit datum).

Takže v podstatě ve vašem příkladu vezmete DATE, převedete ho na STRING s nějakým formátem a převedete ho zpět na DATE ve stejném formátu. To je ne-op.

Nyní, co váš klient zobrazuje:je to proto, že váš klient Oracle nebude zobrazovat pole DATE přímo a vrstva NLS převede jakékoli pole DATE, které je vybráno. Ve výchozím nastavení tedy záleží na vašem národním prostředí.

Co chcete, je SELECT TO_CHAR(SYSDATE,'DD/MM/YYYY') FROM dual; který explicitně provede převod a vrátí řetězec.

A když chcete vložit datum do databáze, můžete použít TO_DATE nebo datové literály.



  1. Vložit nebo aktualizovat Android SQLite

  2. Nejjednodušší způsob, jak ověřit odkaz na e-mail PHP

  3. Použití různých úložišť MySQL v návrhu databáze

  4. Najděte název hostitele a port pomocí příkazů PSQL