0

SQL クエリに問題があります。問題は にありIN ....ますが、それを修正する方法がわかりません。これはクエリです:

SELECT *
FROM Reports, Games, Developers
WHERE Game = SpelID
  AND Developer = IDDvl
  AND Land IN[‘Japan’,‘USA’,‘UK’,‘Indië’,‘Duitsland’,‘Zweden’]

これはエラーメッセージです:

An unhandled exception of type 'System.Data.OleDb.OleDbException'
    occurred in System.Data.dll

In operator without () in query expression 'Game = SpelID AND Developer = IDDvl
    AND Land IN [‘Japan’, ‘USA’, ‘UK’, ‘Indië’, ‘Duitsland’, ‘Zweden’]'.
4

4 に答える 4

3
    dagoederen = New OleDb.OleDbDataAdapter("SELECT * FROM Reports , Games, 
Developers WHERE Game = SpelID AND Developer = IDDvl AND Land IN (‘Japan’, 
‘USA’, ‘UK’, ‘Indië’, ‘Duitsland’, ‘Zweden’)", connectie)

afterに置き換える必要があり[ ]ます()IN

于 2013-11-11T08:23:17.430 に答える
0

答えは、提供されたエラー「In operator without () in query expression」に指定されています。IN T-SQL の "[]" を "()" に置き換えます。

于 2013-11-11T08:31:00.140 に答える
0

右かっこと引用符を使用します。

SELECT * 
FROM Reports , Games, Developers 
WHERE Game = SpelID AND 
      Developer = IDDvl AND 
      Land IN ('Japan', 'USA', 'UK', 'Indië', 'Duitsland', 'Zweden')
于 2013-11-11T08:26:06.533 に答える
0

このコードに置き換えます

 Imports System.Data.OleDb
 Public Class Form1
 Private Sub cmdsql1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdsql1.Click
connectie.Open()

Dim dagoederen As Data.OleDb.OleDbDataAdapter
 dagoederen = New OleDb.OleDbDataAdapter("SELECT * FROM Reports , Games, Developers WHERE Game = SpelID AND Developer = IDDvl AND Land IN (‘Japan’, ‘USA’, ‘UK’, ‘Indië’, ‘Duitsland’, ‘Zweden’)", connectie)

 Dim dtgoederen As DataSet = New DataSet
 dagoederen.Fill(dtgoederen, "Reports")
 connectie.Close()

 dggoederen.DataSource = dtgoederen.Tables("Reports")
End Sub
End Class
于 2013-11-11T08:28:31.990 に答える