Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Лазарев Евгений
Зарегистрирован: 12.06.2008 Сообщения: 48 Откуда: УралГеоИнформ
|
Добавлено: Чт 12 Июн 2008 13:09 Заголовок сообщения: Ошибка при создании семантической таблицы |
|
|
При работе с семантическими данными с использованием драйвера SQL сервера.
При создании таблиц происходит ошибка, из за того что программа не меняет текущую базу данных поэтому таблица создается в базе по умолчанию (master), а обращение идет к базе ингео.
Для решения этой проблемы необходимо создавать драйвер с преднастроенной базой по умолчанию.
Либо исправить этот не дочет с работой баз данных. |
|
Вернуться к началу |
|
 |
andreichernov
Зарегистрирован: 14.02.2005 Сообщения: 209 Откуда: Самара
|
Добавлено: Пт 13 Июн 2008 12:33 Заголовок сообщения: |
|
|
Возможные ошибки
1) Используется родной BDE-драйвер с именем MSSQL - он глючный, вместо него используйте SQL Server (подключение через ODBC)
2) Если используется подключение через ODBC, проверьте, что в настройках подключения к семантической таблице в поле DATABASE NAME стоит верное имя базы данных а в поле SCHEMA NAME стоит значение dbo.
С уважением, Андрей Чернов |
|
Вернуться к началу |
|
 |
Лазарев Евгений
Зарегистрирован: 12.06.2008 Сообщения: 48 Откуда: УралГеоИнформ
|
Добавлено: Пт 13 Июн 2008 22:15 Заголовок сообщения: |
|
|
у меня в настройках семантики стоит
DATABASE NAME My_base
ODBC DSN LocalServer
LANGDRIVER Pdox ANSI Cyrillic
SHEMA NAME dbo
но всеравно при создании новой семантической таблицы выдается сообщение об ошибке и на самом деле создается таблица в базе master которая в данном DSN прописана по умолчанию.
Вот лог из профайлера скл:
CREATE TABLE dbo.[GRANITSY__ADMINISTRATIVNO_TERR]([ID] varchar(12) NOT NULL, [F1] varchar(20))
ALTER TABLE dbo.[GRANITSY__ADMINISTRATIVNO_TERR] ADD CONSTRAINT [GRANITSY__ADMINISTRATIVNO_T_PK] PRIMARY KEY CLUSTERED([ID])
exec My_base..sp_tables N'GRANITSY__ADMINISTRATIVNO_TERR', N'dbo', N'My_base', N'''TABLE'',''VIEW'''
явно видно что ИнГео читает из базы которая указана, а при создании новой таблицы забывает указать базу и пишет в базу по умолчанию. |
|
Вернуться к началу |
|
 |
andreichernov
Зарегистрирован: 14.02.2005 Сообщения: 209 Откуда: Самара
|
Добавлено: Пт 13 Июн 2008 23:05 Заголовок сообщения: |
|
|
на клиенте должен автоматом организовываться odbc-источник ingeo_LocalServer
Зайди в него и посмотри, на какую таблицу указывает.
Если на мастер, значит при настройке источника данных LocalServer на сервере возможно не была проставлена база данных |
|
Вернуться к началу |
|
 |
Лазарев Евгений
Зарегистрирован: 12.06.2008 Сообщения: 48 Откуда: УралГеоИнформ
|
Добавлено: Сб 14 Июн 2008 10:14 Заголовок сообщения: |
|
|
Ну да, так оно и есть. в новом odbc-источниеке не прописана база, и если поменять на то что надо то все ок.
просто я предполагал использовать системный odbc-источник указывающий на сервер и на клиенте уже надо было бы его использовать и только менять DATABASE NAME для разных баз, но получается что необходимо для каждой базы создавать отдельный odbc-источник. системный либо пользовательский. |
|
Вернуться к началу |
|
 |
andreichernov
Зарегистрирован: 14.02.2005 Сообщения: 209 Откуда: Самара
|
Добавлено: Сб 14 Июн 2008 12:34 Заголовок сообщения: |
|
|
ну так на сервере создайте для каждой базы по одному системному odbc-источнику и клиент его подхватит автоматом. |
|
Вернуться к началу |
|
 |
Лазарев Евгений
Зарегистрирован: 12.06.2008 Сообщения: 48 Откуда: УралГеоИнформ
|
Добавлено: Сб 14 Июн 2008 15:32 Заголовок сообщения: |
|
|
ну да это поможет.
просто хотелось бы чтоб в будующих версиях как нибуть по проще это решалось например чтобы он всетаки обрабатывал сойство odbc-источника database name а то получается что оно ни на что не влияет если ИнГео все равно использует базу данных которая стоит по умолчанию в дата сорсе. |
|
Вернуться к началу |
|
 |
|