Matthias: Gespeicherte Prozedur wird nicht ausgeführt

Beitrag lesen

Hallo zusammen,

ich arbeite mit PHP5 und den SQL Server 2005.

Ich möchte eien GP ausfünhren und die Daten in einer Tabelle ausgeben. Leider bekomme ich die Fehlermeldung "Heterogeneous queries require the ANSI_NULLS and ANSI_WARNINGS options to be set for the connection". Diese Fehlermeldung bekomme ich aber nur in bestimmten Fällen. Wenn ich in der GP einen "einfachen" Select auf eine Tabelle mache, bekomme ich keine Fehlermeldung. Dieser erhalte ich nur, wenn ich einen Select auf eine DB2 auf ner AS400 mache. Die Abfrage sieht folgendermaen aus

USE [BDE_test]
 set ansi_padding on
 set ARITHABORT on
 set CONCAT_NULL_YIELDS_NULL on
 set QUOTED_IDENTIFIER on
 set ANSI_NULLS ON
 set QUOTED_IDENTIFIER ON
 set numeric_roundabort off
GO

ALTER PROCEDURE [dbo].[spBDEausDISO] @Datum varchar(25) AS

DECLARE @SQL varchar(2048)

SET @SQL = 'SELECT DISTINCT K.DKOBZ, Z.DKONR KST, P.DPSNA Name, Z.DSCHT Schicht, (DAUFN || '''' '''' || DAUFU) Auftrag,'
SET @SQL = @SQL + 'XAVBZ AVG,(DZEIT/100) Zeit,DMENG Menge '
SET @SQL = @SQL + 'FROM ((LDATA.DDPAD00 Z LEFT JOIN LDATA.DDLPS00 P ON Z.DPSNR = P.DPSNR) '
SET @SQL = @SQL + 'LEFT JOIN LDATA.DDLKO00 K ON Z.DKONR = K.DKONR) '
SET @SQL = @SQL + 'JOIN LDATA.DXPAV00 A ON Z.DAVGN = A.XAVNR '
SET @SQL = @SQL + 'WHERE A.XFINR = ''''900'''' AND Z.XFINR = ''''900'''' AND Z.DDATM = ''''' + @Datum + ''''' '
SET @SQL = @SQL + 'AND K.XKOJR = ''''02'''' AND K.XFINR = ''''900'''''
SET @SQL = @SQL + 'ORDER BY KST, SCHICHT, Auftrag, AVG'
SET @SQL = 'SELECT * FROM OPENQUERY(DISO_IBM,''' + @SQL + ''')'

--select @SQL
--EXEC( @SQL );
select * from tbTest

Hier im Forum habe ich den Tip gefunden die verschiedenen Parameter einzuschalten, doch ohne Erfolg.

Noch ein Hinweis: Die DB (BDE_Test) ist eine Testumgebung auf den SQL 2005 auf dem alten Server SQL 2000 funtioniert die GP!

Ich hoffe das mir einer von Euch helfen kann.

Vielen Dank
Matthias