Hi zusammen,
ich habe folgendses Problem:
ich habe eine Abfrage geschrieben, die mir eine Liste an Autos gibt, die keine Händler mehr haben. Diese Funktioniert auch soweit, jedoch habe ich mit dem Ergebnis so meine Probleme.
Die Abfrage lautet wie folgt:
-----------------------------------------------------------
SELECT lCarID, lDealerID
FROM tblCars
WHERE (lDealerID is not NULL)AND(lDealerID NOT IN (SELECT lDealerID FROM tblDealers))AND(bConfirmed='0')
ORDER BY lDealerID
-----------------------------------------------------------
Gebe ich diese Abfrage in den Query Analyzer ein, bekomme ich 2401 Ergebnisreihen. Packe ich diese Abfrage in eine 'gespeicherte Prozedur' und rufe das ganze dann aus einem ASP Script aus auf, bekomme ich über 15.000 Ergebnisreihen.
Hier kurz das ASP-Script:
----------------------------------------------------------
<%@ Language=VBScript %>
<% OPTION EXPLICIT
FUNCTION FncGetDeadCars (ConnObj)
DIM rsTemp
SET rsTemp = server.CreateObject ("ADODB.recordset")
rsTemp.Open "EXEC proc_GetDeadCars", ConnObj
SET FncGetDeadCars = rsTemp
END FUNCTION
Server.ScriptTimeout = 800
DIM myConn, rsCars, myCarID, myConfirmed, myDeleted, tmpStr, i
SET myConn = Server.CreateObject("ADODB.Connection")
i=1
myConn.ConnectionString = "DSN=*****; UID=*****; pwd=*****"
myConn.Open
SET rsCars = FncGetDeadCars (myConn)
Response.Write "CarID -- DealerID"
Response.Write "<br>"
IF NOT rsCars.EOF THEN
DO
Response.Write rsCars("lCarID") &" -- "& rsCars("lDealerID")
Response.Write "<br>"
rsCars.moveNext
LOOP UNTIL rsCars.EOF
ELSE
Response.Write ("Keinen Datensatz gefunden<br>")
END IF
myConn.Close
%>
-----------------------------------------------
Und hier die Prozedur:
-----------------------------------------------
CREATE PROCEDURE proc_GetDeadCars AS
SELECT lCarID, lDealerID
FROM tblCars
WHERE (lDealerID is not NULL)AND(lDealerID NOT IN (SELECT lDealerID FROM tblDealers))AND(bConfirmed='0')
ORDER BY lDealerID
GO
-----------------------------------------------
Hat einer von Euch eine Idee, warum ich so extrem unterschiedliche Ergebnisse bekomme? Es handelt sich beides mal um die gleiche Abfrage.
Ich weiß nicht weiter.
Danke schonmal!!