PDO::execute('insert into user set location = "africa"')
PDO::execute('insert into user set img = "'.PDO::lastInsertId().'.jpg"')
вместо этого можно ли сделать один запрос типа такого:
PDO::execute('insert into user set location = "africa", img = (id+".jpg")')
- типа вот такого.
тиблица user состоит из 3 полей: id (autoincrement, primary), location (varchar) и img (varchar)
Заранее спасибо за ответы
Спустя 15 минут, 8 секунд (22.09.2011 - 19:25) killer8080 написал(а):
Второй запрос должен быть update, а не insert.
Хотя я вообще не понимаю какой смысл делать поле img.
Хотя я вообще не понимаю какой смысл делать поле img.
Спустя 28 минут, 40 секунд (22.09.2011 - 19:53) John Cena написал(а):
я там описался, извиняюсь, там должен быть update
таблицу я привел не настоящую, просто для примера, подобную той которая есть
так можно ли объединить это в один запрос?
таблицу я привел не настоящую, просто для примера, подобную той которая есть
так можно ли объединить это в один запрос?
Спустя 1 час, 8 минут, 7 секунд (22.09.2011 - 21:02) killer8080 написал(а):
John Cena
почитай про нормализацию баз данных.
Поле img у тебя получается расчётным путём от id, а это нарушает третью нормальную форму. Выкинь это поле, а вывод можно делать так
почитай про нормализацию баз данных.
Поле img у тебя получается расчётным путём от id, а это нарушает третью нормальную форму. Выкинь это поле, а вывод можно делать так
SELECT `location`, CONCAT(`id`.'.jpg') AS `img` FROM `table`
Спустя 29 минут, 12 секунд (22.09.2011 - 21:31) John Cena написал(а):
в некоторых случаях img берется из внешних сайтов да бы не занимать место на сервере, поэтому img не всегда равно id
Спустя 20 минут, 27 секунд (22.09.2011 - 21:51) killer8080 написал(а):
Ну тогда без UPDATE не обойтись, потому как в момент выполнения insert-а, id ещё не известен.
Хотя возможен вариант с триггерами, если поддерживаются.
Хотя возможен вариант с триггерами, если поддерживаются.