Oracle
 sql >> Baza danych >  >> RDS >> Oracle

jak zmienić datę na godzinę w Oracle 10g

Muszę wstawić STIMING raz

Oracle nie ma TIME typ danych. DATE typ danych jest zawsze przechowywany wewnętrznie jako 7 bajtów i zawsze składa się z roku (2 bajty) oraz miesiąca, dnia, godzin, minut i sekund (każdy po 1 bajt).

nie możesz nie mają składnika roku, miesiąca ani dnia w DATE .

Jeśli chcesz mieć własny czas, będziesz musiał zapisać go jako inny typ danych lub zapisać rok/miesiąc/dzień i zignorować ten składnik.

Kiedy jesteś SELECT ing STIMING kolumna nie pokazuje składnika czasu. Możesz to zmienić, zmieniając domyślny format daty, który jest ustawiony w NLS_DATE_FORMAT parametr sesji.

Możesz przejrzeć ten parametr za pomocą:

SELECT VALUE FROM NLS_SESSION_PARAMETERS WHERE PARAMETER = 'NLS_DATE_FORMAT';

Możesz ustawić tę wartość w bieżącej sesji za pomocą:

ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY-MM-DD HH24:MI:SS';

(Uwaga:nie zmienia to wartości dla innych użytkowników).

Po wstawieniu daty możesz użyć:

INSERT INTO shift ( SNO, SNAME, STIMING)
VALUES ( 121323, 'morning', TO_DATE( '01-APR-2017 07:00' DD-MON-YYYY HH24:MI' ) )

Lub ANSI TIMESTAMP literał (który będzie niejawnie rzutowany na DATE format kolumny):

INSERT INTO shift ( SNO, SNAME, STIMING)
VALUES ( 121323, 'morning', TIMESTAMP '2017-04-01 07:00:00' )


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Znajdowanie przyczyny błędu zakleszczenia w pliku śledzenia Oracle

  2. Jaka jest różnica między varchar a varchar2 w Oracle?

  3. Wyłącz wszystkie ograniczenia tabeli w Oracle

  4. Oracle:unikatowość selektywna indeksu na podstawie funkcji

  5. Jaka jest domyślna nazwa ograniczenia w Oracle?