Pkt. 1 - så får jeg følgende fejl, når jeg kører koden: Syntax error in FROM clause
Pkt. 2 - Skal jeg ikke på en eller anden måde, spørge efter de to ting, jeg har ind - nemlig KundeID og FakturaID (så jeg ved, hvilken kunde og faktura, det drejer sig om)?
HVis du skal have en specifik kunde med skal du bruge:
SELECT * FROM Kunder K INNER JOIN Faktura F ON F.KundeID = K.KundeID INNER JOIN Ordre O ON O.FakturaNr= F.FakturaID WHERE K.KundeID=10
Hvis Det er med faktura sa SELECT * FROM Kunder K INNER JOIN Faktura F ON F.KundeID = K.KundeID INNER JOIN Ordre O ON O.FakturaNr= F.FakturaID WHERE K.KundeID=10 AND F.FakturaID=11
OleDbCommand minCommand = new OleDbCommand("SELECT * FROM Kunder K INNER JOIN Faktura F ON F.KundeID = K.KundeID INNER JOIN Ordre O ON O.FakturaNr = F.FakturaID WHERE K.KundeID=1 AND F.FakturaID=1", minCon);
Men får følgende fejl:
Syntax error (missing operator) in query expression
PS: Når jeg så skal hente data - skal jeg så bruge txtFakturaNr.Text = minReader["FakturaID"].ToString(); eller txtFakturaNr.Text = minReader["F.FakturaID"].ToString();
DU kan benytte txtFakturaNr.Text = minReader["FakturaID"].ToString(); hvis du henter bestemte felter ud.
prøv lige med
OleDbCommand minCommand = new OleDbCommand("SELECT F.* FROM Kunder K INNER JOIN Faktura F ON F.KundeID = K.KundeID INNER JOIN Ordre O ON O.FakturaNr = F.FakturaID WHERE K.KundeID=1 AND F.FakturaID=1", minCon);
Følgende SQL sætning kører jeg i en forespøgsel i Access og får 2 rækker med 2 kolonner ud (som jeg også skal)
SELECT Faktura.FakturaID, Kunder.KundeId FROM Kunder INNER JOIN (Faktura INNER JOIN Ordre ON Faktura.FakturaID = Ordre.FakturaNr) ON Kunder.KundeId = Faktura.KundeID WHERE (((Faktura.FakturaID)=1) AND ((Kunder.KundeId)=1));
Følgende SQL sætning kopierer jeg så over i VS og får fejl
OleDbCommand minCommand = new OleDbCommand("SELECT Faktura.FakturaID, Kunder.KundeId FROM Kunder INNER JOIN (Faktura INNER JOIN Ordre ON Faktura.FakturaID = Ordre.FakturaNr) ON Kunder.KundeId = Faktura.KundeID WHERE (((Faktura.FakturaID)=1) AND ((Kunder.KundeId)=1))", minCon);
Der er åbenbart ikke forbindelse til databasen - men det forstår jeg ikke. Jeg kopierer den samme sætning over fra en anden form, hvor den har forbindelse
Kode hvorfra jeg kopierer fra:
OleDbConnection minCon = new OleDbConnection(); minCon.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\ANSI\\fakturasystem.mdb"; OleDbCommand minCommand = new OleDbCommand("INSERT INTO Kunder
Kode som jeg har kopieret til:
OleDbConnection minCon = new OleDbConnection(); minCon.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\ANSI\\fakturasystem.mdb";
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.