2015-08-20 5 views
0

Итак, я совершенно новый для VBA, SQL и MS Access в целом. Я почти ожидаю, что мне расскажут, что весь мой подход здесь очень ошибочен, но здесь мы идем.MS Access SQL SELECT INTO; Отсутствует оператор

Цель:
Я в настоящее время пытаюсь печатать этикетки через Bartender с помощью доступа (людей выше, чем я предпочитаю, что более просто, используя встроенную в печати этикеток материала, чтобы начать с Пойди разберись.). Одной из особенностей моей базы данных что я хотел бы включить - это возможность дважды щелкнуть поле «Ярлык» в форме и автоматически распечатать метки только для этой конкретной записи.

Процедура:
Мое текущее понимание, чтобы сделать это, чтобы создать временную таблицу в отдельной базе данных, которая имеет информацию, необходимую для метки, а затем вызвать Бармен до вытащить данные из этой базы данных и печати этикеток. SO Я пытаюсь использовать инструкцию SQL SELECT INTO для создания этой новой таблицы. Излишне говорить, что он не работает.

Код:

 Private Sub Label_DblClick(Cancel As Integer) 

    Dim iID As Integer 
    Dim SQL As String 

    iID = [ID] 

    SQL = "SELECT [ID], [Sign 1], [Sign 2], [Destination 1], [Destination 2], [Label], [Wire #] " & _ 
       "FROM [WireMaster] WHERE [ID] = " & iID & " " & _ 
       "INTO TempData (IN G:\OPS\ZShared\PrintData.accdb)" 


    DoCmd.RunSQL SQL 

End Sub 

Ошибка:

Run-time error '3075': 

Syntax error (missing operator) in query expression '[ID] = 860 INTO 
TempData (IN G:\OPS\ZShared\PrintData.accdb)' 

Случайные другие интересные объекты:
Из того, что я понимаю, "С" и "В" линии должны быть другой наоборот? Хотя это дает мне сообщение о том, что мне нужен запрос или форму в моем запросе. Не имея [] вокруг полей (ID, Sign 1 и т. Д.), Я получаю еще одну недостающую ошибку оператора.

Я смогу распечатать его, как только создаю таблицу, поэтому я исправляю эту проблему перед добавлением команды печати.

«WireMaster» таблица в моей текущей базе данных
«TempData» является таблица Я хочу создать в базе данных PrintData.accdb

Спасибо !!

ответ

1

Типичный синтаксис SELECT INTO будет:

SQL = "SELECT [ID],[Sign 1],[Sign 2],[Destination 1],[Destination 2],[Label],[Wire #] INTO TempData IN 'G:\OPS\ZShared\PrintData.accdb' FROM [WireMaster] WHERE [ID]=" & iID 
+0

Спасибо! Но как поместить TempData в другую базу данных? –

+0

Теперь я получаю сообщение об ошибке: «Ввод запроса должен содержать хотя бы одну таблицу или запрос» –

+1

И это все! Большое спасибо вам обоим. –

0

Хм, дайте это попробовать. Скажите, как это идет

SQL = "SELECT * INTO [destination table] FROM (SELECT [ID], [Sign 1], [Sign 2], [Destination 1], [Destination 2], [Label], [Wire #] " & _ 
       "FROM [WireMaster] WHERE [ID] = " & iID & ";" 
+0

"Ошибка синтаксиса в предложении FROM" –

Смежные вопросы