Главная страница


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Konstantin Tokar                     2:5020/400     25 May 2000  15:05:02
 To : All
 Subject : Hе могу добавить в   oracle blob поле
 -------------------------------------------------------------------------------- 
 
 Hикак не могу справиться с добаавлением текста в BLOB поле Oracle через
 DBI. Может, кто-то заметит у меня ошибку? Текст (поле body)содержит
 перевод строки.
 
 Вот программа (ниже):
 Выдает все это:
 
 [Microsoft][ODBC driver for Oracle][Oracle]ORA-01465: неверно задано
 шестнадцатеричное число (SQL-NA000)(DBD: st_execute/SQLExecute err=-1)
 
 ------------------------------------------------------
 #!perl
 use strict;
 use DBI;
 
 $ENV{ORACLE_HOME}='D:\Oracle\Ora81';
 $ENV{NLS_LANG}='RUSSIAN_CIS.CL8MSWIN1251';
 my $dbh = DBI->connect('dbi:Oracle:', q{user/password@(DESCRIPTION=
   (ADDRESS=(PROTOCOL=TCP)(HOST= orahost)(PORT=1521))
   (CONNECT_DATA=(SID=dbsid)))}, "");
 
 $dbh->{RaiseError} = 0;
 
   my $query=qq|
    INSERT INTO MAIL (
       mail_id, msgtype_id, incoming,
       subject, fromaddr, toaddr, 
       body, comments, cdate, 
       date_send, date_recv
       ) VALUES (
        SEQ_MAIL.NEXTVAL, 
        ?,?,?,?,?,?,?,SYSDATE,SYSDATE,SYSDATE
       )
   |;
 
   my $sth = $dbh->prepare($query);
   $sth->bind_param(1, '1');
   $sth->bind_param(2, '2');
   $sth->bind_param(3, '3');
   $sth->bind_param(4, '4');
   $sth->bind_param(5, '5');
 
   $sth->bind_param(6, "6\n",  {ora_type => 113, ora_field => 'body'});
 
   $sth->bind_param(7, '7');
   print "$query\n";
   $sth->execute;
   print $dbh->errstr;
 ------------------------------------------------------
 
 Описание таблицы:
 
 SQL> describe mail
 
  Name                            Null?    Type
  ------------------------------- -------- ----
  MAIL_ID                         NOT NULL NUMBER(10)
  MSGTYPE_ID                      NOT NULL NUMBER(10)
  INCOMING                        NOT NULL NUMBER(1)
  SUBJECT                                  VARCHAR2(255)
  FROMADDR                        NOT NULL VARCHAR2(255)
  TOADDR                          NOT NULL VARCHAR2(255)
  BODY                                     BLOB
  COMMENTS                                 VARCHAR2(255)
  TRUSTED                         NOT NULL NUMBER(1)
  CDATE                           NOT NULL DATE
  DATE_SEND                                DATE
  DATE_RECV                                DATE
 
 -- 
 Konstantin Tokar (http://www.mpei.ac.ru/tokar)
 --- ifmail v.2.15dev5
  * Origin: Demos online service (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Hе могу добавить в oracle blob поле   Konstantin Tokar   25 May 2000 15:05:02 
Архивное /ru.perl/12770cca71243.html, оценка 3 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional