[SQL SERVER] Ajout d'une colonne en PS...mais inutilisable

Ajout d'une colonne en PS...mais inutilisable [SQL SERVER] - SQL/NoSQL - Programmation

Marsh Posté le 03-02-2010 à 18:39:57    

Bonsoir,
 
J'ai un petit soucis avec SQL 2000.
 
Pour un système d'import de csv à la structure inconnue, je passe par des tables temporaires et des ajouts de colonnes en dynamique. Bref.
 
Lorsque je fais :

Code :
  1. alter table #structure add ID_TEMP int  identity
  2. select * from #structure


j'ai bien tous mes champs, avec ID_TEMP en dernier
 
 
Par contre si je fais  
 

Code :
  1. alter table #structure add ID_TEMP int  identity
  2. select *, ID_TEMP from #structure


J'ai :
 
Serveur : Msg 207, Niveau  16, État 3, Procédure Integration_Fichier_Envoi, Ligne 64
'ID_TEMP' : nom de colonne incorrect.
 
 
J'ai pourtant des colonnes créées plus tôt dans le code qui ne posent pas de soucis...
 
 
Help donc,
 
Merci


Message édité par chapi le 03-02-2010 à 18:40:24

---------------
I drive at 88mph ! Just in case...
Reply

Marsh Posté le 03-02-2010 à 18:39:57   

Reply

Marsh Posté le 04-02-2010 à 09:18:10    

Petite chose amusante...
 
Si je "déverse" la table temporaire #structure dans une autre table temporaire genre #structure2 avec un select into, la requete fonctionne sur cette dernière et la colonne est connue :)


---------------
I drive at 88mph ! Just in case...
Reply

Marsh Posté le 04-02-2010 à 09:39:03    

je ne connais pas grand chose a ms sql, mais a mon avis si tu scindes les deux dans deux ps distinctes ca devrait le faire.

Reply

Marsh Posté le 04-02-2010 à 09:44:54    

??? Je ne vois pas trop l'intérêt ?


---------------
I drive at 88mph ! Just in case...
Reply

Marsh Posté le 04-02-2010 à 09:51:58    

pour info, ça fonctionne très bien avec SQL Server 2008, possible donc que ça provienne d'un bug de la version 2000


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 04-02-2010 à 09:56:25    

Harkonnen a écrit :

pour info, ça fonctionne très bien avec SQL Server 2008, possible donc que ça provienne d'un bug de la version 2000


Ce que je ne m'explique vraiment pas c'est que ça marche à certains endroits.
 
J'ai un split d'un champs qui par la suite crée des colonnes dans cette table temp, et elles sont exploitables par la suite....c'est à n'y rien comprendre :D
 
Bref, je contourne le truc en dupliquant la table temporaire puis en droppant la premiere, mais c'est étrange :)


---------------
I drive at 88mph ! Just in case...
Reply

Marsh Posté le 04-02-2010 à 10:40:49    

chapi a écrit :

??? Je ne vois pas trop l'intérêt ?


 
le soucis vient probablement du fait qu'il utilise le dictionnaire des objets utilisés lors de l'entrée dans la ps, donc si dans une ps tu fais les modifs, dans une deuxième tes select, ca a des chances de passer.
tu n'as pas intérêt a contourner ton problème?

Reply

Marsh Posté le 04-02-2010 à 11:13:38    

casimimir a écrit :


 
le soucis vient probablement du fait qu'il utilise le dictionnaire des objets utilisés lors de l'entrée dans la ps, donc si dans une ps tu fais les modifs, dans une deuxième tes select, ca a des chances de passer.
tu n'as pas intérêt a contourner ton problème?


Je l'ai contourné en dupliquant la table comme expliqué plus haut.
 
D'autres colonnes ajoutées dynamiquement, fonctionnent sans blem dans la ps :)


---------------
I drive at 88mph ! Just in case...
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed