Sterin, Ilya <[EMAIL PROTECTED]> [010917 08:07]:
> Have you tried outputting the query (print() it) and see exactly what you
> are getting.  Running that through sqlplus might also help.  This is really
> not a DBI/DBD problem, but might be an Oracle config problem or the query
> you are submitting is different than what you are expecting.
> 
> HTH

As  I have said, I had traced my SQL statements and they are correct. I run
them through sqlplus and they worked. The problem is very strange because
when I submit my HTML form and it fails because of ORA-1801 I usually 
press 'Back' button on my browser, submit it again and it works!

Now I am examinig bug#1112313 (thank you, Michael Nhan) that says:

'ORA-1801 may occur fetching a DATE column into a large buffer in Pro/OCI. 
Eg: If there is a LONG column prior to the DATE column being selected then 
it is possible to get ORA-1801 on the date column if the LONG column has a 
defined maximum length of 1Mb.'

Best regards,
WP

> -----Original Message-----
> From: Wojciech Pietron
> To: [EMAIL PROTECTED]
> Sent: 9/17/01 4:14 AM
> Subject: ORA-01801 problem again
> 
> Environment:
> SunOS 5.5.1 Generic_103640-36 sun4u sparc SUNW,Ultra-2
> Oracle Enterprise Server 8.0.5 (on remote SunOS)
> DBI 1.20 (all tests OK)
> DBD::Oracle 1.12 (all tests OK)
> 
> Hi,
> 
> I decided to present my problem again. Nobody answered my
> question, but I still believe there are clever people who 
> can throw new light on my problem.
> 
> I have a table:
> =====================================================
> SQL> desc pub;
>  Name                            Null?    Type
>  ------------------------------- -------- ----
>  ID_PUB                          NOT NULL NUMBER(5)
>  TYP_PUB                                  VARCHAR2(3)
>  ROK_PUB                                  DATE
>  BIN_PUB                                  BLOB
>  NRD_PUB                                  VARCHAR2(20)
>  DATA_PUB                                 DATE
> SQL>
> =====================================================
> 
> and a CGI script 'pub.cgi' that reads data from a HTML form 
> and puts it remotely to the table 'pub'. I don't have a HTML 
> field that correspond to 'bin_pub' (BLOB) column - it is modified 
> from another program with no problems. 
> 
> >From time to time, when I submit the form I get an error:
> 
> pub.cgi: DBD::Oracle::st execute failed: 
> ORA-01801: date format is too long for internal buffer 
> (DBD ERROR: OCIStmtExecute)
> 
> When I back from error page again and submit it again, my
> record is modified correctly. The main problem is that it
> appears sporadically. It takes place both on Netscape (4.76 WinNT and
> Solaris) and IE 5.5 (WinNT)
> 
> The important variables are set:
> $dbh->{LongReadLen} = 2000000;
> $dbh->{LongTruncOk} = 1;
> but it doesn't make any difference.
> 
> What is the reason of the error? I trail all the sql statements and they
> are always lexically correct. Has anyone ever faced the ORA-01801 error?
> 
> I thank all helpful people in advance.
> -- 
> Wojciech Pietron    [EMAIL PROTECTED]
> National Institute of Telecommunications OI
> Szachowa 1, 04-894 Warsaw, POLAND
> tel: +48 22 5128126, fax: +48 22 5128667

Reply via email to