06. december 2000 - 10:56Der er
8 kommentarer og 1 løsning
typen \"date\"
Vi sidder med et problem ang datatypen \"date\" : Hvordan finder vi tidsdelen? hvad er SQLsyntaksen for en datatype til at indeholde et klokkeslet?? bemærk: det er ikke systemtiden men et brugerindtastet klokkeslet.
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
måske det her kan give dig svaret: SVRMGR> select to_char(sysdate,\'dd.mm.yyyy\') date1, 2> to_char(sysdate,\'yyyy/mm/dd\') date2 3> from dual; DATE1 DATE2 ---------- ---------- 27.09.1999 1999/09/27
eller:
SVRMGR> select * from nls_session_parameters 2> where parameter=\'NLS_DATE_FORMAT\'; PARAMETER VALUE ------------------------------ ------------------------------ NLS_DATE_FORMAT mm/dd/yyyy
SVRMGR> set datewidth 15 Datewidth 15
SVRMGR> select sysdate from dual; SYSDATE --------------- 09/27/1999
så hvis du sørger for at din NLS_DATE_FORMAT er sat som du vil have det... :)
Skulle da kunne gøre det. Den generelle holdning til seperatorer i date typen er - mellem dato-delene \' \'(læses blanktegn) mellem dato og klokkeslet og : mellem klokkeslets delene...
Undskyld... du spørger om tidsformat :) sæt din nls_date_format = \'YYYY-MM-DD:HH24:MI:SS\' i init.ora. eller Alter session set nls_date_format = \'YYYY-MM-DD:HH24:MI:SS\'; i din session
Select to_char(time1,\'YYYY-MM-DD:HH24:MI:SS\') from test1; giver :
1998-07-21:00:00:00
f.eks.
create table test1 (time1 date); insert into test1 values (sysdate); select * from test1;
Giver dig: 1998-07-21:10:07:34
prøv så:
update test1 set time1 = (trunc(time1));
giver: 1998-07-21:00:00:00
Du skal så bare sætte din tid ind i stedet... ok ?
pnielsen >> når vi ændrer datoformatet kan man så definere 2 forskellige formater? når vi feks har en attribut med en dato og en anden attribut med et klokkeslet??
Alter session set nls_date_format sætter formatet som du ønsker, i den enkelte session.
Men ellers kan du i din insert gøre sådan: INSERT INTO bonus (bonus_date) SELECT TO_DATE( \'January 15, 1989, 11:00 A.M.\', \'Month dd, YYYY, HH:MI A.M.\', \'NLS_DATE_LANGUAGE = American\') FROM DUAL;
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.