Страница 1 из 1

f_EmbeddedSQLSelect в чужую БД? - как?

Добавлено: 03 апр 2014, 15:04
Александр
))) Всем привет
вопрос такой - адаптирую Лоцию под внешние источники данных
обычно как - делаю во внешней базе универсального юзера только на чтение и через него одного запускаю все запросы (через скрипт) и все ок
но тут другое - понадобилось в Лоции массив заполнить тыщь на 20 строк x на 5 колонок - скриптом не передавал такие объемы поэтому использую f_EmbeddedSQLSelect
и с удивлением вижу что он цепляется к текущему юзеру у которого прав на чужие базы НОЛЬ )))
....
короче - можно ли как то переориентировать f_EmbeddedSQLSelect на нужного юзера
или просто дать права нужным юзерам на чужую базу? (что я конечно тут же сделал - но выглядит это не комильфо)

вот такой вопрос
как красиво решить эту проблему

ps
внешняя база - конечно же 1С :wink: :wink: :wink: :wink:

Re: f_EmbeddedSQLSelect в чужую БД? - как?

Добавлено: 03 апр 2014, 15:46
Старик Крупский
f_EmbeddedSQLSelect? В чужую базу? Он выполняет селект к текущей базе. Скриптами гоняй, без вариантов. В хелпе в примерах было обращение другой БД.

Re: f_EmbeddedSQLSelect в чужую БД? - как?

Добавлено: 03 апр 2014, 18:37
Александр
тогда с другой стороны зайдем
может можно нарисовать пользовательскую функцию (sql ufd) в базе Лоции которая бы обращалась к чужой базе....
тогда конфликта не будет и вроде все красиво...

есть ли у кого такой опыт?

Re: f_EmbeddedSQLSelect в чужую БД? - как?

Добавлено: 11 апр 2014, 06:38
Александр
если кому интересно - вот монстры с sql.ru предложили решение
http://www.sql.ru/forum/1086836/ufd-s-o ... oginom?hl=

Re: f_EmbeddedSQLSelect в чужую БД? - как?

Добавлено: 11 апр 2014, 07:11
Старик Крупский
Пробовал почитать. Да там сплошные дикари! Столько флуда...

Re: f_EmbeddedSQLSelect в чужую БД? - как?

Добавлено: 11 апр 2014, 14:37
Александр
вот заветные три строчки 'накрыть на стол и пригласить гостей'

Код: Выделить всё

alter database db2
set db_chaining on;

alter database db1
set db_chaining on;

go
use db2
grant connect to guest
типа работает
- в действии делаю запрос к UDF лежащей в Лоции (db1)
- а эта UDF читает данные из чужой БД (db2) без привязки юзера