Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
06.11.2018, 13:28
|
|||
|---|---|---|---|
|
|||
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
Здравия Такая проблема. Имеется большое число таблиц. Таблицы разные с разными данными и разными ключами. Однако в каждой из них есть специальное ключевое поле "_Fld", значение которого нужно заменить Генерим на каждую таблицу скрипт такого рода: UPDATE _table SET _Fld = 758283 WHERE _Fld = 658277 Иногда происходит дублирование ключевых полей. Такие ситуации нас не интересуют и можно хоть игнорировать, хоть перезатирать. Не важно. Главное, чтобы UPDATE не падал, а продолжал дальше. Как это можно оптимально сделать ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 13:38
|
|||
|---|---|---|---|
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
SeiOkami, зачем же вы сделали индекс с полем _Fld уникальным, если этот индекс на самом деле не должен быть уникальным? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 13:40
|
|||
|---|---|---|---|
|
|||
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
SeiOkami, merge ignore_dup_key ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 13:45
|
|||
|---|---|---|---|
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
Владислав Колосовignore_dup_keyПри update? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 13:49
|
|||
|---|---|---|---|
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
SeiOkamiГлавное, чтобы UPDATE не падал Код: sql 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 13:54
|
|||
|---|---|---|---|
|
|||
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
invm, таблицы разные и с разным составом. Это поле не единственный ключ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 14:12
|
|||
|---|---|---|---|
|
|||
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
invm, да, слона не приметил, как обычно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 14:21
|
|||
|---|---|---|---|
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
SeiOkamiтаблицы разные и с разным составом. Это поле не единственный ключ.И как это мешает применить показанный способ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 14:42
|
|||
|---|---|---|---|
|
|||
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
invm, данный скрипт не заменит ни одной записи в таблице, если найдёт хотя бы одну строчку с указанным полем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 14:47
|
|||
|---|---|---|---|
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
SeiOkamiданный скрипт не заменит ни одной записи в таблице, если найдёт хотя бы одну строчку с указанным полем.Данный скрипт меняет только одну строку таблицы, если не найдена одна определенная строка в той же таблице. Это следуе из того, что _Fld уникально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 14:49
|
|||
|---|---|---|---|
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
SeiOkamiтаблицы разные и с разным составом. Это поле не единственный ключ. Вы что на выходе то получить-то хотите? Не изменять данные, которые приводят к нарушению уникальности (not exists из примера выше) или игнорировать саму уникальность (иметь неуникальные записи) в уникальном ключе? Если первое, то либо not exists либо обработка ошибок Если второе, то только удаление объектов поддержки уникальности (индексы/констреинты) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 14:50
|
|||
|---|---|---|---|
|
|||
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
invm, в таблице может быть сколько угодно строк. С разными значениями ключевых полей. Поменять нужно у всех строк одно поле ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 14:53
|
|||
|---|---|---|---|
|
|||
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
SeiOkamiinvm, в таблице может быть сколько угодно строк. С разными значениями ключевых полей. Поменять нужно у всех строк одно полеДа тут программист нужен, чтобы написать для каждой таблицы правильный запрос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 14:57
|
|||
|---|---|---|---|
|
|||
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
Гавриленко Сергей Алексеевич, Задача примитивная. Тупо поменять значение в колонке. Но всё рушит то, что UPDATE не умеет продолжать выполнение при неудачах ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 14:59
|
|||
|---|---|---|---|
|
|||
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
SeiOkami, Иногда происходит дублирование ключевых полей. В какой ситуации? Обновляется ключ в старой таблице, в данных, которыми обновляете, повторяется значение ключевого поля или что? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 15:01
|
|||
|---|---|---|---|
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
SeiOkamiв таблице может быть сколько угодно строк. С разными значениями ключевых полей. Поменять нужно у всех строк одно полеПродемонстрированный вами скрипт меняет только одну строку в одной таблице. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 15:05
|
|||
|---|---|---|---|
|
|||
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
invm, Почему же? Скрипт меняет ВСЕ строки, у которых _Fld = 658277 UPDATE _table SET _Fld = 758283 WHERE _Fld = 658277 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 15:06
|
|||
|---|---|---|---|
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
SeiOkamiinvm, Почему же? Скрипт меняет ВСЕ строки, у которых _Fld = 658277 UPDATE _table SET _Fld = 758283 WHERE _Fld = 658277 авторИногда происходит дублирование ключевых полей. У вас понятие дублирования отличное от общепринятого? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 15:10
|
|||
|---|---|---|---|
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
SeiOkamiОднако в каждой из них есть специальное ключевое поле "_Fld"SeiOkamiСкрипт меняет ВСЕ строки, у которых _Fld = 658277Противоречия не видите? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 15:11
|
|||
|---|---|---|---|
|
|||
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
TaPaK, Ещё раз. В таблице есть поля. Среди ключевых есть моё поле. Я его меняю. Случаются ситуации, когда это приводит к дублированию. Например: Поле1 / Поле2 / Поле3 1 / 1 / 1 2 / 2 / 1 2 / 1 / 1 Поле1 и Поле2 - ключевые. Если поменять значение Поле1 с "2" на "1", что приведет к дублированию при изменении жирной строки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 15:14
|
|||
|---|---|---|---|
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
SeiOkami, Код: sql 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 16:14
|
|||
|---|---|---|---|
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
Код: sql 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 16:17
|
|||
|---|---|---|---|
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
iap Код: sql 1. 2. 3. Без ID Код: sql 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
06.11.2018, 16:21
|
|||
|---|---|---|---|
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
Так лучше: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. Если в полях могут быть NULLы, то надо слегка доработать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.11.2018, 05:57
|
|||
|---|---|---|---|
Замена в таблице значения колонки с игнорированием ошибки дублирования ключевых полей. |
|||
|
#18+
SeiOkami Генерим на каждую таблицу скрипт такого рода: .... Так поменяй порядок сгенерированных запросов, чтобы не было дублирования. Например: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=46&mobile=1&tid=1688822]: |
0ms |
get settings: |
10ms |
get forum list: |
23ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
56ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 283ms |
| total: | 443ms |

| 0 / 0 |
