L'insertion d'horodatage dans oracle colonne de type timestamp
J'ai une table dans laquelle il y a une colonne avec le type de données TIMESTAMP(0)
Lorsque j'insère une date dans cette colonne à l'aide de
INSERT INTO TEST_TIMESTAMP VALUES(SYSDATE)
il insère une date dans l'exemple suivant le format
12-SEP-12 10.31.19.000000000 AM
Je veux savoir comment le ci-dessous timestamp formats peuvent être insérées dans le tableau
12-SEP-12 10.31.19
et 12-SEP-12 10.31.19 AM
J'ai essayé la spécification de certains formats à l'aide de TO_CHAR
lors de l'insertion d' SYSDATE
dans la table, mais il ne fonctionne pas.
S'il vous plaît suggérer.
- Un
timestamp
oudate
type de données n'est pas un format. Un format est nécessaire uniquement si vous récupérez la valeur pour l'afficher à un utilisateur. TIMESTAMP(0)
est effectivement la même queDATE
, qui permet de stocker fois à la seconde, de toute façon. VotreNLS_DATE_FORMAT
ne peut pas faire que évident, comme il ne pouvait montrer la partie de date par défaut, maisTO_CHAR(<date_field>, 'DD-Mon-RR HH24.MI.SS')
inclure le temps. (Les types de données sont expliquées dans le documentation)
InformationsquelleAutor Anand | 2012-09-12
Vous devez vous connecter pour publier un commentaire.
lorsque vous stockez une
TIMESTAMP
il sera toujours stocker les données à un maximum de précision (avec des fractions de secondes).Je pense que ce que vous voulez faire est de fournir un format d'affichage de la date à laquelle vous récupérer à partir de la base de données.
Vous pouvez le faire comme ceci:
ou
TO_TIMESTAMP('12-SEP-12 10.31.19','DD-MON-YY HH.MI.SS')
?Vous pouvez le retour c'est très facile comme:
Vous avez été absent supplémentaire ().
Ce pour la colonne type de cache sur le mode
to_char
.