[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: PDO UPDATE
Страницы: 1, 2
tar
Решил перейти на PDO
Но, простейший запрос не исполняется
    
$style = 'bla';
$sql = $db->prepare ( " UPDATE someTable SET name=:name WHERE name=:name " );
$sql->bindValue('name', $style);
$sql->bindValue('name', 'default');
$sql->execute();
$result = $sql->rowCount(PDO::FETCH_NUM);

$result равен нулю ???
Ошибок не выдает.
Поле с таким именем (name) и значением (default) строки - в базе существуют.
Из консоли phpMyAdmin подобный запрос исполняется без проблем.

Может есть еще какие-то приколы с PDO, подскажите, пожалуйста.
Спасибо.
Arh
Наверно потому что вы меняете default на default

_____________
Промокод предоставляет скидку на заказ домена и/или хостинга reg.ru
BFCC-3895-8804-9ED2
Arh
$sql->bindValue('name',  $style);

надо тоже с двоеточием писать
$sql->bindValue(':name',  $style);


_____________
Промокод предоставляет скидку на заказ домена и/или хостинга reg.ru
BFCC-3895-8804-9ED2
redreem
а зачем эта строка?

Цитата
$sql->bindValue('name',  $style);
tar
Цитата (redreem @ 27.11.2013 - 13:32)
а зачем эта строка?

bindValue('name',  $style);


1. двоеточие ни при чем
2. меняю default на bla
Arh
И запрос проще так написать по моему.

$array[':set'] = 'bla';
$array[':where'] = 'default';
$sql = $db->prepare ("UPDATE someTable SET name=:set WHERE name=:where");
$sql->execute($array);
$result = $sql->rowCount(PDO::FETCH_NUM);


_____________
Промокод предоставляет скидку на заказ домена и/или хостинга reg.ru
BFCC-3895-8804-9ED2
Arh
Цитата (tar @ 27.11.2013 - 13:38)
Цитата (redreem @ 27.11.2013 - 13:32)
а зачем эта строка?

bindValue('name',  $style);


1. двоеточие ни при чем
2. меняю default на bla

Вы не меняете.
Вы плейсхолдеру :name сначала даёте одно значение, а потом перезаписываете его на другое, в результате чего получается такой запрос
UPDATE someTable SET name='default' WHERE name='default'


Ну и UPDATE естественно ничего не меняет и возвращает 0

_____________
Промокод предоставляет скидку на заказ домена и/или хостинга reg.ru
BFCC-3895-8804-9ED2
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.