Bonjour,
J'ai une table (on ne peut plus basique)
J'essaie de la remplir, en ne mettant que la date (sans HH24:MI:SS) dans le champ CISC_DATE.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42 -- Create table create table TEMP_TEST_TABLE ( KEY_ID CHAR(6) not null, CISC_DATE DATE not null ) tablespace LPAS_DATA pctfree 10 initrans 1 maxtrans 255 storage ( initial 60M minextents 1 maxextents unlimited ); -- Create/Recreate primary, unique and foreign key constraints alter table TEMP_TEST_TABLE add constraint TEMP_TEST_TABLE_PK primary key (KEY_ID) using index tablespace LPAS_INDEX pctfree 10 initrans 2 maxtrans 255 storage ( initial 41600K minextents 1 maxextents unlimited ); -- Create/Recreate indexes create index TEMP_TEST_TABLE_CISC_DATE on TEMP_TEST_TABLE (CISC_DATE) tablespace LPAS_INDEX pctfree 10 initrans 2 maxtrans 255 storage ( initial 26000K minextents 1 maxextents unlimited );
Lorsque passe par une procédure stockées et je fais ceci :
je devrais avoir 4 fois la meme valeur dans le champ date (juste une date), n'est ce pas ?! Et ben non, en fait j'ai ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 DECLARE CURRENT_DATE date := TRUNC(SYSDATE); BEGIN INSERT INTO temp_test_table SELECT '1', CURRENT_DATE FROM dual; CURRENT_DATE:=TRUNC(SYSDATE); INSERT INTO temp_test_table SELECT '2', CURRENT_DATE FROM dual; CURRENT_DATE:=to_date(to_char(trunc(SYSDATE),'DD/MM/YYYY')||' 00:00:00','DD/MM/YYYY HH24:MI:SS'); INSERT INTO temp_test_table SELECT '3', CURRENT_DATE FROM dual; INSERT INTO temp_test_table SELECT '4', TRUNC(sysdate) from dual; COMMIT; END;
Etrange, n'est-il pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 select t.* from temp_test_table t; KEY_ID CISC_DATE 1 18/10/2010 14:13:42 2 18/10/2010 14:13:42 3 18/10/2010 14:13:42 4 18/10/2010
Quelqu'un a une explication et une solution ?
Comment assigner une valeur date à une variable de type DATE, une date sans HH24:MI:SS ???
Note : cela fonctionnait très bien sur oracle 8, depuis qu'on est passé à Oracle 10, rien ne va plus...
Partager