SET IDENTITY_INSERT ON/OFF 权限

今天突然遇到了,找不到对象“XXXX”,因为它不存在或者没有您所需的权限,于是检查程序,突然发现程序中有一段代码是:

SET IDENTITY_INSERT eticket ON
//执行业务
......
//执行完毕
SET IDENTITY_INSERT eticket Off

程序中怎么会有这样的语句,经过分析原来是表A中的主键是自增长的,在程序中插入的时候把主键也设置了,于是需要把自增长的先关掉,等相关业务执行完成之后再打开。

在执行上面的语句的时候就发现执行不成功,会报没有权限的异常,经过折腾发现用来执行SET IDENTITY_INSERT的用户没有A表的ALERT权限,于是:

GRANT ALERT ON A TO 用户

然后就可以顺利执行了

posted @ 2014-09-05 10:27  andysd  阅读(1257)  评论(1编辑  收藏  举报