Comment preparer un script qui fait le remplissage des données
caspertinie
Messages postés12Date d'inscriptionjeudi 11 décembre 2008StatutMembreDernière intervention25 août 2011
-
1 sept. 2010 à 13:26
caspertinie
Messages postés12Date d'inscriptionjeudi 11 décembre 2008StatutMembreDernière intervention25 août 2011
-
1 sept. 2010 à 17:33
vb.net /// sql server///
bonjour;
je suis entrain de réaliser un projet en asp2008 et Sql Server 2005,le problème que j'ai c'est:
j'ai un champs "derniere Année de scolarité" dans une table de type datetime je veux changer le type de ce champs en integer pour garder seulement les années,donc comment je peux preparer un script qui recupere les données de ce champs et qui modifié le type de champs et ensuite le rempli par les années .
A voir également:
Comment preparer un script qui fait le remplissage des données
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 1 sept. 2010 à 14:45
Salut
Bien que tu soies sur un forum dédié au VB, je trouve un peu sévère de changer ce type de champ alors qu'il y a des fonctions qui permette de filtrer l'année - en VB, la fonction Year(laDate) renvoie l'année d'une date.
Ce champ, sous forme de date, ne te rendra t-il pas servir un jour pour y stocker ... le dernier jour de scolarité ? on ne sait jamais, ça pourrait servir.
Pour modifier le type de ton champ, je te préconise deux choix :
- Manuel et, à mon avis plus rapide :[list][*] Tu crées un nouveau champ temporairement dans ta table avec le type Integer
[*] Tu vas dans l'éditeur SQL de ta table et tu tentes ce genre de SQL :
Update maTable
Set Champ_Temporaire = Year(ChampDate)
[*] Une fois que c'est fait, tu détruis ta colonne/champ au format Date et tu renommes le champ temporaire avec le nom de l'ancien champ/list - Script :
Il va falloir :[list][*] Créer une nouvelle table avec les mêmes noms de champ, sauf celui que tu veux modifier
[*] Créer un script lisant chaque donnée de l'ancienne table, appliquant la fonction Year sur ton champ Date, puis réécrire le tout dans la nouvelle table
[*] Supprimer l'ancienne table (ou la renommer)
[*] Renommer la nouvelle table sous le nom de l'ancienne./listPour cette dernière tâche automatisée, tu peux aussi appliquer la méthode manuelle avec AlterDatabase sous SQL (me souviens plus de l'orthographe exacte de cette commande)
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)