Список форумов Шадринский форум -> Программирование -> PHP, PERL, HTML, CSS etc -> Kladr: dbf>mysql
Начать новую тему   Ответить на тему   вывод темы на печать

Kladr: dbf>mysql

Автор
Сообщение
DieSel
Заслуженный писатель


Пол: Пол:Муж.
Зарегистрирован: 16.12.2006
Сообщения: 1339
Откуда: Шадринск

Статус: Offline
СообщениеДобавлено: 2009.12.09 22:24.36
Ответить с цитатой
такая проблема: нужно базу данных Kladr сделать удобной для поиска и с конвертировать в mysql.
кто сталкивался, поделитесь опытом.
ссылки типа www.google.ru кидать не надо, перечитал уже много форумов и документации, ничего из этого мне не подходит...
Посмотреть профиль Отправить личное сообщение
Dio
Шаман-заводчанин


Пол: Пол:Муж.
Зарегистрирован: 25.11.2004
Сообщения: 29757


Статус: Offline
СообщениеДобавлено: 2009.12.09 22:33.38
Ответить с цитатой
Тупо в лоб из все dbf в csv. Ну а дальше, насколько фантазии хватит.
_________________
Йа - водоросль.
Посмотреть профиль Отправить личное сообщение
DieSel
Заслуженный писатель


Пол: Пол:Муж.
Зарегистрирован: 16.12.2006
Сообщения: 1339
Откуда: Шадринск

Статус: Offline
СообщениеДобавлено: 2009.12.09 22:36.02
Ответить с цитатой
С конвертить пол беды... структура данных в Kladr до жути тупая.. для быстрого поиска по бд не подходит...
_________________
Диагностика и ремонт авто. Ремонт РКПП.
Куплю Дизельное Топливо.
8-912-522-26-2семь
Посмотреть профиль Отправить личное сообщение
andy ice
Militärmagazinkatze


Пол: Пол:Муж.
Зарегистрирован: 25.11.2004
Сообщения: 23385


Статус: Offline
СообщениеДобавлено: 2009.12.09 22:38.11
Ответить с цитатой
добавь поля цифровые уникальные, выставь соответствие этим полям в остальных таблицах.
_________________
Ин дер гросен фамилие нихт клювен клац-клац Neutral
Посмотреть профиль Отправить личное сообщение Отправить e-mail ICQ Number
DieSel
Заслуженный писатель


Пол: Пол:Муж.
Зарегистрирован: 16.12.2006
Сообщения: 1339
Откуда: Шадринск

Статус: Offline
СообщениеДобавлено: 2009.12.09 22:50.02
Ответить с цитатой
используется 1 таблица. в ней есть поле Code. состоит из 13 знаков.(сс ррр ггг ппп аа)
сс-субъект
ррр район
ггг город
ппп населенный пункт
аа признак актуальности

проблема заключается в следующем:

субъект имеет id в моей базе 2 знака, соответственно в коде кроме первых двух и последних двух значений все нули. так зашифровано 90 субъектов, но из-за разной интерпретации названий субъектов получается 2 и более субъектов с одним id... вот от этих совпадений я и ищу лекарство.....
_________________
Диагностика и ремонт авто. Ремонт РКПП.
Куплю Дизельное Топливо.
8-912-522-26-2семь
Посмотреть профиль Отправить личное сообщение
andy ice
Militärmagazinkatze


Пол: Пол:Муж.
Зарегистрирован: 25.11.2004
Сообщения: 23385


Статус: Offline
СообщениеДобавлено: 2009.12.09 22:55.40
Ответить с цитатой
где используется? у тебя или в кладре? ничего не понял
_________________
Ин дер гросен фамилие нихт клювен клац-клац Neutral
Посмотреть профиль Отправить личное сообщение Отправить e-mail ICQ Number
DieSel
Заслуженный писатель


Пол: Пол:Муж.
Зарегистрирован: 16.12.2006
Сообщения: 1339
Откуда: Шадринск

Статус: Offline
СообщениеДобавлено: 2009.12.09 23:03.16
Ответить с цитатой
двузначный ид я использую...в kladr вместо ид используют 13-значный код.. он очень затрудняет поиск предков...
_________________
Диагностика и ремонт авто. Ремонт РКПП.
Куплю Дизельное Топливо.
8-912-522-26-2семь
Посмотреть профиль Отправить личное сообщение
Dio
Шаман-заводчанин


Пол: Пол:Муж.
Зарегистрирован: 25.11.2004
Сообщения: 29757


Статус: Offline
СообщениеДобавлено: 2009.12.09 23:05.34
Ответить с цитатой
http://www.taxi-office.ru/articles/kladr.php
_________________
Йа - водоросль.
Посмотреть профиль Отправить личное сообщение
DieSel
Заслуженный писатель


