2011-12-23 2 views
0

Я вставляю данные в базу данных с помощью класса Zend Zend_Db_Table_Abstract.Zend_Db_Table_Abstract Ошибка вставки

Однако в некоторых случаях, когда я помещал длинный текст в текстовые поля, выполнение запроса не удавалось. Поэтому я изменил свой код в соответствии с ответом на этом сайте. Наконец, мой код выглядит.

$objSQL = $this->objDB->getAdapter()->getConnection()->query($sql); 
$result = $objSQL->execute(); 

Это исправило проблему. Однако с этой модификацией я не могу обновлять данные в базе данных. ЕСЛИ я меняю свой код на предыдущий путь ниже, а затем он начинает обновляться.

$objSQL = $this->objDB->getAdapter()->prepare($sql); 
$result = $objSQL->execute(); 

Может кто-нибудь помочь мне исправить эту проблему? Спасибо.

+1

Где вы объясните, в чем проблема? Пожалуйста, укажите конкретные сообщения об ошибках. Обобщенные термины/фразы типа «не удалось», «не работает» и т. Д. Никому не помогают. –

+0

Привет, Если я получу правильное сообщение об ошибке, я мог бы проверить дальше. Единственное, что я получил за $ objSQL-> errorInfo(), - пустой массив. Код ошибки 00000. –

ответ

0

Я мог бы исправить проблему, изменив код. Я решил удалить пользовательские вставки sql-операторов. И я передал их в массив Send_DB_Table. Это сработало.

$this->objDB->getAdapter()->insert($tableName, $arrayData); 

Спасибо.