Итак, у меня есть база данных с тремя столбцами: Производство, Приспособление и Режим
Я использую приведенный ниже код для создания каскадных комбинированных списков в моей форме.
Imports System.Data.OleDb
Public Class Add_Fixtures
Dim con As New OleDbConnection
Dim constring As String
Dim cmd As New OleDbCommand
Dim dr As OleDbDataReader
Dim cmd1 As New OleDbCommand
Dim dr1 As OleDbDataReader
Dim cmd2 As New OleDbCommand
Dim dr2 As OleDbDataReader
Private Sub Add_Fixtures_Load(sender As Object, e As EventArgs) Handles Me.Load
constring = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|/FixtureLibrary.accdb"
With con
.ConnectionString = constring
.Open()
End With
With cmd
.Connection = con
.CommandType = CommandType.Text
.CommandText = "SELECT DISTINCT Fixtures.Manufacture from Fixtures;"
End With
dr = cmd.ExecuteReader()
While dr.Read
cbManufacture.Items.Add(dr("Manufacture"))
End While
With cmd1
.Connection = con
.CommandType = CommandType.Text
.CommandText = "SELECT from Fixtures where [Manufacture]='" & Me.cbManufacture.Text & "';"
End With
dr1 = cmd1.ExecuteReader()
While dr1.Read
cbFixture.Items.Add(dr1("Fixture"))
End While
With cmd2
.Connection = con
.CommandType = CommandType.Text
.CommandText = "SELECT DISTINCT Fixtures.Mode from Fixtures where [Fixture] ='" & Me.cbFixture.Text & "';"
End With
dr2 = cmd2.ExecuteReader()
While dr2.Read
cbMode.Items.Add(dr2("Mode"))
End While
End Sub
End Class
Но в этой строке: dr1 = cmd1.ExecuteReader ()
Я получаю эту ошибку
System.Data.OleDb.OleDbException: 'Оператор SELECT включает зарезервированное слово или имя аргументачто написано с ошибкой или отсутствует, или пунктуация неправильная. '
У кого-нибудь есть идеи, почему или чем это вызвано?
Приветствия