各位大虾,紧急求助啊:
我在SQL SERVER2005上建了一个存储过程,类似下面:
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
CREATE PROCEDURE [dbo].[p_tt]
-- Add the parameters for the stored procedure here
@job_no varchar(20),
@tt varchar(10)='' output
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
set ANSI_NULLS ON
SET ANSI_WARNINGS ON
-- Insert statements for procedure here
SELECT top 1 @job_no = job_no
FROM abc.new_material.dbo.truck_oil
WHERE job_no='ZHJY07040020'
SET @tt='1'
SELECT @tt AS ID
END
在SQL SERVER里运行良好,但是在PB里一调用这个存储过程就会报错,"异类查询要求为连接设置 ANSI_NULLS 和 ANSI_WARNINGS 选项。这将确保查询语义一致。请启用这些选项,然后重新发出查询。",但是这里已经设置了,好像不起作用啊,我把数据库的选项中两个开关ANSI_NULLS 和ANSI_WARNINGS 置成ON这种方法肯定是能用,但是这样对以前的数据是有影响的,大家有没有其他办法,急盼,谢谢各位了
------解决方案--------------------
To clice30145 : 把调用存储过程的命令 由 “exec 存储过程名” 改写为: “SET ANSI_NULLS ON SET ANSI_WARNINGS ON exec 存储过程名”就可以调用起来啦