J'utilise SQL Advantage et j'ai besoin de savoir ce qu'est le SQL pour identifier les triggers associés à une table. Je n'ai pas la possibilité d'utiliser un autre outil donc la bonne solution SQL démodée est la réponse idéale.Comment identifiez-vous les triggers associés à une table dans une base de données sybase?
Répondre
J'ai aussi découvert que
sp_depends <object_name>
vous montrera beaucoup d'informations sur une table, y compris tous les déclencheurs qui y sont associés. En utilisant cela, avec la requête de Ray peut rendre beaucoup plus facile de trouver les déclencheurs. Combiné avec cette requête de l'article lié Ray:
sp_helptext <trigger_name>
et vous pouvez voir la définition du déclencheur:
sp_depends <trigger_name>
vous montrera également toutes les tables liées à un déclencheur
select * from sysobjects where type = 'TR'
Tiré de here.
Je crois qu'il ya est (ou du moins "était") un problème où les informations de dépendance ne sont pas toujours exactes. Par conséquent je voudrais essayer de l'approcher comme ceci:
select name
from sysobjects
where xtype='TR'
and id in (select id from syscomments where text like '%MY-TABLE-NAME%')
Bonne chance. PS-Ceci est le code non testé, laissez un commentaire si cela ne fonctionne pas, et je vais le réparer.
pour afficher les déclencheurs et créer sql pour une table:
select so.name, text
from sysobjects so, syscomments sc
where type = 'TR'
and so.id = sc.id
and text like '%TABLENAME%'
SELECT
T.name AS TableName
,O.name TriggerName
FROM sysobjects O
INNER JOIN sys.tables T ON T.object_id = O.parent_obj
WHERE O.type = 'TR' AND T.name IN ('tableNames')
ORDER BY TableName
- Ouvrez Sybase Central et accédez aux déclencheurs voir.
- Cliquez sur la colonne "Nom de l'objet" pour trier.
La colonne "Nom de l'objet" affiche apparemment la table associée au déclencheur. Faites défiler jusqu'à la table qui vous intéresse.
Je voudrais utiliser le code suivant, pour m'assurer que vous obtenez les bons objets. Depuis Sybase 16, cela ne sera plus complet, car il pourrait y avoir plus de déclencheurs du même type sur une table.
select tr.id, tr.name, tr.type, tr.crdate, tr.loginame
from sysobjects u
join sysobjects tr on tr.id in (u.instrig, u.deltrig, u.updtrig, u.seltrig)
where u.name = 'TABLENAME'
- 1. Implémentation de fonctions de triggers à base de table
- 2. Enregistrements distincts associés à une table dans SQL Server
- 3. Comment ajouter une colonne dans une table de base de données sqlite 2
- 4. données dans une table emboîtées de base de données
- 5. Copie des données d'une table dans une base de données à une autre base de données séparée
- 6. Convertir les données dans une table à une autre vue
- 7. Comment puis-je générer une arborescence à partir d'une table dans une base de données?
- 8. Comment «effacer» une table de base de données?
- 9. Attribut de base de données Nullable dans une table distincte
- 10. Comment me connecter à une base de données Sybase à partir de Windows CE à l'aide de .Net?
- 11. Script tous les objets dans une base de données dans une table
- 12. Surveiller les données dans une table
- 13. Attribution d'un nom à une table intermédiaire dans une base de données
- 14. Comment ajouter une nouvelle table répliquée à une base de données SQL Server 2005 dans une réplication de fusion?
- 15. Est-il possible d'avoir une table mysql se référant à une table dans une base de données étrangère?
- 16. Comment puis-je obtenir les dix dernières lignes dans une table de base de données Mysql?
- 17. Concevoir une base de données
- 18. Comment stocker l'objet de données table ruport dans une base de données?
- 19. CakePHP - Modèles associés dans une table de relations, affichés dans une liste déroulante?
- 20. Comment appeler un script lorsque les données d'une table changent dans Sybase 12.5?
- 21. Trouver une colonne spécifique dans une table inconnue dans une base de données?
- 22. Comment lier des données dans une base de données à mes classes de données?
- 23. sybase - showplan réduit grandement les E/S estimées en ajoutant une autre table à la requête
- 24. données Réorganiser dans une table
- 25. Migration de la base de données SQL Server vers Sybase
- 26. Taille de table maximale pour une base de données MySQL
- 27. Comment archiver une base de données MySQL?
- 28. Comptage de plusieurs entrées dans une base de données MySQL?
- 29. Comment empêcher les insertions JPA de verrouiller une table de base de données?
- 30. Est-il possible de copier les données dans une table MSSQL distante vers une table locale?
Merci Ray, j'ai cherché hier le long du temps mais je n'ai jamais trouvé cet article. Il a une abondance d'informations utiles là-bas. –
J'aurais juste ajouté ma réponse à la vôtre mais je ne peux pas éditer une réponse. Je pense que je n'ai pas vérifié le wiki de la communauté lorsque j'ai créé la question. –