ich die folgende gespeicherte Prozedur ausgeführt wird, die 0-Werte zurückgibt:Gespeicherte Prozedur nicht erwarteten Werten Rückkehr
CREATE PROCEDURE [dbo].[sproc_tblBook_DisplayReservations]
@bor_id varchar (9)
AS
SELECT bor_id, isbn, bk_author, bk_title,
cop_loan_type, cop_status, res_date
FROM tblBook, tblReservation, tblCopy, tblBorrower
WHERE
tblReservation.res_cleared_date = NULL
AND
tblBook.isbn = tblReservation.fk1_isbn
AND
tblBook.isbn = tblCopy.fk1_isbn
AND
tblBorrower.bor_id = tblReservation.fk2_bor_id
AND
bor_id = @bor_id;
RETURN 0
Das gewünschte Ergebnis ist natürlich, dass es Aufzeichnungen zeigt, welche die, wo die Bedingungen Kriterien entsprechen.
Solche Datensätze existieren, sie werden jedoch nicht angezeigt.
Ich bin sicher, dass meine Syntax korrekt ist, also bin ich völlig und völlig ratlos.
Auf einen Blick, wenn Sie Vorschläge haben, bitte erzählen.
Ich habe mein Programm hier verlinkt, sollte jemand genauer hinschauen wollen.
Unglücklicherweise denke ich, dass das sehr wichtig ist, um mich bei diesem Problem zu unterstützen, aber ich danke Ihnen allen, sollte jemand dies lesen.
Der folgende Link ist mein Programm, das ich arbeite in Visual Studio (ZIP-Datei - fühlen Sie sich frei, den MDF-Datei/SQL-Server bei Bedarf zu aktualisieren): http://s000.tinyupload.com/index.php?file_id=07002279584481194620
Bitte, wenn Sie Zeit haben , lade mein Programm herunter und finde heraus, ob du das Problem finden kannst!
* nie * Kommas in der 'FROM' Klausel:
Auch die impliziten in die explizite Join ändern. * Verwenden Sie immer die richtige explizite 'JOIN'-Syntax. –
Einverstanden. Es ist auch eine kleine Herausforderung, Ihren Code so zu interpretieren, wie er ist. Verwenden Sie Aliase für jede Ihrer Tabellen und qualifizieren Sie jedes Ihrer Felder explizit. Bsp .: 'wähle b.author aus tblBook b'. Ich bin persönlich Teilhaber an LEFT JOINS, aber das ist nur meine Vorliebe, wie ich Daten verarbeiten kann, gibt es andere Arten, die hier besser geeignet sind. Die Kommas in Ihrer FROM-Klausel machen jedoch einen riesigen vollständigen Join für alles, und das ist nicht das, was Sie wollen. – SandPiper
Markieren Sie die verwendeten dbms, dieser Code ist produktspezifisch. – jarlh