Пол: Пол:Муж.
Зарегистрирован: 16.12.2006
Сообщения: 1339
Откуда: Шадринск

Статус: Offline
СообщениеДобавлено: 2009.12.09 23:14.24
Ответить с цитатой
все конверторы сливают базу один к одному, а мне надо еще и структуру поменять Sad
к тому же все это реализовать на php..
как слить один к одному я разобрался.... но в такой базе одним запросом не вывести все города заданного субьекта....
_________________
Диагностика и ремонт авто. Ремонт РКПП.
Куплю Дизельное Топливо.
8-912-522-26-2семь
Посмотреть профиль Отправить личное сообщение
andy ice
Militärmagazinkatze


Пол: Пол:Муж.
Зарегистрирован: 25.11.2004
Сообщения: 23385


Статус: Offline
СообщениеДобавлено: 2009.12.09 23:17.50
Ответить с цитатой
почему не вывести? всё выводится

для ускорения работы конечного продукта можно ввести уникальные идентификаторы, если очень надо.
_________________
Ин дер гросен фамилие нихт клювен клац-клац Neutral
Посмотреть профиль Отправить личное сообщение Отправить e-mail ICQ Number
DieSel
Заслуженный писатель


Пол: Пол:Муж.
Зарегистрирован: 16.12.2006
Сообщения: 1339
Откуда: Шадринск

Статус: Offline
СообщениеДобавлено: 2009.12.09 23:21.31
Ответить с цитатой
ну ну... регуляркой выводятся? 13 значный код кроме регулярки не обработать ничем..
и это будеть все длиться секунд 10 минимум.. даже если проиндексировать поля меньше 1 секунды не получить результат.... а требуется скорость работы.. так как пишится это для ajax`a...
_________________
Диагностика и ремонт авто. Ремонт РКПП.
Куплю Дизельное Топливо.
8-912-522-26-2семь
Посмотреть профиль Отправить личное сообщение
Dio
Шаман-заводчанин


Пол: Пол:Муж.
Зарегистрирован: 25.11.2004
Сообщения: 29757


Статус: Offline
СообщениеДобавлено: 2009.12.09 23:26.17
Ответить с цитатой
DieSel писал(а):
но в такой базе одним запросом не вывести все города заданного субьекта

Да ну!
DieSel писал(а):
из-за разной интерпретации названий субъектов получается 2 и более субъектов с одним id

Пример можно?

Добавлено спустя 4 минуты 24 секунды:

Кстати, наверное, очень сильно поможет посмотреть структуру фоксовых индексных файлов.
_________________
Йа - водоросль.
Посмотреть профиль Отправить личное сообщение
DieSel
Заслуженный писатель


Пол: Пол:Муж.
Зарегистрирован: 16.12.2006
Сообщения: 1339
Откуда: Шадринск

Статус: Offline
СообщениеДобавлено: 2009.12.09 23:28.03
Ответить с цитатой
'78','Ленинград ','103',' ','1','190000','7800',' ','40000000000','0'
'78','Санкт-Петербург ','103',' ','1','190000','7800',' ','40000000000','0'
'86','Ханты-Мансийский ','101',' ','1',' ','8600',' ','71100000000','0'
'86','Ханты-Мансийский Автономный округ - Югра','101',' ','1',' ','8600',' ','71100000000','0'
'59','Пермская ','105',' ','1','614000','5900',' ','57000000000','0'
'59','Пермский ','104',' ','1',' ','5900',' ','57000000000','0'
и тд..
изменять и выбирать вручную из базы невозможно в базе более 800тыс элементов.
и впринципе базу трогать нельзя по тех заданию...

ну если кто сможет сделать это одним запросом, не выходя за рамки данного времени, покажите пример... может это я туплю
_________________
Диагностика и ремонт авто. Ремонт РКПП.
Куплю Дизельное Топливо.
8-912-522-26-2семь
Посмотреть профиль Отправить личное сообщение
andy ice
Militärmagazinkatze


Пол: Пол:Муж.
Зарегистрирован: 25.11.2004
Сообщения: 23385


Статус: Offline
СообщениеДобавлено: 2009.12.09 23:34.17
Ответить с цитатой
DieSel писал(а):
впринципе базу трогать нельзя по тех заданию
какую базу? можно более полно условия писать? формулируй условия и требования как можно полнее - нету здесь телепатов.

DieSel писал(а):
мне надо еще и структуру поменять
DieSel писал(а):
и впринципе базу трогать нельзя по тех заданию

ваще всё запутал

я не понимаю в чем проблема, например по городу найти все подчиненые элементы можно, используя right, left и прочие функции работы со строками. это если БД нельзя трогать.
если можно БД трогать, то вводишь ДВЕ колонки - ID и PARENT_ID, пронумеровываешь ID униками, и потом заполняешь PARENT_ID на основе CODE (так вроде поле называется). Это делается раз - при импорте из DBF
_________________
Ин дер гросен фамилие нихт клювен клац-клац Neutral
Посмотреть профиль Отправить личное сообщение Отправить e-mail ICQ Number
DieSel
Заслуженный писатель


Пол: Пол:Муж.
Зарегистрирован: 16.12.2006
Сообщения: 1339
Откуда: Шадринск

Статус: Offline
СообщениеДобавлено: 2009.12.09 23:49.58
Ответить с цитатой
хм...я думал вы знаете что есть база Классификатор адресов.. в конкретном случаи по РФ.. она храниться в bdf`е
http://www.gnivc.ru/Document.aspx?id=80


