Ik heb een C# programma die connectie maakt met een accessdatabase. Dit gaat met verschillende queries goed, maar bij de onderstaande komt de foutmelding':
Syntax error (missing operator) in query expression 'Boekingen.volgnrklant = Klanten.volgnr INNER JOIN Artiesten ON Boekingen.volgnrartiest = Artiesten.volgnr'.
De query die ik uit wil voeren is:
SELECT Klanten.voorletters, Boekingen.*, Artiesten.voorletters FROM Boekingen INNER JOIN Klanten ON Boekingen.volgnrklant = Klanten.volgnr INNER JOIN Artiesten ON Boekingen.volgnrartiest = Artiesten.volgnr ORDER BY Boekingen.optreeddatumtijd
De volgende twee queries gaan wel goed:
SELECT Klanten.voorletters, Boekingen.* FROM Boekingen INNER JOIN Klanten ON Boekingen.volgnrklant = Klanten.volgnr ORDER BY Boekingen.optreeddatumtijd
SELECT Boekingen.*, Artiesten.voorletters FROM Boekingen INNER JOIN Artiesten ON Boekingen.volgnrartiest = Artiesten.volgnr ORDER BY Boekingen.optreeddatumtijd
Is het soms niet mogelijk om drie tabellen te koppelen?
Als ik in SQL de drie tabellen toevoeg en vul en dan de query uitvoer dan gaat het wel goed.
Voor de volledigheid:
AdapterBoekingen = new OleDbDataAdapter(strQuery, "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=boekingen.mdb");
cBuilderBoekingen = new OleDbCommandBuilder(AdapterBoekingen);
dTableBoekingen = new DataTable();
AdapterBoekingen.Fill(dTableBoekingen);
dTableBoekingen.TableName = "Boekingen";
Syntax error (missing operator) in query expression 'Boekingen.volgnrklant = Klanten.volgnr INNER JOIN Artiesten ON Boekingen.volgnrartiest = Artiesten.volgnr'.
De query die ik uit wil voeren is:
SELECT Klanten.voorletters, Boekingen.*, Artiesten.voorletters FROM Boekingen INNER JOIN Klanten ON Boekingen.volgnrklant = Klanten.volgnr INNER JOIN Artiesten ON Boekingen.volgnrartiest = Artiesten.volgnr ORDER BY Boekingen.optreeddatumtijd
De volgende twee queries gaan wel goed:
SELECT Klanten.voorletters, Boekingen.* FROM Boekingen INNER JOIN Klanten ON Boekingen.volgnrklant = Klanten.volgnr ORDER BY Boekingen.optreeddatumtijd
SELECT Boekingen.*, Artiesten.voorletters FROM Boekingen INNER JOIN Artiesten ON Boekingen.volgnrartiest = Artiesten.volgnr ORDER BY Boekingen.optreeddatumtijd
Is het soms niet mogelijk om drie tabellen te koppelen?
Als ik in SQL de drie tabellen toevoeg en vul en dan de query uitvoer dan gaat het wel goed.
Voor de volledigheid:
AdapterBoekingen = new OleDbDataAdapter(strQuery, "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=boekingen.mdb");
cBuilderBoekingen = new OleDbCommandBuilder(AdapterBoekingen);
dTableBoekingen = new DataTable();
AdapterBoekingen.Fill(dTableBoekingen);
dTableBoekingen.TableName = "Boekingen";