首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Truncate表权限

Truncate表权限
EN

Stack Overflow用户
提问于 2011-05-20 02:48:46
回答 3查看 6.2K关注 0票数 4

截断表所需的最小权限是什么?除了DDLAdmin。什么是允许用户截断SQL 2008 R2上的用户的最佳实践?

EN

回答 3

Stack Overflow用户

发布于 2011-05-20 02:51:20

截断联机丛书here上的表文档

权限

所需的最低权限是ALTER on table_name。TRUNCATE表权限默认授予表所有者、sysadmin固定服务器角色的成员以及db_owner和db_ddladmin固定数据库角色,并且不可转移。但是,您可以将TRUNCATE TABLE语句合并到模块中,并使用EXECUTE as子句向模块授予适当的权限。有关更多信息,请参见使用EXECUTE AS创建自定义权限集。

票数 4
EN

Stack Overflow用户

发布于 2011-05-20 02:51:20

MSDN:

所需的最低权限是ALTER on table_name。TRUNCATE表权限默认情况下授予表所有者、sysadmin固定服务器角色的成员以及db_owner和db_ddladmin固定数据库角色,并且不可转移。

票数 2
EN

Stack Overflow用户

发布于 2011-05-20 03:09:13

如果您不想授予权限(实际上,在其他答案中描述的权限过多),您可以在存储过程中升级权限...

代码语言:javascript
复制
CREATE PROC DoTruncate
WITH EXECUTE AS OWNER
AS
TRUNCATE TABLE Mytable
GO

并使用“正常”权限对其进行许可

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6063451

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档