OVH Cloud OVH Cloud

Fonction utilisateur SQL Server

3 réponses
Avatar
frederic.facca
Bonjour à tous,
voilà mon probléme : J'ai crée dans une base de données SQL Server 2000 des
fonctions utilisateurs qui fonctionnent parfaitement. La plupart de ces
fonctions sont trés simples puisque je leur passe un paramétre et elle me
renvoie une chaine de caractéres (de façon générale c'est la clé d'un
enregistrement que je passe à ma fonction et celle-ci me renvoie le libellé
correspondant).
Ma question est simple : Comment utiliser ces fonctions dans du code VB.
Si je fais un set adors = adoconnection.execute mafonction(Id), le redordset
est vide. et là je comprends pas pourquoi.
Merci à tous pour votre aide.

Fred.

3 réponses

Avatar
Adam Pietrasiewicz
<<< Attention - mon adresse dans l'entete de ce message >>>
<<< est une adresse ANTISPAM - pour m'ecrire cliquez sur >>>
<<< http://www.cerbermail.com/?DQr0g2Y88R >>>
=================================================== Le 27 stycznia 2004 21:06:25 frederic.facca a ecrit dans un message
news:



Bonjour a tous,
voila mon probléme : J'ai crée dans une base de données SQL Server 2000 des
fonctions utilisateurs qui fonctionnent parfaitement. La plupart de ces
fonctions sont trés simples puisque je leur passe un paramétre et elle me
renvoie une chaine de caractéres (de façon générale c'est la clé d'un
enregistrement que je passe a ma fonction et celle-ci me renvoie le libellé
correspondant).
Ma question est simple : Comment utiliser ces fonctions dans du code VB.
Si je fais un set adors = adoconnection.execute mafonction(Id), le redordset
est vide. et la je comprends pas pourquoi.
Merci a tous pour votre aide.



Je n'utilise pas SQL Server, mais Sybase, mais je crois que c'est
semblable.

Dans le cas d'utilisation d'un controle ADO, je fais:

Adodc1.recordsource = "NomDeLaFonction(" & Parametre & ")"

et dans le cas de rs declare

rs.open "NomDeLaFonction(" & Parametre & ")"

et d'habitude ca marche parfaitement bien. Et c'est pareil pour les
procedures placees sur le serveur.


--
Adam Pietrasiewicz
Pologne
---
Ce message vous a ete apporte par Le Pigeon
http://www.amsoft.com.pl/golabek
Avatar
Zoury
Salut!

pour compléter la réponse a Adam, voici un exemple d'appel de procédure
stockées... je ne sais pas si les fonctions peuvent etre utilisée de la meme
façons.. en esperant que ça t'aidera :
http://groups.google.com/groups?threadm=O1CwJ543DHA.3936%40TK2MSFTNGP11.phx.gbl

--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic
http://faq.vb.free.fr/?rubrique=0 - http://www.mvps.org/vbnet/
http://www.mentalis.org/agnet/apiguide.shtml - http://www.mztools.com/

Merci de poster les réponses au groupe afin d'en faire profiter a tous
Avatar
frederic.facca
Cher Adam,
pour une procédure ta méthode fonctionne correctement, mais pour une
fonction le recordset est toujours vide.
Je te remercie pour ton aide.

Frédéric.

"Adam Pietrasiewicz" a écrit dans le
message de news:
<<< Attention - mon adresse dans l'entete de ce message >>>
<<< est une adresse ANTISPAM - pour m'ecrire cliquez sur >>>
<<< http://www.cerbermail.com/?DQr0g2Y88R >>>
=================================================== > Le 27 stycznia 2004 21:06:25 frederic.facca a ecrit dans un message
news:

>
>
> Bonjour a tous,
> voila mon probléme : J'ai crée dans une base de données SQL Server 2000


des
> fonctions utilisateurs qui fonctionnent parfaitement. La plupart de ces
> fonctions sont trés simples puisque je leur passe un paramétre et elle


me
> renvoie une chaine de caractéres (de façon générale c'est la clé d'un
> enregistrement que je passe a ma fonction et celle-ci me renvoie le


libellé
> correspondant).
> Ma question est simple : Comment utiliser ces fonctions dans du code VB.
> Si je fais un set adors = adoconnection.execute mafonction(Id), le


redordset
> est vide. et la je comprends pas pourquoi.
> Merci a tous pour votre aide.

Je n'utilise pas SQL Server, mais Sybase, mais je crois que c'est
semblable.

Dans le cas d'utilisation d'un controle ADO, je fais:

Adodc1.recordsource = "NomDeLaFonction(" & Parametre & ")"

et dans le cas de rs declare

rs.open "NomDeLaFonction(" & Parametre & ")"

et d'habitude ca marche parfaitement bien. Et c'est pareil pour les
procedures placees sur le serveur.


--
Adam Pietrasiewicz
Pologne
---
Ce message vous a ete apporte par Le Pigeon
http://www.amsoft.com.pl/golabek