Подтвердить что ты не робот

Можно ли перечислить все таблицы в базе данных msaccess с помощью sql?

Можно ли найти все таблицы в msaccess с помощью sql.

как в sqlserver

select * from sys.tables  

в sqlite

SELECT * FROM sqlite_master where type='table' 
4b9b3361

Ответ 1

Используйте MSysObjects

SELECT * FROM MSysObjects WHERE Type=1 AND Flags=0

Ответ 2

Ms Access имеет несколько системных таблиц, которые по умолчанию скрыты от списка таблиц. Вы можете показать их.

В Ms Access 2007 щелкните правой кнопкой мыши по списку таблиц и выберите Navigation Options. В нижней части формы вы найдете флажок Show System Objects. Проверьте это, и системные таблицы появятся в списке таблиц. Все они начинаются с MSys.
В качестве альтернативы, форма формы может быть активирована из меню приложения - нажмите кнопку Access options → выберите Current Database и появится кнопка Navigation Options.

Теперь вы можете исследовать структуру и содержимое и генерировать запросы всех системных таблиц с помощью инструментов MsAccess.

Как ответил Алекс, информация таблицы находится в MSysObjects

Ответ 3

Следующий запрос помог мне изменить редизайн/перенос из MS Access на С# и SQL Server.

Примечание. Объединяет ответы, предоставленные Alex K. и KTys.
Размещено здесь с убеждением, что это будет полезно кому-то другому (или самому себе, если я снова сделаю это)

SELECT
  SWITCH (
    [type]=-32764,'Report' ,
    [type]  =  1, 'Table, local' ,
    [type]  =  3, 'obj Containers' ,
    [type]  =  4, 'Table, link odbc' ,
    [type]  =  5, 'Query' ,
    [type]  =  6, 'Table, link access' ,
    [type]  =  8, 'SubDataSheets' ,
    TRUE, [type]
  ) AS [type name (or #)]
  , name AS [Table Name]
FROM
  MSysObjects 
ORDER BY 
  2, 3


Примечание от KTys (номера типов могут быть изменены)
Добавьте , * в предложение select, чтобы увидеть другие поля (например, connect); они мне не помогли.

Создано/протестировано с MS Access 2013

Ответ 4

Это обсуждение дает список значений типа. Помните, что MS не гарантирует одинаковые значения от версии к версии.

Type    TypeDesc
-32768  Form
-32766  Macro
-32764  Reports
-32761  Module
-32758  Users
-32757  Database Document
-32756  Data Access Pages
1   Table - Local Access Tables
2   Access Object - Database
3   Access Object - Containers
4   Table - Linked ODBC Tables
5   Queries
6   Table - Linked Access Tables
8   SubDataSheets

Ответ 5

SELECT name FROM MSysObjects where database <> ''

используйте этот запрос, чтобы получить имена всех связанных таблиц