Procédure stockée

cmiss16 Messages postés 21 Date d'inscription lundi 3 avril 2006 Statut Membre Dernière intervention 13 novembre 2006 - 27 oct. 2006 à 15:38
cmiss16 Messages postés 21 Date d'inscription lundi 3 avril 2006 Statut Membre Dernière intervention 13 novembre 2006 - 27 oct. 2006 à 17:28
Bonjour,


J'ai un problème... J'ai un fichier toto.sql qui contient une procédure stockée que je dois exécuter mais je ne sais pas du tout comment faire!!!! en plus la procédure stockée contient un paramètre.

Merci de votre aide


 

10 réponses

olixelle Messages postés 506 Date d'inscription vendredi 30 juillet 2004 Statut Membre Dernière intervention 3 mars 2008 2
27 oct. 2006 à 16:43
quelle base de donnée ?
as tu mis la proc stock sur ton serveur sql ?
donnes nous ta procstock ca nous aidera aussi !

Rollerman
0
cmiss16 Messages postés 21 Date d'inscription lundi 3 avril 2006 Statut Membre Dernière intervention 13 novembre 2006
27 oct. 2006 à 16:47
non c'est un fichier toto.sql que je dois exécuter.
set

ANSI_NULLS
ON

GO
CREATE

proc [dbo]
.[toto]
as

BEGIN

.....
END

Go
EXEC

toto

La base de données est sous SQL server

Je dois exécuter cette procédure stockée, récupérer les données et les écrire dans un fichier csv
0
olixelle Messages postés 506 Date d'inscription vendredi 30 juillet 2004 Statut Membre Dernière intervention 3 mars 2008 2
27 oct. 2006 à 16:57
1. tu dois compiler cette proc stock sous l'analyseur de requete pour la créer dans ta base
2. pour executer la proc stock à partir de .net, utilises un objet sql.sqlcommand avec un sqlconnection
3. tu récupères tes données dans un datareader et tu en fais ce que tu veux

Rollerman
0
cmiss16 Messages postés 21 Date d'inscription lundi 3 avril 2006 Statut Membre Dernière intervention 13 novembre 2006
27 oct. 2006 à 17:04
ok merci c'est ce que je viens de faire...
Je récupère un dataset.

J'essaie maintnant d'avoir un fichier cvs.
Mais j'obtiens
Col1
Col2
Col3
Col4

Essai1
Essai2
Essai3
Essai4

Essai1_1
Essai2_1
Essai3_1
Essai4_1

Au lieu de
Col1         Col2           Col3        Col4
Essai1       Essai2        Essai3      Essai4
Essai1_1   Essai2_1   Essai3_1   Essai4_1

Voici mon code
Tryfs New FileStream(sFileName, FileMode.OpenOrCreate, FileAccess.Write)sw

New StreamWriter(fs)

Dim table
As Data.DataTable

Dim row
As Data.DataRow

For
Each table
In ds.Tables

Dim numCols
As
Integer = table.Columns.Count

Dim i
As
Integer

For i = 0
To numCols - 1sw.WriteLine(table.Columns(i).ColumnName)

Next

For
Each row
In table.Rows

For i = 0
To numCols - 1sw.WriteLine(row(i))

Nextsw.WriteLine()

Next

Next 

sw.Flush()

sw.Close()

sw =

Nothingfs.Close()

fs =

Nothing

Catch

End
Try
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cmiss16 Messages postés 21 Date d'inscription lundi 3 avril 2006 Statut Membre Dernière intervention 13 novembre 2006
27 oct. 2006 à 17:07
Euh... J'ai trouvé mon erreur... WriteLine au lieu de Write
0
olixelle Messages postés 506 Date d'inscription vendredi 30 juillet 2004 Statut Membre Dernière intervention 3 mars 2008 2
27 oct. 2006 à 17:08
remplace ton writeline par write

Rollerman
0
cmiss16 Messages postés 21 Date d'inscription lundi 3 avril 2006 Statut Membre Dernière intervention 13 novembre 2006
27 oct. 2006 à 17:09
Merci beaucoup Rollerman
0
cmiss16 Messages postés 21 Date d'inscription lundi 3 avril 2006 Statut Membre Dernière intervention 13 novembre 2006
27 oct. 2006 à 17:18
encore une p'tite question
Dans la fonction que j'utilise pour créer le dataset la fonction createDataset attend les paramètres suivants :
   * query as string --> je mets donc le nom de ma procédure
   * params() as system.Data.SqlClient.SqlParameter -->Je mets Quoi
   * CommandType --> Stored Procedure

Sachant que le paramètre de ma fonction est un varchar
0
olixelle Messages postés 506 Date d'inscription vendredi 30 juillet 2004 Statut Membre Dernière intervention 3 mars 2008 2
27 oct. 2006 à 17:20
dim myparams as new sql.sqlparameter
myparams.add("@nom_du_parametre", valeur_du_parametre)

et tu passes myparams a ton createdataset

Rollerman
0
cmiss16 Messages postés 21 Date d'inscription lundi 3 avril 2006 Statut Membre Dernière intervention 13 novembre 2006
27 oct. 2006 à 17:28
il ne reconnait pô sql.sqlparameter
alors je fais

Dim myparams
AsNew SqlParametermyparams.ParameterName "@nom_du_parametre"myparams.Value myHost

Mais quand j'insère dans ma fonction
command(nameProcStock, myparams, Data.CommandType.StoredProcedure)

J'ai l"erreur suivante sous myParams
Value of type 'System.Data.SqlClient.SqlParameter' canoot be converted to '1-dimmensional array of System.Data.SqlClient.SqlParameter'
0
Rejoignez-nous