VB.NET - Exécution d'un script sql en SQLPLUS

Fermé
seeleheil Messages postés 4 Date d'inscription vendredi 6 mai 2011 Statut Membre Dernière intervention 30 juin 2011 - 6 mai 2011 à 17:25
seeleheil Messages postés 4 Date d'inscription vendredi 6 mai 2011 Statut Membre Dernière intervention 30 juin 2011 - 10 mai 2011 à 15:21
Bonjour,

Je suis nouveau sur le forum, cependant je lis souvent les interventions pour régler des problèmes que je rencontre lors de ma programmation. Et là, pour la première fois depuis 4 ans, je n'ai pas trouvé réponse claire à mon dilemme, alors je me tourne vers vous tous.

Alors voilà, je veux créer un objet Process et un objet ProcessStartInfo à fin de pouvoir me connecter à SQLPLUS et lancer un script sql à partir d'un fichier. Je dois me connecter à la base de données. Comment faire un tel ouvrage, et comment savoir si l'opération à bel et bien été réussi.

Jusqu'à maintenant, j'ai ce bout de code de produit, mais il ne semble pas fonctionner.

Public Function execute(ByRef requete As Requete_Adhoc) As Integer

Dim processInfo As New ProcessStartInfo
Dim process As New Process

processInfo.FileName = requete.getPreference.getPathSqlPlus

processInfo.Arguments = requete.getConfiguration.getUsernameBd & "/" & _
requete.getConfiguration.getPasswordBd & "@" & _
requete.getConfiguration.getNomBd & " @" & _
requete.getResultant

processInfo.CreateNoWindow = True
processInfo.UseShellExecute = False

process = process.Start(processInfo)

process.WaitForExit(10000)
If Not process.HasExited Then
process.Kill()
Return 1
Else
Return 0
End If


End Function

Merci :D en espérant que vous pourrez m'éclairer.

A voir également:

2 réponses

seeleheil Messages postés 4 Date d'inscription vendredi 6 mai 2011 Statut Membre Dernière intervention 30 juin 2011
9 mai 2011 à 13:45
Personne?
S.v.p. un petit coup de pouce serait bienvenu.
0
seeleheil Messages postés 4 Date d'inscription vendredi 6 mai 2011 Statut Membre Dernière intervention 30 juin 2011
Modifié par seeleheil le 10/05/2011 à 15:22
Bon, je suis arrivé à la solution tout seul et je vais vous la partager d'un coup que quelqu'un d'autre arrive à ce problème et a besoin de la solution rapidement.


Dim process As New System.Diagnostics.Process 
   process.StartInfo.FileName = Path_SQL_PLUS_Exe 
   process.StartInfo.Arguments = "-S " & _
                            Username & _ 
                            PW &  "@" & _ 
                            Nom_Bd & " @" & _ 
                            Path_Script_Sql_A_Effectuer & " " & _ 
                            Path_Du_Output_Si_Vous_En_Avez_Un  'ca peut être un csv

        process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden 
        process.Start() 
        process.WaitForExit(5000) 
        process.Close() 


Et voilà le tour est jouer.
0