bgcwaterman Ответов: 2

Нужна помощь по исправлению ошибки в SQL select statment.


Я пытаюсь объединить 2 таблицы и отобразить их в datagrid. Я использую базу данных Access и инструкцию SQL. Я получаю "синтаксическую ошибку в предложении FROM". Я не могу понять почему.

Доступ к базе данных, 2 таблицы "tblMeter" и "tblOwner".

Что я уже пробовал:

Вот что у меня есть.

.CommandText = "SELECT tblMeter.MeterNo, tblMeter.MeterCusAcctNo, tblMeter.MeterOwnerID" &
                                  " FROM tblMeter" &
                                  " JOIN tblOwner" &
                                  " WHERE tblMeter.MeterOwnerID = tblOwner.OwnerID;"


Это, вероятно, просто, но это намекает на меня. Заранее спасибо.

F-ES Sitecore

Посмотрите синтаксис для "JOIN", попробуйте указать поля, которые соответствуют в предложении join, а не where.

2 Ответов

Рейтинг:
9

Richard Deeming

Воспользуйся ON для условий соединения, а не WHERE.

.CommandText = "SELECT tblMeter.MeterNo, tblMeter.MeterCusAcctNo, tblMeter.MeterOwnerID" &
               " FROM tblMeter" &
               " JOIN tblOwner" &
               " ON tblMeter.MeterOwnerID = tblOwner.OwnerID;"
Выполнение соединений с помощью Access SQL | Microsoft Docs[^]


bgcwaterman

Спасибо за помощь. Я заменил кнопку "куда" на " вкл.". Все равно ничего не вышло. Я прочитал статью, в которой заметил, что они используют внутреннее соединение, а не просто соединение. Поэтому Я заменил соединение, и это помогло мне преодолеть ошибку. Теперь мне придется доставить его в Датагрид.

Maciej Los

"Теперь мне придется доставить его в Датагрид.- ...Это уже другая история...
Пожалуйста, примите решение Ричарда (используйте зеленую кнопку), потому что оно отвечает на ваш вопрос.
Все, что вам нужно сделать сейчас, это использовать Класс OleDbDataReader[^] вместе с объект DataTable.метод Load[^]. Затем:

DataGridView.DataSource = DataTable1

Вот и все!

Maciej Los

5ed!

Рейтинг:
1

phil.o

Попробуйте заменить WHERE с ON и посмотрим, что получится :)
Access SQL: Основные понятия, словарь и синтаксис - Access[^]


Maciej Los

5!