Domanda

Qual è l'equivalente di PIC S9 con la lunghezza 16 in Oracle? Lo voglio per la memorizzazione di timestamp.

È stato utile?

Soluzione

In realtà, quando la gestione di timestamp in pro-COBOL, faccio la seguente:

77 H-DATETIME PIC X(19).

Nel Oracle punto di vista, io uso un oggetto DateTime

Quando voglio recuperare il valore, io uso il seguente:

TO_CHAR(A.TIMESTAMP, 'YYYY-MM-DD-HH24-MI-SS')

Quando voglio aggiornare il campo di Oracle, io uso il seguente:

TO_DATE(A.TIMESTAMP, 'YYYY-MM-DD-HH24-MI-SS')

Il formato che uso consente l'ordinamento e l'utilizzo di "SEARCH / searche ALL".

Spero che questo aiuti.

Altri suggerimenti

Non so PIC S9, ma Oracle ha un tipo di dati timestamp.

Se si desidera memorizzare una data o un datetime con precisione per secondi, quindi utilizzare il tipo di dati DATE. Se avete bisogno di granularità inferiore al secondo quindi utilizzare il tipo di dati TIMESTAMP.

E 'considerato una cattiva pratica di memorizzare le date come una rappresentazione numerica o un carattere in Oracle in quanto rende le operazioni di validazione e la data la data più complesso, e può portare a scarsa ottimizzazione delle query.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top