Возможно ли в MS SQL в сохранённой процедуре обратиться к таблицам из другой БД или с другого сервера (тоже MS SQL)?
Здравствуйте, Neonix, Вы писали:
N>Возможно ли в MS SQL в сохранённой процедуре обратиться к таблицам из другой БД или с другого сервера (тоже MS SQL)?
Смотрите в документации т.наз. Distributed Queries:
Distributed queries access data from multiple heterogeneous data sources, which can be stored on either the same or different computers. Microsoft® SQL Server™ 2000 supports distributed queries by using OLE DB, the Microsoft specification of an application programming interface (API) for universal data access.
Таким образом можно обратиться не только к MSSQL, но и к другим SQL-серверам. Пример из документации:
EXEC sp_addlinkedserver 'OracleSvr',
'Oracle 7.3',
'MSDAORA',
'ORCLDB'
GO
SELECT *
FROM OPENQUERY(OracleSvr, 'SELECT name, id FROM joe.titles')
GO
Здравствуйте, Neonix, Вы писали:
N>Возможно ли в MS SQL в сохранённой процедуре обратиться к таблицам из другой БД или с другого сервера (тоже MS SQL)?
Можно.
К таблице из другой БД: <dbname>.<tblowner>.<tblname> (если владелец таблицы dbo, то можно просто <dbname>..<tblname>)
К таблце на другом сервере (не обязательно MSSQL):
Читать хелп (BOL) на тему sp_AddLinkedServer, OPENQUERY(), OPENROWSET() и вообще Distributed Query Architecture, для общего развития...
P. S.
Нарооод, пора все-таки какой-никакой FAQ придумывать, а то вопросы по поводу "ID записи после вставки" появляются раз в неделю уже.
Спасибо за нужное направление
Здравствуйте, Merle, Вы писали:
M>P. S.
M>Нарооод, пора все-таки какой-никакой FAQ придумывать, а то вопросы по поводу "ID записи после вставки" появляются раз в неделю уже.
Давно пора — кто займется?