Sql server 2005 - changer le type de donnees de toutes les colonnes ayant un nom fourni

Soyez le premier à donner votre avis sur cette source.

Snippet vu 7 569 fois - Téléchargée 26 fois

Contenu du snippet

Lors d'utilisation d'outil générique de création de tables de données, on peut se retrouver avec des type de données qui doivent être changé pour améliorer les performances.
De ce fait, ce script permet d'effectuer ce changement de type automatiquement sur tous les champs ayant le nom fourni.

Source / Exemple :


USE [MaBase]
GO

DECLARE @NewType			AS VARCHAR(50)
DECLARE @ColumnName		AS VARCHAR(50)
DECLARE @SQLCMD		AS VARCHAR(MAX)	

SET @NewType = 'VARCHAR(14)'
SET @ColumnName = 'MONCHAMP'

DECLARE CURSORLISTCHEMA CURSOR FOR SELECT 'ALTER TABLE ['+ TABLE_SCHEMA +'].['+ TABLE_NAME +'] ALTER COLUMN '+ COLUMN_NAME +' '+ @NewType 
					FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME = @ColumnName

OPEN CURSORLISTCHEMA
FETCH NEXT FROM CURSORLISTCHEMA INTO @SQLCMD
WHILE (@@fetch_status >= 0) 
	BEGIN 
		PRINT @SQLCMD
		EXECUTE(@SQLCMD)
		FETCH NEXT FROM CURSORLISTCHEMA INTO @SQLCMD
	END
CLOSE CURSORLISTCHEMA
DEALLOCATE CURSORLISTCHEMA

Conclusion :


Bon coding

Romelard Fabrice [MVP]

A voir également

Ajouter un commentaire

Commentaire

Tukkkko
Messages postés
29
Date d'inscription
lundi 22 mars 2004
Statut
Membre
Dernière intervention
29 janvier 2007
-
Il fallait vraiment y penser, heureusement qu'on a des MVP productifs :D

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.