Access
 sql >> Base de données >  >> RDS >> Access

Rechercher toutes les requêtes qui utilisent une table particulière

Rechercher toutes les requêtes qui utilisent une table particulière

Nous venons de terminer une conversion massive de 39 bases de données vers SQL Server pour un client du Tennessee, ce qui était assez difficile. Nous avons dû non seulement migrer toutes les tables, mais également faire passer le système de l'importation/exportation entre les bases de données à l'utilisation de tables liées à la place. Parfois, nous avions besoin de trouver quelles requêtes utilisaient une table, nous avons donc utilisé le code suivant pour trouver rapidement une table dans toutes les requêtes :
Public Function SearchQueries(strTableName As String)
Dim qdf As DAO.QueryDef
Dim strSQL As String
On Error GoTo ErrorHandler

Pour chaque qdf dans CurrentDb.QueryDefs
Application.Echo True, qdf.Name
strSQL =qdf.SQL
If InStr(1, strSQL, strTableName)> 0 Then
Debug. Imprimer qdf.Nom
Fin Si
Suivant qdf

Définir qdf =Rien
MsgBox "Recherche terminée"

Exit Function
ErrorHandler :
If Err.Number =3258 Then
strSQL =""
Resume
End If
End Function
Disons nous devons trouver où tblCustomers est utilisé dans la collection de requêtes, nous appuierions sur Ctrl-G pour accéder à la fenêtre Exécution et taper :
?SearchQueries("tblCustomers")
Le système renverra toutes les requêtes utilisées dans la même fenêtre immédiate :
qryCustomerList
qryOrdersByCustomer
qryOrderHistory

J'espère que ce code vous sera utile ! Faites-moi savoir dans les commentaires, toute personne laissant un commentaire recevra un chèque-cadeau Amazon.com de 25 $, dépêchez-vous, le concours se termine le 10/06/16 !