Saturday, November 8, 2014

Импорт КЛАДР в базу данных SQLITE

Конвертация КЛАДР в формат sqlite.
  1. Скачиваем кладр с официального сайта
    wget www.gnivc.ru/html/gnivcsoft/KLADR/Base.7z
  2. Устанавливаем архиватор 7z
    sudo yum install p7zip
  3. Распаковываем архив
    7za e Base.7z
  4. Устанавливаем sqlite
    sudo yum install sqlite
  5. Устанавливаем sqlite3-dbf
    sudo yum install sqlite3-dbf
  6. Запускаем sqlite3
    sqlite3 my_kladr.db
  7. В sqlite загружаем модуль libspatialite
    .load libspatialite.so.2
  8. Импорт данных из КЛАДР в sqlite
    CREATE VIRTUAL TABLE virt_street_tbl USING VirtualDbf('/home/developer/kladr/STREET.DBF', 'CP866');
    CREATE VIRTUAL TABLE virt_socrbase_tbl USING VirtualDbf('/home/developer/kladr/SOCRBASE.DBF', 'CP866');
    CREATE VIRTUAL TABLE virt_kladr_tbl USING VirtualDbf('/home/developer/kladr/KLADR.DBF', 'CP866');
    CREATE VIRTUAL TABLE virt_flat_tbl USING VirtualDbf('/home/developer/kladr/FLAT.DBF', 'CP866');
    CREATE VIRTUAL TABLE virt_doma_tbl USING VirtualDbf('/home/developer/kladr/DOMA.DBF', 'CP866');
    CREATE VIRTUAL TABLE virt_altnames_tbl USING VirtualDbf('/home/developer/kladr/ALTNAMES.DBF', 'CP866');

    create table street_tbl as select * from virt_street_tbl;
    create table socrbase_tbl as select * from virt_socrbase_tbl;
    create table kladr_tbl as select * from virt_kladr_tbl;
    create table flat_tbl as select * from virt_flat_tbl;
    create table doma_tbl as select * from virt_doma_tbl;
    create table altnames_tbl as select * from virt_altnames_tbl;

    drop table virt_street_tbl;
    drop table virt_socrbase_tbl;
    drop table virt_kladr_tbl;
    drop table virt_flat_tbl;
    drop table virt_doma_tbl;
    drop table virt_altnames_tbl;
  9. Выходим из sqlite
    .exit
Резлуьтат: файл my_kladr.db содержит КЛАДР в формате sqlite.

No comments:

Post a Comment