Solved

INSERT with to_date in values clause

Posted on 2010-11-18
2
757 Views
Last Modified: 2013-12-18
I'm tyring to insert a date value into a date field using to_date in the values clause, but continually get the following error.  I've tried a large variety of date formats and masks, but my preferred is MM/DD/YYYY hh:mm PM TZR.


Error starting at line 1 in command:
INSERT INTO pa_cpnt_user (col_num, cpnt_typ_id, cpnt_id, rev_dte, user_value, lst_upd_usr, lst_upd_tstmp) VALUES (1124,TRNG,test-item, to_date('20070901 02:00','yyyymmdd hh:mm'),08,SS_UPDATE,SYSDATE)
Error at Command Line:1 Column:183
Error report:
SQL Error: ORA-00984: column not allowed here
00984. 00000 -  "column not allowed here"
*Cause:    
*Action:


Here is the sql:

INSERT INTO pa_cpnt_user (col_num, cpnt_typ_id, cpnt_id, rev_dte, user_value, lst_upd_usr, lst_upd_tstmp) VALUES (1124,TRNG,test-item, to_date('20070901 02:00','yyyymmdd hh:mm'),08,SS_UPDATE,SYSDATE);

My table is as follows:

desc pa_cpnt_user
Name                           Null                             Type                                                                                                                                                                                                                                                                                      
------------------------------ -------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
COL_NUM                        NOT NULL                         NUMBER(38)                                                                                                                                                                                                                                                                                
CPNT_TYP_ID                    NOT NULL                         VARCHAR2(90)                                                                                                                                                                                                                                                                              
CPNT_ID                        NOT NULL                         VARCHAR2(90)                                                                                                                                                                                                                                                                              
REV_DTE                        NOT NULL                         DATE                                                                                                                                                                                                                                                                                      
USER_VALUE                                                      VARCHAR2(120)                                                                                                                                                                                                                                                                              
LST_UPD_USR                                                     VARCHAR2(90)                                                                                                                                                                                                                                                                              
LST_UPD_TSTMP                                                   DATE                                                                                                                                                                                                                                                                                      
0
Comment
Question by:mattturley
  • 2
2 Comments
 
LVL 3

Accepted Solution

by:
mpaladugu earned 500 total points
ID: 34169690
all the charecter values shoudl be enclosed in sngle quotes,

IINSERT INTO pa_cpnt_user (col_num,
                          cpnt_typ_id,
                          cpnt_id,
                          rev_dte,
                          user_value,
                          lst_upd_usr,
                          lst_upd_tstmp)
    VALUES (1124,
            'TRNG',
            'test-item',
            TO_DATE ('20070901 02:00', 'yyyymmdd hh:mm'),
            08,
            'SS_UPDATE',
            sysdate)
0
 
LVL 3

Expert Comment

by:mpaladugu
ID: 34169723
In the above comment, use MI instead of MM in place for minutes.

INSERT INTO pa_cpnt_user (col_num,
                          cpnt_typ_id,
                          cpnt_id,
                          rev_dte,
                          user_value,
                          lst_upd_usr,
                          lst_upd_tstmp)
    VALUES (1124,
            'TRNG',
            'test-item',
            TO_DATE ('20070901 02:00', 'yyyymmdd hh:mm'),
            08,
            'SS_UPDATE',
            sysdate)


and to try various date formats, just to test which format returns what. and if particular format is correct use for example.
Select TO_DATE ('20070901 02:00', 'yyyymmdd hh:mi PM') from dual
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Join & Write a Comment

Suggested Solutions

Title # Comments Views Activity
oracle global variables 4 51
Out of Sequence numbers for today 25 47
automatic email alert 1 20
Oracle Next Available Number 2 12
This article started out as an Experts-Exchange question, which then grew into a quick tip to go along with an IOUG presentation for the Collaborate confernce and then later grew again into a full blown article with expanded functionality and legacy…
Working with Network Access Control Lists in Oracle 11g (part 1) Part 2: http://www.e-e.com/A_9074.html So, you upgraded to a shiny new 11g database and all of a sudden every program that used UTL_MAIL, UTL_SMTP, UTL_TCP, UTL_HTTP or any oth…
This video explains at a high level about the four available data types in Oracle and how dates can be manipulated by the user to get data into and out of the database.
This video shows setup options and the basic steps and syntax for duplicating (cloning) a database from one instance to another. Examples are given for duplicating to the same machine and to different machines

707 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now