OberonCore
https://forum.oberoncore.ru/

Подключить sql-файл к ББ
https://forum.oberoncore.ru/viewtopic.php?f=5&t=4365
Страница 1 из 1

Автор:  ddn1 [ Воскресенье, 26 Май, 2013 22:50 ]
Заголовок сообщения:  Подключить sql-файл к ББ

У меня есть sql-файл, и мне нужно получить его содержимое. Можно ли это сделать средствами ББ? Требуется ли для этого .NET?
Библиотеки Sql и MySql у меня есть, но они не работают даже на встроенных примерах.

Автор:  Пётр Кушнир [ Воскресенье, 26 Май, 2013 23:19 ]
Заголовок сообщения:  Re: Подключить sql-файл к ББ

Знаете такую шутку, типа "Представьте, что у вас есть всемогущая волшебная палочка, но она требует грамотно проработанного тех.задания..."

Автор:  ddn1 [ Воскресенье, 26 Май, 2013 23:41 ]
Заголовок сообщения:  Re: Подключить sql-файл к ББ

То есть невозможно.

Автор:  Иван Кузьмицкий [ Воскресенье, 26 Май, 2013 23:49 ]
Заголовок сообщения:  Re: Подключить sql-файл к ББ

Непонятно, что нужно. Уточните вопрос, пожалуйста. Вам надо разобрать структуру SQL-запроса или требуется его результат?

Автор:  Александр Ильин [ Воскресенье, 26 Май, 2013 23:52 ]
Заголовок сообщения:  Re: Подключить sql-файл к ББ

ddn1 писал(а):
У меня есть sql-файл, и мне нужно получить его содержимое. Можно ли это сделать средствами ББ?
Если имеется в виду простой текстовый файл, содержащий текст sql-запроса, то содержимое такого файла вполне можно получить средствами ББ.

Автор:  ddn1 [ Понедельник, 27 Май, 2013 00:01 ]
Заголовок сообщения:  Re: Подключить sql-файл к ББ

Нет, это не запрос, а сама база данных, файл с расширением sql.
Конкретно, вот этот: http://webguruz.ru/wp-content/uploads/boundaries1.zip
Мне нужно получить его содержимое в удобоваримой форме, а потом обработать. Существующий софт платный или требует установки .NET-2 и прочих троянов.

Автор:  Александр Ильин [ Понедельник, 27 Май, 2013 00:10 ]
Заголовок сообщения:  Re: Подключить sql-файл к ББ

ddn1 писал(а):
Нет, это не запрос, а сама база данных, файл с расширением sql.
Конкретно, вот этот: http://webguruz.ru/wp-content/uploads/boundaries1.zip
Мне нужно получить его содержимое в удобоваримой форме, а потом обработать. Существующий софт платный или требует установки .NET-2 и прочих троянов.
Ну, дык а при чём тут расширение файла? Надо знать, какой СУБД он создан. SQLite? MS SQL? Pervasive?

У вас, судя по содержимому, MySQL. Устанавливаете, соответственно, MySQL (бесплатно), дальше через ODBC работаете из ББ. Возможно, придётся отдельно доустановить коннектор: http://dev.mysql.com/downloads/connector/odbc/5.1.html

Кто тут у нас на ODBC собаку съел? Подскажите человеку, что ли. : )

Автор:  ddn1 [ Понедельник, 27 Май, 2013 00:13 ]
Заголовок сообщения:  Re: Подключить sql-файл к ББ

А по содержимому файла это узнать разве невозможно? Как же люди пользуются этими базами? Софт должен определять тип сам.
Ссылку на файл взял отсюда: http://webguruz.ru/web-developer/google ... es-border/
Ничего про его тип СУБД там не сказано.


MySQL требует NET-2. Как-то я опасаюсь его ставить.

Автор:  Александр Ильин [ Понедельник, 27 Май, 2013 00:18 ]
Заголовок сообщения:  Re: Подключить sql-файл к ББ

ddn1 писал(а):
А по содержимому файла это узнать разве невозможно? Как же люди пользуются этими базами? Софт должен определять тип сам.
Он и определит сам, если вы его установите сперва. А вот что именно вам установить - mysql или что иное - это уж вы сами должны определить.
ddn1 писал(а):
Ссылку на файл взял отсюда: http://webguruz.ru/web-developer/google ... es-border/
Ничего про его тип СУБД там не сказано.
Так уж и не сказано? Цитирую: "Значит имеется mysql база полигонов стран..."
ddn1 писал(а):
MySQL требует NET-2. Как-то я опасаюсь его ставить.
Не судьба, значит.

Вообще, MySQL кросплатформенный, вроде. Поищите, может быть есть версия без .NET.

Автор:  ddn1 [ Понедельник, 27 Май, 2013 00:20 ]
Заголовок сообщения:  Re: Подключить sql-файл к ББ

А без MySQL никак нельзя ее вскрыть, проприетарный секретный формат данных?

