Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP: базы данных
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
rybolmuk
0 / 0 / 0
Регистрация: 07.07.2015
Сообщений: 122
#1

PDO, разница bindParam и bindValue

23.06.2016, 23:39. Просмотров 559. Ответов 1
Метки нет (Все метки)

Используется библиотека PDO.
Вопросы следующие:
1) В чем разница между этим
PHP
1
2
$sth = $db->prepare("SELECT * FROM products WHERE id = :id");
$sth->execute(array(':id'=>$id));
и этим
PHP
1
2
3
$sth = $db->prepare("SELECT * FROM products WHERE id = :id");
$sth->bindParam(':id',$id,PDO::PARAM_INT);
$sth->execute();
?

2)В чем разница между этим bindParam и bindValue ?
Прошу поподробней
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.06.2016, 23:39
Ответы с готовыми решениями:

PDO: bindParam и bindValue
Добрый вечер! Уже полдня бьюсь вот с этим: $queryStr = "SELECT...

PDO bindValue и prepare
Всем привет. Никак не могу понять, в чем ошибка ... Не могу совместить prepare...

PDO, Postgres. Долго выполняется SELECT, если есть bindValue
Всем привет! Очень-очень странный баг. Есть табличка postgres с 3.5кк...

BindParam не срабатывает в IN
Здравствуйте Не получается вставить в IN через bindParam значение. В $ids...

PDOStatement::bindParam, не работают константы типов
Доброе утро. Пытаюсь разобраться с поведением констант типов, но выходит что то...

1
Custos
189 / 174 / 30
Регистрация: 23.09.2014
Сообщений: 631
23.06.2016, 23:56 #2
rybolmuk, bindValue сразу задает значение для плейсхолдера. bindParam "связывает" плейсхолдер с переменной (переменная в bindParam передается по ссылке).
При помощи bindParam мы можем забиндить переменную, потом изменить значение этой переменной, а потом выполнить execute. В итоге в базе у нас будет измененное значение переменной.
Также в некоторых случаях рекомендуется использовать bindParam для экономии RAM. На пример у вас есть переменная, в которой пару мегабайт данных (большой текст, бинарные данные, etc). В этом случае рекомендуется использовать bindParam
2
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.06.2016, 23:56

BETWEEN в PDO
Начал буквально час назад работать с опцией BETWEEN, чтобы сделать вывод...

PDO
Есть код: $Plan_ID = 1; $stmt = $pdo->prepare('SELECT * FROM Plans WHERE ID...

PDO и IN
Как в PDO реализовать такой запрос? SELECT name FROM products WHERE id IN...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru