Najděte všechny dotazy, které používají konkrétní tabulku
Právě jsme dokončili masivní konverzi databáze 39 na SQL Server pro klienta v Tennessee, což bylo docela náročné, museli jsme nejen převést všechny tabulky, ale přepnout systém z importu/exportu mezi databázemi na používání propojených tabulek. Občas jsme potřebovali zjistit, které dotazy používají tabulku, takže jsme použili následující kód, abychom rychle našli tabulku ve všech dotazech:
Public Function SearchQueries(strTableName As String)
Dim qdf As DAO.QueryDef
Dim strSQL As String
On Error GoTo ErrorHandler
Pro každý qdf v CurrentDb.QueryDefs
Application.Echo True, qdf.Name
strSQL =qdf.SQL
If InStr(1, strSQL, strTableName)> 0 Potom
Debug. Tisk qdf.Name
End If
Next qdf
Nastavit qdf =Nothing
MsgBox „Search Completed“
Exit Function
ErrorHandler:
If Err.Number =3258 Then
strSQL =“”
Resume
End If
End Function
Řekněme potřebujeme najít, kde se v kolekci dotazů používá tblCustomers, stisknutím Ctrl-G přejdeme do okna Immediate a zadáme:
?SearchQueries("tblCustomers")
Systém vrátí všechny dotazy, které byly použity ve stejném okamžitém okně:
qryCustomerList
qryOrdersByCustomer
qryOrderHistory
Doufám, že vám tento kód bude užitečný! Dejte mi vědět do komentářů, každý, kdo zanechá komentář, bude zařazen do dárkového certifikátu Amazon.com v hodnotě 25 $, pospěšte si, soutěž končí 10. 6. 2016!