Автор:  Александр Ильин [ Понедельник, 27 Май, 2013 00:22 ]
Заголовок сообщения:  Re: Подключить sql-файл к ББ

ddn1 писал(а):
А без MySQL никак нельзя ее вскрыть, проприетарный секретный формат данных?
Да что вы! Полный опен-сорс! Смотрите исходники MySQL, там всё написано, никаких секретов! : )))

Автор:  Иван Кузьмицкий [ Понедельник, 27 Май, 2013 00:52 ]
Заголовок сообщения:  Re: Подключить sql-файл к ББ

У меня установлен MySQL 5.1.51 Community, бесплатный, скачанный с официального сайта. Кроме этого, для администрирования сервера я использую SQLYog Community Edition, с его помощью я успешно загрузил ваш SQL-дамп в базу данных. Да, там какие-то табличные данные по разным странам, плюс поле типа geometry - очевидно, та самая геометрия.

Конечно, к этой базе можно теперь подключиться из ББ (хоть через ODBC, хоть напрямую) и обрабатывать данные как угодно.

Что касается пространственной информации в поле geometry, напрямую её вытащить не получится (поправьте, если я ошибаюсь), вместо этого надо использовать особые пространственные операторы в SQL-запросе.

Автор:  ddn1 [ Понедельник, 27 Май, 2013 01:15 ]
Заголовок сообщения:  Re: Подключить sql-файл к ББ

Иван Кузьмицкий писал(а):
Что касается пространственной информации в поле geometry, напрямую её вытащить не получится (поправьте, если я ошибаюсь), вместо этого надо использовать особые пространственные операторы в SQL-запросе.

Блин, и тут все зашифровано! И ведь негде узнать, как оттуда вырвать эти данные.
Я когда бинарник базы смотрел, тоже обратил внимание на это последнее поле в списке, кроме него больше негде находится списку вершин ломаной (граница страны). Я уже подумал было, что это дезинформация, и там на самом деле просто бинарный рисунок хранится, флаг государства.

Похоже эта информация (географические координаты границ) засекречена и в открытом доступе ее не найдешь.

Автор:  Александр Ильин [ Понедельник, 27 Май, 2013 01:38 ]
Заголовок сообщения:  Re: Подключить sql-файл к ББ

ddn1 писал(а):
Похоже эта информация (географические координаты границ) засекречена и в открытом доступе ее не найдешь.
Это всё равно, как если бы фирма засекретила свой юридический адрес и контактные телефоны.

Автор:  ddn1 [ Понедельник, 27 Май, 2013 01:48 ]
Заголовок сообщения:  Re: Подключить sql-файл к ББ

Александр Ильин писал(а):
Это всё равно, как если бы фирма засекретила свой юридический адрес и контактные телефоны.
Так информацию предоставляют только на картинках (GoogleMap), чтобы обрабатывать было сложно. Цифры не дают.

Впрочем, я по ссылкам нашел описание кодировки полигонов: https://developers.google.com/maps/docu ... ealgorithm
Похоже оно вообще не связано с sql-запросами. Значит, по сути, прога MySQL здесь не нужна, хотя надо еще разобраться.

.................................

Впрочем, и это лишнее. Там по ссылке можно найти раскодированный sql-формат в файле:
http://blog.newsplore.com/wp-content/up ... b_dump.zip (4.1 МБ)
Теперь я верю, что он не агент зог. Точность координат долготы 2*Pi*6.4E8/360/1E6 = 11 см и широты = 22 см.

ЗЫ: Тему можно закрывать. Или переименовать.

Автор:  Роман М. [ Среда, 12 Ноябрь, 2014 01:24 ]
Заголовок сообщения:  Re: Подключить sql-файл к ББ

Жаль, что тема несвежая, но всё же отвечу. :)
ddn1 писал(а):
У меня есть sql-файл, и мне нужно получить его содержимое. Можно ли это сделать средствами ББ? Требуется ли для этого .NET?
Для сервера MySQL не требуется установка .NET, а для графического клиента платформы Windows (MySQL Workbench) - да. Но можно не устанавливать графический клиент.
Чтобы импортировать дамп в БД, достаточно использовать консольный клиент - для Windows идёт в поставке сервера. Для Linux устанавливается отдельно и без зависимостей.

ddn1 писал(а):
Мне нужно получить его содержимое в удобоваримой форме, а потом обработать.

После того как данные находятся в БД, их можно запросить оттуда любым клиентом, работающим с протоколом MySQL. Это может быть как БлэкБокс через соединение ODBC или прямое MySQL, так и любой другой программой.

Осталось неясно, в "удобоваримой форме" - это какой именно?
В любом случае, оперировать с данными потребуется через клиент БД. А в какой программе их обрабатывать - уже решать автору. После того как данные обработаны, их следует куда-то сохранить. Если их много, то логично, что обратно в БД.

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/