Declare @v_id int --主键,自动增加
Declare @v_account varchar(20)      --用户帐号
Declare @v_newpwd varchar (20)      --将要更改的新密码
Declare @v_server    varchar(20)    --出错的服务器标志
Declare @v_over       int           --是否已经处理成功,默认是0,如果通过该作业将远程链接服务器的对应帐号改为该新密码以后,改位置1,也就是一个可以写的游标,遍历一遍以后,查到如果改标志位为1,就删除掉,下次作业调度就不用执行了 Begin
DECLARE AccountUpList_Cursor CURSOR 
SCROLL
DYNAMIC 
FORselect id,account,newpwd,sysobj,IsSuc 
from SYS_ERR_LOG  
where IsSuc=0 
order by attime FOR UPDATE OF [IsSuc]OPEN AccountUpList_Cursor
--打开游标
    FETCH NEXT FROM AccountUpList_Cursor into @v_id,@v_account,@v_newpwd,@v_server,@v_over
--把第一行传递到变量
WHILE @@FETCH_STATUS = 0
BEGIN
    BEGIN TRANSACTION
            if @v_server='R_DB001'  update R_DB001.AccountDB.dbo.Account set password=@v_newpwd where Account=@v_account
            
           --更新远程数据库的密码,R_DB001是我的建立的一个“链接服务器”,可以正常查询
           update SYS_ERR_LOG set IsSuc=1 where id=@v_id
           --delete from SYS_ERR_LOG where id=@v_id
           --删除该错误日志表的记录
    if @@error>0
          ROLLBACK
    else
    COMMIT TRANSACTION
  
    FETCH NEXT FROM AccountUpList_Cursor into @v_id,@v_account,@v_newpwd,@v_server,@v_overENDCLOSE AccountUpList_Cursor
--关闭游标
DEALLOCATE AccountUpList_Cursor
--关闭游标结构  delete from SYS_ERR_LOG where IsSuc=1
end没有报语法错误了