Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Извлечение и добавление в базу

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Grisha
Отправлено: 17 Февраля, 2015 - 07:30:24
Post Id



Новичок


Покинул форум
Сообщений всего: 38
Дата рег-ции: Апр. 2013  


Помог: 0 раз(а)




Добрый день!
Проблема заключается в следующем, нам приходят данные которые нужно добавить в таблицу
Пример: id_p|page_name|qwnty|user_id -данные которые приходят(к примеру 5 записей)
Есть таблица zakaz, в нее нужно добавить данные по следующим параметрам
(Id|id_p|qwnty|user_id)
У нас может быть только одна строка с подобным user_id.
Если существует строка с подобным user_id, то мы проверяем id_p(в ней данные должны быть записаны так: 12, 13,14) если в id_p есть подобный id_p(который пришел) мы обновляем его и обновляем количество qwnty(оно записанно также 1,2,1)

Не понимаю как это сделать

Хорошо!
СКАЖИТЕ ПРОСТО, как в ячейке обновить информацию в таком формате17,18,42 чтобы не удалялась та, которая уже есть

(Отредактировано автором: 17 Февраля, 2015 - 09:00:41)

 
 Top
GoDr
Отправлено: 17 Февраля, 2015 - 19:34:04
Post Id



Посетитель


Покинул форум
Сообщений всего: 446
Дата рег-ции: Янв. 2015  
Откуда: Тамбов


Помог: 17 раз(а)




смотри в сторону REPLACE
Цитата:
Оператор REPLACE работает точно так же, как INSERT, за исключением того, что если старая запись в данной таблице имеет то же значение индекса UNIQUE или PRIMARY KEY, что и новая, то старая запись перед занесением новой будет удалена.

http://phpclub[dot]ru/mysql/doc/replace[dot]html


-----
Система управления веб-содержимым Lotos CMS
 
 Top
LIME
Отправлено: 18 Февраля, 2015 - 06:37:03
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




Посмотри в сторону
update on duplicate key
 
 Top
GoDr
Отправлено: 18 Февраля, 2015 - 10:20:39
Post Id



Посетитель


Покинул форум
Сообщений всего: 446
Дата рег-ции: Янв. 2015  
Откуда: Тамбов


Помог: 17 раз(а)




LIME, а в чём у них разница? между "REPLACE" и "update on duplicate key"


-----
Система управления веб-содержимым Lotos CMS
 
 Top
LIME
Отправлено: 18 Февраля, 2015 - 11:19:48
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




GoDr ...
странный от тебя вопрос
пусть это будет твоим домашним заданием
 
 Top
GoDr
Отправлено: 18 Февраля, 2015 - 12:52:35
Post Id



Посетитель


Покинул форум
Сообщений всего: 446
Дата рег-ции: Янв. 2015  
Откуда: Тамбов


Помог: 17 раз(а)




LIME, ну понятно что один вариант сначала удаляет дубликат, потом его вставляет. Второй же переписывает дубликат. Я имел в виду принципиальная разница, что эффективнее..

Может я не правильно рассуждаю но всё же..
Допустим мы имеем подготовленное выражение на вставку и вставляем несколько сотен записей. В первом варианте идёт постоянно механизм вставки, т.е. один раз подготовили и теперь только меняем данные и отсылаем их. Во втором варианте подготовленное выражение тоже на вставку, но в случае с дубликатом идёт уже UPDATE, т.е. я предполагаю уже другое подготовленное выражение...


PS
Хотя может я и перемудрил Язычок


-----
Система управления веб-содержимым Lotos CMS
 
 Top
LIME
Отправлено: 19 Февраля, 2015 - 08:56:17
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




GoDr разница в сохранении связей
внешние ключи
а может даже каскадное удаление
 
 Top
GoDr
Отправлено: 19 Февраля, 2015 - 15:31:21
Post Id



Посетитель


Покинул форум
Сообщений всего: 446
Дата рег-ции: Янв. 2015  
Откуда: Тамбов


Помог: 17 раз(а)




LIME, ну и что лучше в данной ситуации? Закатив глазки


-----
Система управления веб-содержимым Lotos CMS
 
 Top
LIME
Отправлено: 19 Февраля, 2015 - 15:35:46
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




Лучше не удалять записи потому-что на них могут быть ссылки
в других таблицах

(Отредактировано автором: 19 Февраля, 2015 - 15:38:28)

 
 Top
GoDr
Отправлено: 19 Февраля, 2015 - 15:56:36
Post Id



Посетитель


Покинул форум
Сообщений всего: 446
Дата рег-ции: Янв. 2015  
Откуда: Тамбов


Помог: 17 раз(а)




Радость


-----
Система управления веб-содержимым Lotos CMS
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB