2009-10-13 3 views
0

Nous avons un utilitaire écrit en C qui lit les colonnes extraites d'une base de données en utilisant une procédure stockée et sort un fichier csv. Simple hein. Cependant, en lisant une colonne smallint, il s'écrase et n'étant pas le meilleur programmeur C de la planète, je ne peux pas le clouer. Pour contourner le problème, vous pouvez modifier le type de données dans une procédure stockée, par ex. le programme C pourrait-il "voir" la colonne comme un varchar plutôt qu'un smallint à l'exécution?Can SQL Server effectue une conversion de type au moment de l'exécution

Ceci est seulement un processus mensuel donc l'impact de faire la conversion de type n'est pas un problème.

Répondre

2

Oui, c'est possible. Vous pouvez le faire en utilisant l'opérateur CAST ou CONVERT. Par exemple:

CONVERT(varchar, MyIntColumn) AS MyIntColumn 

Cela garantira que lorsque la colonne ira au client, elle ira comme une chaîne de caractères varchar.

+0

La meilleure pratique serait de spécifier varchar (6) (ou un autre nombre, mais 6 contiendra un smallint et un signe). – gbn

Questions connexes