powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / TRUNCATE для не владельца?
4 сообщений из 4, страница 1 из 1
TRUNCATE для не владельца?
    #33002779
Hordi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не могу выполнить TRUNCATE для таблицы из-под пользователя, который не является ее владельцем.Возможно ли это в принципе?
...
Рейтинг: 0 / 0
TRUNCATE для не владельца?
    #33003874
фффф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Через функцию с SECURITY DEFINER всё возможно.
...
Рейтинг: 0 / 0
TRUNCATE для не владельца?
    #33004071
Hordi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А подробнее можно? Плз.
...
Рейтинг: 0 / 0
TRUNCATE для не владельца?
    #33004288
фффф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пожалуйста:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
test=> \c - postgres
You are now connected as new user "postgres".
test=> create table testtrunc(i int);
CREATE TABLE
test=> grant select on testtrunc to user1;
GRANT
test=> insert into testtrunc values ( 1 );
INSERT  0   1 
test=> CREATE OR REPLACE FUNCTION truncate_testtrunc() RETURNS void AS
test-> 'truncate table testtrunc' LANGUAGE sql SECURITY DEFINER;
CREATE FUNCTION
test=> grant execute on function truncate_testtrunc() to user1;
GRANT
test=> \c - user1
You are now connected as new user "user1".
test=> select * from testtrunc;
 i 
---
  1 
( 1  row)
test=> truncate table testtrunc;
ERROR:  must be owner of relation testtrunc
test=> select truncate_testtrunc();
 truncate_testtrunc 
--------------------
 
( 1  row)
test=> select * from testtrunc;
 i 
---
( 0  rows)
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / TRUNCATE для не владельца?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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