某存储过程 SP_Test,对表TA_20070919有Update操作,这个操作是通过动态SQL来玩成的。
Create Proc SP_Test 
as
begin
   declare @SQL varchar(3000)
   Update TA_20070919 set Fa = Fa +1 
   set @SQL ='Update TA' + convert(varchar(12),getdate()) + ' set Fa = Fa +1 ' 
   exec(@SQL)end现在用用户A执行,用户A对SP_Test有Excute 权限,对表TA_20070919没有任何权限。
执行的结果是第一条Update语句执行成功,第二条Update语句执行失败,原因是没有表TA_20070919的Update 权限。问题:1,为什么出现这种情况。
      2,除了给表赋权限外,怎么样才能让动态SQL也能有权限执行?高手请指点一下,非常感谢!