Цитата

если можно БД трогать, то вводишь ДВЕ колонки - ID и PARENT_ID, пронумеровываешь ID униками, и потом заполняешь PARENT_ID на основе CODE (так вроде поле называетс)

я это и пытался сделать, только получается что 1 потомок может иметь 2 предков...(может иметь одного).

Добавлено спустя 8 минут 55 секунд:

Извиняюсь, что всех потревожил... завтра по любому решу эту задачу...
Посмотреть профиль Отправить личное сообщение
andy ice
Militärmagazinkatze


Пол: Пол:Муж.
Зарегистрирован: 25.11.2004
Сообщения: 23385


Статус: Offline
СообщениеДобавлено: 2009.12.09 23:57.09
Ответить с цитатой
DieSel писал(а):
только получается что 1 потомок может иметь 2 предков

что-то у меня такого не было. кладр на другом компе импортирован, счас посмотреть не могу структуру. а вообще документацию читал?

Структура кодового обозначения в блоке "Код":
СС РРР ГГГ ППП УУУУ АА, где
СС – код субъекта Российской Федерации (региона), коды регионов представлены в Приложении 2 к Описанию классификатора адресов Российской Федерации (КЛАДР);
РРР – код района;
ГГГ – код города;
ППП – код населенного пункта;
УУУУ – код улицы;
АА – признак актуальности наименования адресного объекта.

Приложение 2
                                                                                               к описанию классификатора адресов
                                                                                                   Российской Федерации (КЛАДР)
КОДЫ И НАИМЕНОВАНИЯ СУБЪЕКТОВ РОССИЙСКОЙ ФЕДЕРАЦИИ
Код    Наименование  
01   Республика Адыгея (Адыгея)
02   Республика Башкортостан
03   Республика Бурятия

и тд
_________________
Ин дер гросен фамилие нихт клювен клац-клац Neutral
Посмотреть профиль Отправить личное сообщение Отправить e-mail ICQ Number
DieSel
Заслуженный писатель


Пол: Пол:Муж.
Зарегистрирован: 16.12.2006
Сообщения: 1339
Откуда: Шадринск

Статус: Offline
СообщениеДобавлено: 2009.12.10 08:38.34
Ответить с цитатой
Документацию изучил Smile
Кладр скачан самый новый... там шаманство с кодом актуальности...
я уже привадил примеры совпадений...
_________________
Диагностика и ремонт авто. Ремонт РКПП.
Куплю Дизельное Топливо.
8-912-522-26-2семь
Посмотреть профиль Отправить личное сообщение
andy ice
Militärmagazinkatze


Пол: Пол:Муж.
Зарегистрирован: 25.11.2004
Сообщения: 23385


Статус: Offline
СообщениеДобавлено: 2009.12.10 08:45.06
Ответить с цитатой
пока ты не скажешь, что у тебя есть и что тебе именно надо сделать, до тех пор так и будем гадать о решении непонятно чего

Добавлено спустя 2 минуты 17 секунд:

примеры, тобой приведеные, уходят прямиком в Приложение №2:

DieSel писал(а):
'78','Ленинград ','103',' ','1','190000','7800',' ','40000000000','0'
'78','Санкт-Петербург ','103',' ','1','190000','7800',' ','40000000000','0'
'86','Ханты-Мансийский ','101',' ','1',' ','8600',' ','71100000000','0'
'86','Ханты-Мансийский Автономный округ - Югра','101',' ','1',' ','8600',' ','71100000000','0'
'59','Пермская ','105',' ','1','614000','5900',' ','57000000000','0'
'59','Пермский ','104',' ','1',' ','5900',' ','57000000000','0'


78   Г. Санкт-Петербург
86   Ханты-Мансийский автономный округ
59   Пермская область

_________________
Ин дер гросен фамилие нихт клювен клац-клац Neutral
Посмотреть профиль Отправить личное сообщение Отправить e-mail ICQ Number
Страница 1 из 1
Начать новую тему   Ответить на тему   вывод темы на печать
Показать сообщения:   
Список форумов Шадринский форум -> Программирование -> PHP, PERL, HTML, CSS etc -> Kladr: dbf>mysql

 
Перейти: 
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете вкладывать файлы
Вы можете скачивать файлы