2016-11-26 8 views
0

SGBDとしてAccessを使用してSQLでSELECTクエリを実行しようとしていますが、エラーが発生しました 何が間違っていますか?それはFROMの文法エラーです。本当に奇妙なのは、クエリがAccessでうまく動作し、他の(より単純な)クエリがJavaスクリプトで正しく実装されていることです。私は購入した本やネットでさえも、それはテーブルが少なくて済むので、私はその文書を見つけられませんでした!sql on java(query)

PreparedStatement ps = cnx.prepareStatement("SELECT Client.Nom , Facture.Date_Achat , Client.Prénom , Facture.N°Fac , SUM(Contient1.Quantité1*PrixAchatMonture)AS Somme "+ 
"FROM Facture , Client , Contient1 , Monture "+ 
"ON Facture.N°Client=Client.N°Client AND Facture.N°Fac=Contient1.N°Fac AND Contient1.IDM=Monture.IDM "+ 
"WHERE Client.Nom =? AND Client.Prénom=? "+ 
"GROUP BY Client.Nom, Facture.Date_Achat, Client.Prénom, Facture.N°Fac",ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY); 
     // ! au sens de la jointure pour l'affichage 

[Microsoft]の[PILOTE ODBC Microsoft Accessの]構文エラー

答えて

0

から、私はそれがあるべきだと思うに

PreparedStatement ps = cnx.prepareStatement("SELECT Client.Nom , Facture.Date_Achat , Client.Prénom , Facture.N°Fac , SUM(Contient1.Quantité1 * Monture.PrixAchatMonture) AS Somme "+ 
"FROM Facture , Client , Contient1 , Monture "+ 
"ON Facture.N°Client=Client.N°Client AND Facture.N°Fac=Contient1.N°Fac AND Contient1.IDM=Monture.IDM "+ 
"WHERE Client.Nom =? AND Client.Prénom=? "+ 
"GROUP BY Client.Nom, Facture.Date_Achat, Client.Prénom, Facture.N°Fac",ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY); 
+0

のPreparedStatementのps = cnx.prepareStatement - 事前にありがとうございます( "SELECT Client.Nom、Facture.Date_Achat、Client.Prénom、Facture.N°Fac、SUM(Contient1.Quantité1* Monture.PrixAchatMonture)As Somme" + "FROM Facture" + "INNER JOINクライアントON Facture.N°クライアント=クライアントN°クライアント" + "INNER JOIN Contient1 ONファクタN. Fac = Contient1.N°Fac" + "INNER JOINモンチュアON Contient1.IDM =モンチュア。 IDM "+ "どこClient.Nom =? ANDClient.Prénom=? "+ " GROUP BY Client.Nom、Facture.Date_Achat、Client.Prénom、Facture.N°Fac "、ResultSet.TYPE_SCROLL_SENSITIVE、ResultSet.CONCUR_READ_ONLY); –

+0

これは機能しません –