sql提示存儲過程
A. 我在 sql server 2000 上執行作業 提示:未能找到存儲過程 'sp_start_job',請問是為什麼呢要怎麼處理
sp_start_job存儲過程是在msdb資料庫中,所以需要指定資料庫名
EXEC msdb.dbo.sp_start_job @job_name = 'jobtest1'
用語句改作業調度相當麻煩,不建議用語句改。
用語句改的思路
首先從系統表中獲取調度Id
SELECT schele_id FROM msdb.dbo.sysjobscheles WHERE job_id=(SELECT job_id FROM msdb.dbo.sysjobs WHERE name='jobtest1')
然後執行存儲過程更新調度
EXEC msdb.dbo.sp_update_schele @schele_id=1, @freq_interval=1,@active_start_time=0
注意,@schele_id=1是假設第一步獲取的調度id為1,如果是別的值就修改成別的。
@freq_interval=1表示每周日執行,相應的周一為2 周二為4 周三為8 周四為16 周五為32 周六為64
@active_start_time=0 表示0點執行,其它時間按小時分秒的形式,比如1點05分06秒就是10506
B. sql server執行存儲過程錯誤,錯誤提示消息 207,級別 16,狀態 1,第 1 行 列名 'FG1307' 無效。
你這行'合同名稱='+@ContractNo ,ContractNo 為傳進來的參數, 因為字元串拼接後,單引號沒有了,導致資料庫把把解析為了變數(表的一列),因為資料庫沒有該列,所以報錯了。
你這樣寫試試:
set @ContractNoWhere= '合同名稱=『』『+@ContractNo+』『』『
不行在M我,一大早我也沒清晰