2

为什么我不能使用非 SP 所有者用户执行包含动态 SQL 的存储过程?

我可以使用 SP 所有者用户成功执行它,但其他用户不能。

不过,我已授予该 SP 的权限。

当 SP 没有动态 SQL 时,一切正常。

我正在使用 Sybase ASE 15.0.3

4

2 回答 2

2

我懂了!

当SP中有动态SQL时,需要将执行方式改为“动态”

sp_procxmode sp_name, "dynamic"

为了允许非 SP 所有者用户成功执行该 SP。

于 2012-05-30T16:00:21.023 回答
0

要执行存储过程,用户需要访问所有可能存在的表、视图等,无论是在普通代码中还是在动态代码中!

于 2012-05-30T08:13:21.873 回答