Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как предотвратить вставку дублирующихся данных в БД(php+mysql)
|
|||
|---|---|---|---|
|
#18+
Приветствую ! Пытаюсь делать парсер на curl + php . И подумал , что не плохо бы реализовать способ ,который бы не позволил вставить данные в бд (которые там уже есть). Вобщем , есть таблица : id|title|description|link|cost-uah|cost-usd|data(default current timestamp).В поле link - ссылка на товар , хочу назначить ему атрибут UNIQUE .Как только curl напарсил данные , они записываются в csv-файл , он построчно читается и выполняются запросы к БД. Предлагаю такую последовательность действий : (int) $numStr - кол-во строк в файле (int) $errCount - сколько раз сработал exception 1. Читаем построчно файл и на каждой итерации подставляем в строку запроса новую порцию данных 2.Создать обработчик исключений , который бы срабатывал на ошибку вставки в бд (причем код ошибки должен говорить о вставке не уникального значения в поле link) $errCount++; 3. После того как перебрали все данные из файла - делаем проверку : Если $numStr == $errCount - значит ничего небыло вставлено (уведомить об этом пользователя) Иначе , вывести сообщение : Работа окончена! Всего запросов ($numStr) . Не удалось выполнить ($errCount). П.С. Правильно ли я рассуждаю ? Может ли скрипт продолжить дальнейшую работу после вызова exception ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2013, 08:58 |
|
||
|
Как предотвратить вставку дублирующихся данных в БД(php+mysql)
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2013, 10:18 |
|
||
|
Как предотвратить вставку дублирующихся данных в БД(php+mysql)
|
|||
|---|---|---|---|
|
#18+
Как предотвратить вставку дублирующихся данных в БД INSERT IGNORE? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2013, 11:31 |
|
||
|
|

start [/forum/topic.php?fid=23&fpage=112&tid=1463814]: |
0ms |
get settings: |
7ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
32ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
2ms |
| others: | 224ms |
| total: | 344ms |

| 0 / 0 |
