Модераторы: ginnie, korob2001, JackYF
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Параметризованный запрос к базе 
:(
    Опции темы
infarch
Дата 25.9.2020, 13:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 525
Регистрация: 13.3.2009

Репутация: нет
Всего: 1



Здравствуйте

Пытаюсь решить проблему со вставкой длинной строки в базу через параметризованный запрос.

Дело происходит на серваке с древней убунту сервер на борту, база данных MS SQL, стоит драйвер freetds.
Проблема в том что строки овер 4000 символов обрезаются до 4000, а с определенного порога (11000 символов примерно) весь скрипт падает с ошибкой "DBD::ODBC::st execute failed: [unixODBC][FreeTDS][SQL Server]Invalid string or buffer length (SQL-HY090)".

Код

    my $isql = "insert into TestTest(HugeText, HugeVC) values (?, ?, ?)";
    query($dbh, $isql, $str, $str);

exit;

sub query {
    my($dbh, $sql, @args) = @_;
    
    my $sth = $dbh->prepare($sql) or die "prepare";
    
    my $c = 1;
    foreach my $param (@args){
        $sth->bind_param( $c++, $param );
    }
    $sth->execute();
    
    die $dbh->err if $dbh->err;
    
    my @result;
    
    if( $sth->{NUM_OF_FIELDS} >  0){
        while(my $ary_ref = $sth->fetchrow_hashref){
            push @result, $ary_ref;
        }        
    }
    
    
    return @result;
}


Не встречался ли кто с таким?

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl: Системное программирование"
korob2001
sharq
  • В этом разделе обсуждаются вопросы относящиеся только к системному программированию на Perl
  • Если ваш вопрос не относится к системному или CGI программированию, задавайте его в общем разделе
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Системное программирование | Следующая тема »


 




[ Время генерации скрипта: 0.1007 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.