У меня есть база данных Microsoft Access 2010, которая включает таблицы «Заказы» и «Заказчики». Первичная таблица - таблица бронирований. Таблица Customer связана с таблицей Bookings через ее идентификатор клиента, который является внешним ключом в таблице Bookings. Я хочу получить адрес электронной почты клиента, связанный с определенным бронированием. Тем не менее, сообщение об ошибке синтаксиса продолжает появляться, и я не могу сказать, где ошибка в SQL.
Это для моей курсовой работы по информатике. Мне нужно сделать систему бронирования номеров в отелях. Я пытаюсь отправить автоматические электронные письма-напоминания клиенту за неделю до того, как они должны прибыть для бронирования. Я программирую это в VB.Net 2010 Express, и для него настроена база данных Microsoft Access 2010.
- Я несколько раз проверил все имена таблиц и столбцов, но ни одно из них не написано неправильно.
- Я просмотрел учебные пособия Khan Academy по объединениям и использовал интерфейс SQLite для проверки своего запроса. Это работает там, но не в моей системе.
Вот мой код:
Imports System.Data.OleDb
Dim CN As OleDbConnection
Dim DR As OleDbDataReader
Dim SQL As String
Sub OpenDatabase()
CN = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\Coursework Prototype Database.mdb;")
CN.Open()
End Sub
Public Sub ExecuteSQL()
Dim CM As New OleDbCommand(SQL, CN)
DR = CM.ExecuteReader
End Sub
Sub RetrieveCustomerEmail()
OpenDatabase()
SQL = ("SELECT tblCustomer.Email_Address FROM tblBookings JOIN tblCustomer ON tblBookings.CustomerID = tblCustomer.CustomerID Where tblBookings.BookingID = 1")
ExecuteSQL()
DR.Read()
Dim CustomerEmail As String = DR.Item("Email_Address").ToString
CN.Close()
End Sub
Я ожидал, что результатом будет адрес электронной почты, но вместо этого я получил сообщение об ошибке синтаксиса с текстом
Синтаксическая ошибка в предложении FROM.