Tronquer plusieurs tables dans une instruction MySQL
Est-il une possibilité de tronquer avec une instruction SQL, plusieurs tables?
Comme ceci:
truncate table #OBJ_AvailabilityTraining, #OBJ_AvailabilityHoliday, #Dates_temp;
Ce qui concerne
source d'informationauteur user2206834
Vous devez vous connecter pour publier un commentaire.
Non, vous ne pouvez tronquer une seule table avec TRUNCATE. Pour tronquer plusieurs tables, vous pouvez utiliser le T-SQL et parcourir les noms de table pour tronquer les uns à la fois.
Vous pouvez avoir tous vos noms de tables séparées par des virgules dans @tableList variable et oui, vous pouvez supprimer plusieurs tables à partir de différents schémas si ils sont préfixés.
Vous pouvez utiliser le sp_MSforeachtable procédure stockée comme suit:
Ou vous pouvez créer Instruction SQL
et de l'exécuter au-dessus de cette instruction SQL
Pas. Mais il existe une alternative:
Exemple :
Maintenant, vous avez ci-dessous les Résultats ci-dessus
Select
Requêteou vous pouvez utiliser quelque chose comme
Lien 1
Lien 2
Mise à jour:
En regardant le tableau dans votre Exemple
Query
dans votre Questiontruncate table #OBJ_AvailabilityTraining, #OBJ_AvailabilityHoliday, #Dates_temp
Je pense que vous voulez
Truncate
tous tables temporaires.Vous pouvez le faire avec un simple
Query
comme ceBonus exemple, tronquer toutes les tables dans une base de données en commençant par une chaîne...
Juste d'entrer plus facilement ce MySQL déclaration:
...
et ainsi de suite.
Changer le yourtablename avec le vôtre.
N'oubliez pas le point-virgule ;