2016-04-13 15 views
0

Visual Studioで3つのテーブルを使用して内部結合を実行しようとしていますが、エラーが発生しています。 2つのテーブルだけで内部結合を行うと、それは機能します。ここでVisual Studioで3つのテーブルを内部結合する

は3つのテーブルのために私のコードです:2つのテーブルを持つ

"select b.bidID, b.userID, u.userFirstName, u.userLastName, c.clientName, b.productName, b.openingDate, b.status 
from Bid b 
inner join Client c on b.clientID = c.clientID 
inner join User u on b.userID = u.userID 
where b.clientID = '" + cId + "' "; 

"select b.bidID, b.userID, c.clientName, b.productName, b.openingDate, b.status 
from Bid b 
inner join Client c on b.clientID = c.clientID 
where b.clientID = '" + cId + "' "; 
+1

を試してみてください?あなたはどのようにクエリを実行していますか? NHibernate?他のORM?どのデータベースを使用していますか? – PatrickSteele

+0

あなたのSQL文は[SQL Injection](https://www.owasp.org/index.php/SQL_Injection)の影響を受けやすい –

+0

あなたは受け取ったエラーは何ですか? – CathalMF

答えて

5

userは、MSSQLの予約キーワードです。 はあなたが取得しているエラーが含まれていなかったので、伝えることは困難ですが、私の推測では、ユーザーがSQLのキーワードであるので、あなたがエラーを取得していることだろう。この[user]

select b.bidID ,b.userID , u.userFirstName, u.userLastName ,c.clientName , b.productName , b.openingDate,b.status 
from Bid b 
inner join Client c on b.clientID=c.clientID 
inner join [User] u on b.userID=u.userID 
where b.clientID='" + cId + "' " 
1

のような角括弧でそれを使用してくださいサーバ。ユーザーを[ユーザー]に変更し、エラーがなくなるかどうか確認してください。

1

は、あなたがどのようなエラーを取得している次のSQLクエリ

select b.bidID ,b.userID , u.userFirstName, u.userLastName, c.clientName , b.productName , b.openingDate,b.status 
from ([Bid] b inner join [Client] c on b.clientID=c.clientID) 
inner join [User] u on (b.userID=u.userID) where b.clientID='" + cId + "' ; 
関連する問題