Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Имя пользователя в хранимой процедуре / 7 сообщений из 7, страница 1 из 1
22.10.2002, 13:29:44
    #32060694
Dvorez
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Имя пользователя в хранимой процедуре
Сначала пользователь создает
свою таблицу [user].[table]
Потом вызывается хранимая процедура [dbo].[procedure]
в которой используется таблица [user].[table]
Возникает сообщение об ошибке, что такая таблица не найдена.
Как можно из хранимой процедуры [dbo].procedure], вызванной пользователем [user] обратится к таблице [user].[table] созданной тем самым [user]?
...
Рейтинг: 0 / 0
22.10.2002, 13:33:57
    #32060697
AVL
AVL
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Имя пользователя в хранимой процедуре
а как Вы пытаетесь обратиться к таблице? можно фрагментик кода?
...
Рейтинг: 0 / 0
22.10.2002, 13:52:10
    #32060710
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Имя пользователя в хранимой процедуре
А вызов типа
SELECT * FROM SERVER.BASE.USER.TABLE не пробовали ?
В EM посмотрите кто является owner'ом таблицы.
Имеет ли право Ваш юзер создавать таблицу ( server roles) ?
Откуда он создает таблицу (em,qa, клиентское приложение) ?
...
Рейтинг: 0 / 0
22.10.2002, 14:15:54
    #32060731
Dvorez
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Имя пользователя в хранимой процедуре
To AVL:
К таблице REP_0111Lgot обращаюсь просто

F22.KODL IN (SELECT KODL FROM [REP_0111Lgot])
F1.KSY IN (SELECT KSY FROM [REP_0111Kateg])
AND datediff(d, ALF.DATR ,GETDATE()) > 6575


To big-duke:
SERVER.BASE.USER.TABLE
- с радостью бы тк сделал, но на каждого пользователя планируется своя таблица, а процедура должна быть одна.
...
Рейтинг: 0 / 0
22.10.2002, 14:24:31
    #32060737
Chicago
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Имя пользователя в хранимой процедуре
А оно вам нужно на каждого юзера и по таблице? Может просто создать одну на всех и в ключ ввести имя пользователя. А затем в процедуре выполнить что то вроде

select * from theTable where ... and user_name=suser_sname()
...
Рейтинг: 0 / 0
22.10.2002, 14:25:11
    #32060739
AVL
AVL
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Имя пользователя в хранимой процедуре
Ага!....
так Вы-то обращаетесь не к той таблице. Раз Вы не указываете наименование объекта полностью = юзер.таблица, то берется объект дбо.таблица. А его, как я понял, даже и нет в базе.


ЗЫ Попробуйте использовать все-таки временные таблицы, а не создавать их физически.
...
Рейтинг: 0 / 0
22.10.2002, 14:42:26
    #32060755
Dvorez
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Имя пользователя в хранимой процедуре
Спасибо всем за ответы.

To AVL:
Ну понятно, а как все таки можно в [X].[Table]
посставить вместо X имя Пользователя

To Chicago:
Это решение пожалуй подходит :)
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Имя пользователя в хранимой процедуре / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]