powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / FileTable вставка записи
3 сообщений из 3, страница 1 из 1
FileTable вставка записи
    #39842341
Алексаша
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте.

MS SQL SERVER 2017

Имеется файловая таблица
Код: sql
1.
2.
3.
4.
5.
CREATE TABLE [dbo].[ft_Test] AS FILETABLE ON [PRIMARY] FILESTREAM_ON [FileTable]
WITH
(
FILETABLE_DIRECTORY = N'ft_Test', FILETABLE_COLLATE_FILENAME = Cyrillic_General_CI_AS
)



Уровень доступа в режиме транзакций = Full
Настройки FileStream на скрине.

имеется пользователь БД.
Код: sql
1.
CREATE USER [test_login] FOR LOGIN [test_login] WITH DEFAULT_SCHEMA=[dbo]


имя входа = public

пользователь test_login состоит в роли
Код: sql
1.
CREATE ROLE [rl_viewFileTable]


эта роль имеет защищаемый объект ХП с правом на выполнение
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
CREATE PROCEDURE [dbo].[viewFileTable]
AS
BEGIN
	SET NOCOUNT ON;

SELECT *
  FROM [test_1].[dbo].[ft_Test]

select Id = MAX([path_locator])
from [ft_Test]
where [path_locator].GetAncestor(1) = hierarchyid::GetRoot() 

INSERT INTO [dbo].[ft_Test]
           (
           [name]
           ,[is_directory]
           
          )
     VALUES
           ('тест1'
		   ,1)

  select USER_NAME()
END



В итоге эксперементальным путем закоменчиванием и раскоменчиванием установлено ))) селект выполняется а инструкция инсерт дает ошибку:
Запрещено разрешение "SELECT" на объект "ft_Test" базы данных "test_1", схемы "dbo".
Делаю акцент что именно инсерт дает ошибку.

Как в итоге из под ограниченного пользователя инструкцией инсерт делать вставку в файловую таблицу.
...
Рейтинг: 0 / 0
FileTable вставка записи
    #39842427
uaggster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: sql
1.
2.
3.
4.
CREATE PROCEDURE [dbo].[viewFileTable]
with execute as owner
AS
...


?
...
Рейтинг: 0 / 0
FileTable вставка записи
    #39842502
Алексаша
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
uaggster,

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


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