SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 23.08.2014 15:38:31

Neznayka
Участник
Зарегистрирован: 26.05.2013
Сообщений: 3

Хранимая процедура обрезает длинную запись

Добрый день.
Случилась такая проблема. На своем сайте (который сам писал) стал замечать такую закономерность, когда длина записываемых данных в поле одной из таблиц в БД превышает определенную длину (очень большая длина), то при записи просто обрезаются данные.
Запись в БД при этом производится через хранимую процедуру:


-- поле, которое обрезается - `html`. Тип поля MEDIUMTEXT --
BEGIN
    INSERT INTO article(name, category_id, groups_id, html) VALUES(var_name, var_category_id, var_group_id, var_content_html);        
END

Стал разбираться и вот что нашел. Поменял хранимую процедуру на простой SQL запрос:
$sql = "INSERT INTO article(name, category_id, groups_id, html) VALUES('{$article_name}', {$category_id}, {$group_id}, '{$content_html}')";

и проблема исчезла.
Подскажите пожалуйста, почему через хранимую процедуру обрезаются данные большого размера. Версия MySql 5.5

Отредактированно Neznayka (23.08.2014 15:46:33)

Неактивен

 

#2 23.08.2014 15:45:47

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Хранимая процедура обрезает длинную запись

Приведите хранимую процедуру. Тип поля MEDIUMTEXT, а какой тип переменной var_content_html?

Неактивен

 

#3 23.08.2014 17:58:50

Neznayka
Участник
Зарегистрирован: 26.05.2013
Сообщений: 3

Re: Хранимая процедура обрезает длинную запись

Вот спасибо! Ну точно же, я совсем забыл в параметре хранимой процедуры сменить тип переменной var_content_html с TEXT на MEDIUMTEXT. Сейчас поменял и все заработало как надо.
Еще раз спасибо!

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson