Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MI_UG_7.pdf
Скачиваний:
174
Добавлен:
13.02.2015
Размер:
8.59 Mб
Скачать

Глава 6: Доступ к удаленным базам данных

Необходимые условия для обработки пространственных данных в СУБД

Для того, чтобы в MapInfo использовать удаленные таблицы наиболее эффективным образом, Вам придется подготовить их для хранения координат или более сложных пространственных данных и лишь после этого использовать для обмена и получения этих данных. Вы также сможете после этого геокодировать удаленные таблицы и присваивать координаты каждой записи таблицы.

Существует четыре условия, необходимых для сохранения и выборки географических точек

втаблице удаленной СУБД:

Значения координат этих точек должны быть сохранены в колонках таблицы в виде чисел или в приспособленных для хранения пространственной информации колонках базы данных (если база данных допускает такое хранение, например, SpatialWare, Oracle Spatial). Смотрите раздел Шаг 1 – Сохранение значений координат в удаленной таблице на странице 185, где описаны пошаговые действия.

Колонка, содержащая пространственный индекс, может дополнительно использоваться для повышения производительности выполнения запросов к простран-

ственным данным. Смотрите раздел Шаг 2 – Создание колонки пространственного индекса на странице 190, где описаны пошаговые действия.

Необходимо создание специальной таблицы удаленной СУБД, называемой

MapInfo_MapCatalog (MapInfo Professional создает каталог автоматически при использовании EasyLoader.) В каждой базе данных может быть только один такой каталог. Смотрите раздел Шаг 3 – Создание Каталога Карт MapInfo_MapCatalog

на странице 190, где описаны пошаговые действия.

Необходимо описать таблицы с геоинформацией в каталоге Карт MapInfo командой ПРИСОЕДИНИТЬ ГЕОИНФОРМАЦИЮ для таблиц, загружаемых не программой EasyLoader.) Смотрите раздел Шаг 4 – Присоединение геоинформации к удаленной базе данных на странице 193, где описаны пошаговые действия.

Шаг 1 – Сохранение значений координат в удаленной таблице

Значения координат точек должны храниться в колонках удаленной таблицы численного типа. Это задача создания данных и она может быть выполнена в любой момент о время сеанса работы. Возможны следующие способы выполнения:

Данные могут уже существовать.

Используйте программу MapInfo EasyLoader для загрузки таблицы MapInfo в любую базу данных, поддерживаемую MapInfo.

MapInfo Professional 7.5 Руководство пользователя (Сокращенное)

185

Необходимые условия для обработки пространственных данных в СУБД

Присоедините к удаленной таблице геоинформацию для ее геокодирования.

Смотрите раздел Присоединение геоинформации к таблице СУБД на странице 194.

Добавьте значения координат к таблице MapInfo, экспортируйте ее в текстовый файл и импортируйте ее в Вашу базу данных.

Программа EasyLoader

Утилита загрузки данных MapInfo – MapInfo EasyLoader загружает TAB-файлы MapInfo в таблицы баз данных. Она может работать с данными MapInfo отдельно от MapInfo, как приложение-клиент базы данных, через установленное подключение к базе данных. EasyLoader теперь поддерживает все базы данных, с которыми работает и сама программа

MapInfo.

EasyLoader работает под Windows 98, Windows NT, Windows 2000, Windows XP Professional

и Windows XP Home и обеспечивает удаленное подключение к следующим Системам Управления Базами Данных:

INFORMIX – Dynamic Server (IDS) с SpatialWare DataBlade (номер версии драйвера IUS 2.8 или выше);

Oracle Spatial с номером версии 8.1.6 или выше;

SpatialWare 4.6 для SQL Server.

Возможности программы EasyLoader были расширены и теперь обеспечивают работу со следующими схемами хранения пространственной информации в стандартных базах данных:

XY таблицы (Oracle, Informix, Access, SQL Server);

MICODE таблицы (Oracle, Informix, Access, SQL Server).

Эти схемы обеспечивают хранение информации о точках в стандартных базах данных.

EasyLoader устанавливается в директорию \TOOLS программы MapInfo Professional и может быть запущена из Каталога программ:

1.Выполните команды меню ПРОГРАММЫ > КАТАЛОГ ПРОГРАММ. Появится диалог "Каталог программ".

2.Отметьте флажками ЗАГРУЗИТЬ и/или АВТОЗАГРУЗКА рядом с пунктом EASYLOAD- ER в списке имеющихся программ.

3.Нажмите OK. Программа EasyLoader появится в меню ПРОГРАММЫ.

4.Выполните команды меню ПРОГРАММЫ > EASYLOADER.

После запуска программы MapInfo EasyLoader появится основной диалог этой программы. Интерфейс программы позволяет подключаться к серверу через ODBC или к серверу Oracle Spatial и выбирать таблицы, которые Вам необходимо загрузить в эти серверы баз данных.

186

MapInfo Professional 7.5

Глава 6: Доступ к удаленным базам данных

При подключении к серверу через ODBC необходимо будет указать имя источника данных (смотрите раздел Создание новых источников данных (ODBC) на странице 200). Для подключения к серверу Oracle Spatial требуется установленное клиентское программное обеспечение Oracle.

Кнопка ИСХОДНЫЕ ТАБЛИЦЫ становится активной после подключения к серверу. С её помощью можно вызвать диалог выбора таблиц MapInfo, которые нужно загрузить на сервер. Выбранные таблицы будут перечислены в списке таблиц. Для изменения состава списка нужно пользоваться кнопкой ИСХОДНЫЕ ТАБЛИЦЫ.

Кнопка ЗАГРУЗИТЬ становится активной, после того как таблицы MapInfo были выбраны. Убедитесь, что нужные Вам дополнительные настройки загрузки установлены, до того как нажата кнопка ЗАГРУЗИТЬ.

MapInfo Professional 7.5 Руководство пользователя (Сокращенное)

187

Необходимые условия для обработки пространственных данных в СУБД

Возможности настройки описаны ниже:

ДОБАВИТЬ К СУЩЕСТВУЮЩЕЙ ТАБЛИЦЕ – таблица MapInfo будет добавлена к таб-

лице на сервере, если такая таблица существует и структура двух таблиц совпадает. Во всех остальных случаях Вы получите сообщение об ошибке и таблица загружена не будет.

ЗАМЕНИТЬ СУЩЕСТВУЮЩУЮ ТАБЛИЦУ – таблица на сервере, имеющая такое же имя, будет сначала удалена (если такая таблица существует), а затем будет создана новая таблица, совпадающая по структуре и данным с загружаемой таблицей

MapInfo.

СОЗДАТЬ НОВУЮ ТАБЛИЦУ – все перечисленные в списке таблицы MapInfo будут добавлены в единственную таблицу на сервере. Таблица на сервере должна быть видна в списке обнаруженных на сервере таблиц. При этом предполагается, что будут использоваться таблицы с одинаковой структурой и стилями оформления символов.

Например, вместо создания новой таблицы для каждого слоя улиц, установите флажок ДОБАВИТЬ ВСЕ В ОДНУ ТАБЛИЦУ, и будет создана единственная таблица. После этого все таблицы MapInfo будут добавлены к созданной таблице.

Внимание:Возможно, что некоторые таблицы не могут быть присоединены, например, если у них разная структура.

Когда используется ДОБАВИТЬ К ТАБЛИЦЕ, то таблицы будут присоеденены к существующей на сервере таблице.

ЗАМЕНИТЬОЗДАТЬ – таблица с таким именем на сервере, если она существует, будет сначала удалена, затем будет создана новая таблица со структурой, совпадающей со структурой загружаемой таблицы MapInfo.

Внимание:Все таблицы должны иметь одну проекцию.

188

MapInfo Professional 7.5

Глава 6: Доступ к удаленным базам данных

ПРЕДОСТАВИТЬ ОБЩИЙ ДОСТУП – установить для таблицы на сервере параметр разрешения доступа к таблице в режим Разрешен общий доступ.

МОНОПОЛЬНОЕ ИСПОЛЬЗОВАНИЕ ТАБЛИЦЫ – с помощью этого флажка можно су-

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

Загрузчик проверяет текущее максимальное значение колонки первичного ключа (prinx) после каждого подверждения на запись (commit) для того, чтобы определить любые изменения, которые могут быть внесены другими процессами. При запуске в этом режиме такая проверка отключается, что может сократить продолжительность выполнения операции с очень большими таблицами.

СОЗДАТЬ УНИКАЛЬНЫЙ ИНДЕКС – создается уникальный первичный индекс для столбца sw_member в случае использования SpatialWare или для столбца mi_prinx в случае использования Oracle Spatial. Столбец mi_prinx будет содержать созданный при загрузке порядковый номер записи.

СОЗДАТЬ ПРОСТРАНСТВЕННЫЙ ИНДЕКС – для таблиц SpatialWare такой индекс соз-

дается по столбцу с геометрией и имеет имя hg<имя_таблицы>.ind. После выполнения команды по созданию этого индекса типа "rtree" обновляется статистика всей базы данных SpatialWare.

Для таблиц Oracle Spatial индекс, которому присваивается имя <имя_таблицы>_SX, создается по столбцу с данными, содержащему геометрию. Уровень вложенности созданного индекса вычисляется с помощью функции

SDO_TUNE.ESTIMATE_TILING_LEVEL.

Для таблиц с количеством записей меньше 7500 уровень вложенности созданного индекса ограничен значением 8. После построения таблицы индекса выполняется команда ANALIZE для вновь построенной таблицы.

Вы можете построить пространственный индекс в соответствии с Вашими требованиями. Если Вы планируете так поступить, сбросьте флажок, и Вы сэкономите время при загрузке.

Более подробные сведения о программе EasyLoader можно в прочитать в файле-справке

"EasyLoader.HLP".

MapInfo Professional 7.5 Руководство пользователя (Сокращенное)

189

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]