Поделиться через


Предложение IN (Microsoft Access SQL)

Область применения: Access 2013 | Access 2016

Определяет таблицы в любой внешней базе данных, к которой может подключаться ядро СУБД Microsoft Access, например в базе данных dBASE или Paradox или внешней базе данных ядра СУБД Microsoft Access.

Синтаксис

Определение целевой таблицы

[SELECT | INSERT] INTO назначение IN { path | [" path " " " type "] | ["" [ type; DATABASE = путь ]]}

Определение исходной таблицы

FROM tableexpression IN { path | [" path " " " type "] | ["" [ type; DATABASE = путь ]]}

Инструкция SELECT, содержащая предложение IN, состоит из следующих частей:

Part Описание
destination Имя внешней таблицы, в которую вставляются данные.
tableexpression Имя таблицы или таблиц, из которых извлекаются данные. Этот аргумент может быть одним именем таблицы, сохраненным запросом или соединением, полученным в результате ВНУТРЕННЕГО СОЕДИНЕНИЯ, ЛЕВОГО СОЕДИНЕНИЯ или ПРАВОГО СОЕДИНЕНИЯ.
path Полный путь к каталогу или файлу, содержащим таблицу.
type Имя типа базы данных, используемого для создания таблицы , если база данных не является базой данных ядра СУБД Microsoft Access (например, dBASE III, dBASE IV, Paradox 3.x или Paradox 4.x).

Замечания

Используйте in для одновременного подключения только к одной внешней базе данных.

В некоторых случаях аргумент path ссылается на каталог, содержащий файлы базы данных. Например, при работе с таблицами базы данных dBASE, Microsoft FoxPro или Paradox аргумент path указывает каталог, содержащий DBF- или DB-файлы. Имя файла таблицы является производным от аргумента назначения или табличного выражения .

Чтобы указать базу данных ядра СУБД, отличной от Microsoft Access, добавьте точку с запятой (;) в имя и заключите его в одинарные (' ') или двойные (" ") кавычки. Например, допустимо значение "dBASE IV;" или "dBASE IV;".

Вы также можете использовать зарезервированное слово DATABASE, чтобы указать внешнюю базу данных. Например, следующие строки указывают одну и ту же таблицу:

…FROM Table IN "" [dBASE IV; DATABASE=C:\DBASE\DATA\SALES;]; 

…FROM Table IN "C:\DBASE\DATA\SALES" "dBASE IV;"

Пример

В следующем примере показано, как использовать предложение IN для получения данных из внешней базы данных. В каждом примере предположим, что гипотетическая таблица Customers хранится во внешней базе данных.

База данных ядра СУБД Microsoft Access

SELECT CustomerID
FROM Customers
IN OtherDB.mdb
WHERE CustomerID Like "A*";

dBASE III или IV

Чтобы получить данные из таблицы dBASE III, замените "dBASE III;" на "dBASE IV;".

SELECT CustomerID
FROM Customer
IN "C:\DBASE\DATA\SALES" "dBASE IV;"
WHERE CustomerID Like "A*";

dBASE III или IV с использованием синтаксиса базы данных

SELECT CustomerID
FROM Customer
IN "" [dBASE IV; Database=C:\DBASE\DATA\SALES;] 
WHERE CustomerID Like "A*";

Paradox 3.x или 4.x

Чтобы получить данные из таблицы Paradox версии 3.x, замените "Paradox 3.x;" на "Paradox 4.x;".

SELECT CustomerID
FROM Customer
IN "C:\PARADOX\DATA\SALES" "Paradox 4.x;"
WHERE CustomerID Like "A*";

Paradox 3.x или 4.x с использованием синтаксиса базы данных

SELECT CustomerID
FROM Customer
IN "" [Paradox 4.x;Database=C:\PARADOX\DATA\SALES;] 
WHERE CustomerID Like "A*";

Лист Microsoft Excel

SELECT CustomerID, CompanyName
FROM [Customers$] 
IN "c:\documents\xldata.xls" "EXCEL 5.0;"
WHERE CustomerID Like "A*"
ORDER BY CustomerID;

Именованный диапазон на листе

SELECT CustomerID, CompanyName
FROM CustomersRange
IN "c:\documents\xldata.xls" "EXCEL 5.0;"
WHERE CustomerID Like "A*"
ORDER BY CustomerID;

См. также

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.