OVH Cloud OVH Cloud

Procédure stockée : Lire une colonne par son nom

3 réponses
Avatar
Jean-Nicolas BERGER
Bonjour,
Je travaille sur une connexion SQL, sur laquelle je lance une procédure
stockée de type SELECT
En entrée, l'objet System.data.SQLClient.SqlCommand.Parameters peut prendre
en identifiant une chaine contenant le nom de la variable
(....Parameters["@MonParametre"] )..
Par contre, pour ce qui concerne la récupération des différentes colonnes,
je ne trouve que la solution passant par un
System.Data.SqlClient.SqlDataReader.GetString, qui ne prend en paramètre que
le numéro de la colonne, et non pas son nom.
Y a-t-il autre chose qu'une usine à gaz pour faire un truc du genre
GetString("MA_COLONNE") ?
Merci d'avance.
JN.

3 réponses

Avatar
Sylvain Lafontaine
Oui, utilisez simplement la syntaxe: sqlDataReader ["Ma_Colonne"]

Retourne une valeur de type System.Object; vous devez donc caster de façon
appropriée ou utiliser ToString().

S. L.

"Jean-Nicolas BERGER" wrote in
message news:
Bonjour,
Je travaille sur une connexion SQL, sur laquelle je lance une procédure
stockée de type SELECT
En entrée, l'objet System.data.SQLClient.SqlCommand.Parameters peut
prendre en identifiant une chaine contenant le nom de la variable
(....Parameters["@MonParametre"] )..
Par contre, pour ce qui concerne la récupération des différentes colonnes,
je ne trouve que la solution passant par un
System.Data.SqlClient.SqlDataReader.GetString, qui ne prend en paramètre
que le numéro de la colonne, et non pas son nom.
Y a-t-il autre chose qu'une usine à gaz pour faire un truc du genre
GetString("MA_COLONNE") ?
Merci d'avance.
JN.



Avatar
Jean-Nicolas BERGER
Nickel, exactement ce que je cherchais, et qui plus est à un endroit où je
ne l'aurais jamais cherché.
Merci beaucoup.
JN.

"Sylvain Lafontaine" <sylvain aei ca (fill the blanks, no spam please)> a
écrit dans le message de news:
Oui, utilisez simplement la syntaxe: sqlDataReader ["Ma_Colonne"]

Retourne une valeur de type System.Object; vous devez donc caster de façon
appropriée ou utiliser ToString().

S. L.

"Jean-Nicolas BERGER" wrote in
message news:
Bonjour,
Je travaille sur une connexion SQL, sur laquelle je lance une procédure
stockée de type SELECT
En entrée, l'objet System.data.SQLClient.SqlCommand.Parameters peut
prendre en identifiant une chaine contenant le nom de la variable
(....Parameters["@MonParametre"] )..
Par contre, pour ce qui concerne la récupération des différentes
colonnes, je ne trouve que la solution passant par un
System.Data.SqlClient.SqlDataReader.GetString, qui ne prend en paramètre
que le numéro de la colonne, et non pas son nom.
Y a-t-il autre chose qu'une usine à gaz pour faire un truc du genre
GetString("MA_COLONNE") ?
Merci d'avance.
JN.







Avatar
Fred
"Jean-Nicolas BERGER" a écrit dans
le message de news:
Nickel, exactement ce que je cherchais, et qui plus est à un endroit où je
ne l'aurais jamais cherché.
Merci beaucoup.
JN.

"Sylvain Lafontaine" <sylvain aei ca (fill the blanks, no spam please)> a
écrit dans le message de news:
Oui, utilisez simplement la syntaxe: sqlDataReader ["Ma_Colonne"]

Retourne une valeur de type System.Object; vous devez donc caster de
façon appropriée ou utiliser ToString().

S. L.

"Jean-Nicolas BERGER" wrote in
message news:
Bonjour,
Je travaille sur une connexion SQL, sur laquelle je lance une procédure
stockée de type SELECT
En entrée, l'objet System.data.SQLClient.SqlCommand.Parameters peut
prendre en identifiant une chaine contenant le nom de la variable
(....Parameters["@MonParametre"] )..
Par contre, pour ce qui concerne la récupération des différentes
colonnes, je ne trouve que la solution passant par un
System.Data.SqlClient.SqlDataReader.GetString, qui ne prend en paramètre
que le numéro de la colonne, et non pas son nom.
Y a-t-il autre chose qu'une usine à gaz pour faire un truc du genre
GetString("MA_COLONNE") ?
Merci d'avance.
JN.











Bonsoir,
Il y a aussi GetOrdinal qui renvoie l'indice colonne en fonction de son nom.