Hi,everyone.

Today, I found a bug in SQL SERVER 2005. I want to deliver it to Microsoft Cooperation. But I can not find the contact email or website. Can I send it to them?


The bug is described as:

SET DATEFIRST 1
DECLARE @w_ID INT,@ERRCD INT,@ERRMSG VARCHAR(400)
SELECT @w_ID=100
EXEC @ERRCD=SPcInsertErrData 10,20,@ERRMSG OUTPUT
IF @@ERROR<>0
BEGIN
PRINT 'EXECUTE FAILURE!!!!!'
END
ELSE
IF @ERRCD<>0
PRINT @ERRMSG


SPcInsertErrData is an user-defined procedure with one input paramater and one output parameter. When I call the procedure with more than two parameters (the example is given above), the error message "'EXECUTE FAILURE!!!!!" must be printed. But the error meesage has not be printed. After many debugs with a long time, I found the statement "SET DATEFIRST 1" play a important role. When I SET DATEFIRST 2, the error message "'EXECUTE FAILURE!!!!!" can be printed. My God, what problem? what The procedure deals with has nothing to do with datetime.

Please give me some advice.

Thank you in advance!