| Предыдущая тема :: Следующая тема   | 
	
	
	
		| Автор | 
		Сообщение | 
	
	
		Лазарев Евгений
 
 
  Зарегистрирован: 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 а то получается что оно ни на что не влияет если ИнГео все равно использует базу данных которая стоит по умолчанию в дата сорсе. | 
			 
		  | 
	
	
		| Вернуться к началу | 
		 | 
	
	
		  | 
	
	
		 |