powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Что делать с переносом данных
8 сообщений из 8, страница 1 из 1
Что делать с переносом данных
    #35499531
vitaliy14
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть уродская таблица (вернее их целая куча) уже с актуальными данными без 1-3 НФ.

Заказчик
---------
ID
Имя организации
Город
Субъект федерации
Ведомство
.......

Есть новая структура этой таблицы

Заказчик
----------
ID
Имя организации
ID Города
ID Субъекта федерации
ID Ведомства

И соответственно эти справочники

Город
----------
ID Города
Город


Ведомство
----------
ID Ведомства
Ведомство

Теперь у меня морока с написанием скриптов по импорту данных? Загвоздка в том, что я не знаю: что могли написать пользователи .. например - "Ульяновская область" или "Ульяновская обл-ть"?!
Какой критерий использовать like или полнотекстовый поиск для исключения ошибок и потерь данных?
...
Рейтинг: 0 / 0
Что делать с переносом данных
    #35499952
Кифирчик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как-то мучался с подобным...
если работа разовая, и база не очень большая, то:
открываем базу удобной тузлой... сортируем/группируем по исправляемому параметру...
пролистываем... смотрим что разное... либо Ctrl+V, либо заменой (UPDATE...)...
один день - и список челов в 50тыс был приведён в нормальный вид, 2 колонки правилось...процентов 20% было не корректно

можно и "алгоритм" придумать... но всёравно надо будет ручками чё-нить да править...
если задача решается регулярно... то надо делать "список замены"
"Тверская обл." -> "Тверская область"
" Тверская обл-ть" -> "Тверская область"
"Тверская об" -> "Тверская область"
"Тверская обл" -> "Тверская область"

и по мере работы с программой дополнять его... он конечно будет большой, и алгоритм будет долго работать, но это всёравно не ручками...
а после каждого импорта - группировать и просматривать глазками список на странные записи... когда листаешь... в глаза бросается выпадающие из общего строки...

как вариант, обращаться к соответствующему справочнику базы В КОТОРУЮ это импортируется... и если ест новый элемент в пришедшем (и прошедшим обработку) списке, то смотрим что с ним делать
...
Рейтинг: 0 / 0
Что делать с переносом данных
    #35500352
ЮВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vitaliy14Какой критерий использовать like или полнотекстовый поиск для исключения ошибок и потерь данных?

Можно попробовать такой вариант (если все названия начинаются с правильного наименования области).
1 Создаете из исходной таблицы временную, строки которой cодержат первый символ названия области. Смотрите, есть дубликаты строк? Наверняка есть.

2 Повторяете шаг 1 с двумя (тремя, четырмя...) первыми символами названия области исходной таблицы, пока временная таблица не будет иметь дубликатов, например,
Арх
Бел
...
Тве
Уль
Яро

3 Во временной таблице для каждой области заносите правильное название или ставите ID из справочника областей.

4 В исходной таблице все строки, первые два (три, четыре...) символа которой совпадают со строкой временной таблицы, заменяете на правильные значения из неё (или напрямую из справочника).

5 В полученной исходной таблице удаляете дубликаты названий.
...
Рейтинг: 0 / 0
Что делать с переносом данных
    #35500528
vitaliy14
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кифирчик

Спасибо вам за ответ. Но к сожалению , я неправильно сообщил , актуальные данные секретны и заказчик их не даст! Имеются только данные забитые тестировщиками и мне прийдется смоделировать ситуацию, а не реально ее разрешить с реальными данными:)

зы В результате я должен получить ХП которыми администратор заказчика правильно конвертирует данные. Вот такая засада :(
...
Рейтинг: 0 / 0
Что делать с переносом данных
    #35500582
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vitaliy14 wrote:
> "Ульяновская область" или "Ульяновская обл-ть"?!
> Какой критерий использовать like или полнотекстовый поиск для исключения
> ошибок и потерь данных?

Как правило, в таких случаях нужно проанализировать данные, применить
несколько критериев поиска одинаковых данных, а потом еще и
доправить то, что не удалось выправить автоматически, руками.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Что делать с переносом данных
    #35500584
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vitaliy14 wrote:

> актуальные данные секретны и заказчик их не даст! Имеются только данные
> забитые тестировщиками и мне прийдется смоделировать ситуацию, а не
> реально ее разрешить с реальными данными:)
>
> зы В результате я должен получить ХП которыми администратор заказчика
> правильно конвертирует данные. Вот такая засада :(

Тогда пошли таких заказчиков подальше. Без шуток.
БДА, который не имеет доступ к данным, не может сделать НИЧЕГО.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Что делать с переносом данных
    #35500790
RodionAT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сделайте идентификацию по нескольким первым символам (8-10-15). Но вручную править данные юзерам всеравно придется. Значит придется делать процедуру корректировки ИД новых таблиц.
...
Рейтинг: 0 / 0
Что делать с переносом данных
    #35500924
Bely
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vitaliy14Теперь у меня морока с написанием скриптов по импорту данных? Загвоздка в том, что я не знаю: что могли написать пользователи .. например - "Ульяновская область" или "Ульяновская обл-ть"?!
Какой критерий использовать like или полнотекстовый поиск для исключения ошибок и потерь данных?А вы посмотрите все что навводили пользователи и потом решите что с этим делать.

Код: plaintext
1.
2.
SELECT "Город" , count(*) as CNT
FROM "Заказчик"
GROUP BY "Город"
итп.

как посмотрите на весь зоопарк, сразу наступит просветление.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Что делать с переносом данных
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]