Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Как бы так хитро сделать...  [new]
MrGreeN
Member

Откуда: Ukraine, Zaporozhye
Сообщений: 177
Необходимо сотавить запрос в котором в качестве параметра передавалось какое-то значение, затем оно проверялось на присутствие в базе, а возвращённым результатом являлось только yes/no....При этом доступ к таблице на чтение под данной учётной записью закрыт...
23 июн 03, 15:07    [238799]     Ответить | Цитировать Сообщить модератору
 Re: Как бы так хитро сделать...  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
Элементарно через ХП
23 июн 03, 15:10    [238803]     Ответить | Цитировать Сообщить модератору
 Re: Как бы так хитро сделать...  [new]
MrGreeN
Member

Откуда: Ukraine, Zaporozhye
Сообщений: 177
А поточнее...(хотя бы элементарно):)
Или ссылку на топик дайте...
23 июн 03, 16:36    [238990]     Ответить | Цитировать Сообщить модератору
 Re: Как бы так хитро сделать...  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
create procedure dbo.aaaa

@param1 int,
@param2 int output
if exists(select * from tabl where pole=@param1)
select @param2=1
else
select @param2=0

Процедура всегда выполняется от имени создателя, т.е. если создал овнер dbo, который имеет админовские права, то процедуру может выполнить любой пользователь, которому дано право эту процэдуру выполнять.
23 июн 03, 16:43    [239006]     Ответить | Цитировать Сообщить модератору
 Re: Как бы так хитро сделать...  [new]
fima
Member

Откуда: Москва
Сообщений: 583

create procedure Check_Value
(
@Value int,
@Result bit output
)
as
begin
if exists (select * from my_table where my_field = @Value)
begin
set @Result = 1
end
else
begin
set @Result = 0
end
end
go
grant exec on Check_Value
to my_user

Мог ошибиться с грантовкой, сервера под рукой нет
23 июн 03, 16:47    [239013]     Ответить | Цитировать Сообщить модератору
 Re: Как бы так хитро сделать...  [new]
MrGreeN
Member

Откуда: Ukraine, Zaporozhye
Сообщений: 177
т.е., к примеру, обычный пользователь не имеющий никакого доступа к таблице
к таблице с данными сможет проверить присутствует или нет интересующая его запись при этом не получив их полный список?
Ведь вся загвоздка именно в этом...( а то просто был бы скриптик ПХП считывающий все значения и вовращающий нужные, но при желании так-же он может получить все данные из это таблицы)
23 июн 03, 17:27    [239101]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить