2016-11-10 3 views
0

В моей базе данных Access есть запрос, который, я подозреваю, вызывается макросами или другими запросами. Есть ли способ запустить Find в «коде» всех макросов и/или запросов, чтобы искать текстовую строку (в данном случае - имя запроса)?Как выполнить поиск через макросы доступа?

+0

http://stackoverflow.com/questions/1609548/ms-access-global-search-for-keyword-in-queries-forms-reports - не уверен, что версия FindAndReplace 2010 будет работать в 2013 году. – Andre

ответ

1

это список всех таблиц & запросы:

SELECT IIf([type] = 5, "Query", "Table") AS [Object type] 
    ,MSysQueries.Flag AS [Query type] 
    ,MSysObjects.NAME 
    ,MSysObjects.Id 
    ,MSysObjects.Type 
FROM MSysObjects 
LEFT JOIN MSysQueries ON MSysObjects.Id = MSysQueries.ObjectId 
GROUP BY IIf([type] = 5, "Query", "Table") 
    ,MSysQueries.Flag 
    ,MSysObjects.NAME 
    ,MSysObjects.Id 
    ,MSysObjects.Type 
HAVING (
     (
      (MSysObjects.NAME) NOT LIKE "~*" 
      AND (MSysObjects.NAME) NOT LIKE "Msys*" 
      ) 
     AND (
      (MSysObjects.Type) = 1 
      OR (MSysObjects.Type) = 4 
      OR (MSysObjects.Type) = 6 
      OR (MSysObjects.Type) = 5 
      ) 
     ) 
ORDER BY IIf([type] = 5, "Query", "Table") DESC 
    ,MSysQueries.Flag 
    ,MSysObjects.NAME; 

и это один список каждого объекта и запросы, которые ссылаются на него:

SELECT [~MSys Tables & Queries].NAME AS [Object] 
    ,MSysObjects.NAME AS [Used in query] 
FROM [~MSys Tables & Queries] 
LEFT JOIN (
    MSysQueries LEFT JOIN MSysObjects ON MSysQueries.ObjectId = MSysObjects.Id 
    ) ON [~MSys Tables & Queries].NAME = MSysQueries.Name1 
GROUP BY [~MSys Tables & Queries].NAME 
    ,MSysObjects.NAME 
ORDER BY [~MSys Tables & Queries].NAME 
    ,MSysObjects.NAME; 

Я не знаю, как искать через Макросы так же. Кроме того, я не уверен, что это всегда подбирает объекты, используемые в запросах Union.

Я надеюсь, что это даст вам место, где вы начинаете.

+0

Благодарю. Второй дал мне ошибку, пока я не понял, что мне нужно сохранить первый с именем «~ MSys Tables & Queries». –

0

Вы можете установить надстройку бесплатного доступа Access Dependency Checker, он может искать строки по всем объектам.

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