有两个关于数据库时间日期格式的问题 希望大家帮忙看看我有一个关于“票”的表单
索引分别是:
“系列号”,“演出号”,“演出日期”,“座位号”,“行号”,“定票日期”,“存档号”
约束条件是:
 一个主键 三个个其他表单的关联 并且定票的日期要早于演出的日期create table LesTickets (noSerie number (4), numS number (4),  
      dateRep date, noPlace number (4), noRang number (4), 
      dateEmission date, noDossier number (4), 
      constraint tickets_c1 primary key (noSerie), 
      constraint tickets_c3 foreign key (numS,dateRep)  
                 references LesRepresentations (numS,dateRep), 
      constraint tickets_c4 foreign key (noPlace,noRang)  
                 references LesPlaces (noPlace,noRang),
 constraint tickets_c5  check (dateEmission <= dateRep),
      constraint tickets_c6 foreign key (noDossier)  
                 references LesDossiers (noDossier)
) ; 插入数据的时候用了两种不同的方式第一种:insert into LESTICKETS values ('285', '104', TO_DATE('22/04/2010 20h','DD/MM/YYYY HH24"h"'), '13', '9', '09-FEB-10', '104');
总是会显示错误“insert into LESTICKETS values ('285', '104', TO_DATE('22/04/2010 20h','DD/MM/YYY
Y HH24"h"'), '13', '9', '09-FEB-10', '104')                        *
ERROR at line 1:
ORA-01843: not a valid month”怎么才能用TO_DATE方法正确转换两种时间格式???第二种:
insert into LESTICKETS values ('252', '104', TO_DATE('21/04/2010 20h','DD/MM/YYYY HH24"h"'), '23', '1', TO_DATE('21/04/2010 10h','DD/MM/YYYY HH24"h"'), '100');当我执行select * from lestickets;查看用第二种方式成功插入的数据时 时间部分为什么显示的是“21-4? -10”?
 256        104 21-4?  -10            21          2 21-4?  -10      100如果我要通过日期dateRep查询 应该写呢 where dateRep等于???

解决方案 »

  1.   

    INSERT INTO LESTICKETS
    VALUES
      ('285',
       '104',
       TO_DATE('22/04/2010 20', 'DD/MM/YYYY HH24'),
       '13',
       '9',
       to_date('09-FEB-10', 'dd-mon-yyyy', 'nls_date_language=american'),
       '104');
      

  2.   

    谢谢 楼上回复
    小时后面是不是还应该加上H啊?
    但是能不能通过在建表的时候加上constraint来自动转化呢 否则我每次插入的时候都要手动改啊而且如果我要通过日期 查找 应该怎么写?
      

  3.   

    都转化为日期就好了啊
    TO_DATE()
      

  4.   

    但是我能不能 加个 CONSTRAINT 然后当我插入的时候 如果发现格式不如何就自动转换呢?
      

  5.   

    表字段只能加约束,DDL不能加操作性DML语句
    你可以用触发器实现,在插入之前进行转换
      

  6.   

    顶一下
      oracle QQ群:54775466
            欢迎您的到来 
                   大家一起探讨。