VBScript et Connection base de bonnées ORACLE

Résolu
macromorph Messages postés 9 Date d'inscription lundi 23 mai 2005 Statut Membre Dernière intervention 13 juin 2005 - 10 juin 2005 à 15:11
calla25 Messages postés 85 Date d'inscription lundi 26 janvier 2004 Statut Membre Dernière intervention 25 octobre 2007 - 24 juin 2005 à 09:49
Bonjour,

Tout est dans le sujet, je souhaiterais faire un script vbs capable de se connecter à une base Oracle et d'effectuer des requetes plus ou moins simples, disons simples dans un début. Est-ce que qq'un saurait me dire tout d'abord comment établir une connection ? sachant que c'est une base oracle 9i et que j'ai le client oracle installé sur ma machine. S'il faut plus de précision demandez moi.

Merci d'avance

10 réponses

calla25 Messages postés 85 Date d'inscription lundi 26 janvier 2004 Statut Membre Dernière intervention 25 octobre 2007
11 juin 2005 à 12:47
salut à toi
j'ai répondu a la meme question il y a quelque jour

tout d'abord il faut que tu ailles dan sles paramétres pour pouvoir créer un lien ODBC qui va permettre à VB de "dialoguer" avec Oracle
Pour cela, je crois qu'il faut que tu ailles dans Panneau de configuration puis Outils d'administration puis Sources de données (ODBC)
aprés je ne sais plus
je suis désolé
si je retrouve comment faire je te le dis

puis dans ton code VB tu doit mettre un truc de ce genre:

Public macx As ADODB.Connection 'ma conexion à oracle
Public adors As New ADODB.Recordset 'mon recordset
Set macx = New ADODB.Connection 'initialisation de ma connexion
macx.ConnectionString = "DSN=cs2igp1;user id=emicar;password=diable" 'connection à ma base
macx.Open 'ouverture de ma base
Set adors = macx.Execute("select * from emp where login= '" & Employe & "' ", , adCmdText) 'execution de ma requete
While Not adors.EOF
msgbox(adorschauf(0))'on affiche les donnnées de ma requete
adors.MoveNext
Wend

cs2igp1 est le nom de ton service DNS
emicar est mon nom sur lequel je me logue
et enfin diable est le mot de passe associé a l'utilisateur emicar

bon courage et j'espére que je t'ai filé un petit coup de pousse
3
macromorph Messages postés 9 Date d'inscription lundi 23 mai 2005 Statut Membre Dernière intervention 13 juin 2005
13 juin 2005 à 10:15
merci beaucoup ca m'a bien aidé, par contre j'ai des problemes de curseur pour lire mon recordset :(
3
macromorph Messages postés 9 Date d'inscription lundi 23 mai 2005 Statut Membre Dernière intervention 13 juin 2005
13 juin 2005 à 10:22
c'est juste un probleme de commit il me semble
3
macromorph Messages postés 9 Date d'inscription lundi 23 mai 2005 Statut Membre Dernière intervention 13 juin 2005
13 juin 2005 à 10:47
J'ai réglé mon problème par contre j'aimerais savoir comment on récup les noms de champ d'une table ?
3

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

Posez votre question
calla25 Messages postés 85 Date d'inscription lundi 26 janvier 2004 Statut Membre Dernière intervention 25 octobre 2007
14 juin 2005 à 10:34
salut
je suis contente que ca t'as aidé
tu as réussit à faire ta connexion?
à paramétrer ODBC?

en faite si j'ai une table comme ca:
LIVRAISON
CodeChauf, Camion, Date, NBKms, NBTonnes,

tu veut récupérer le nom: codecahu,camion, date nbkms et nbtonne?

ou alors tu veu récupérer les enregistrements de la table
si c'est ca, tu doit mettre
Set adors = macx.Execute("select * From livraison", , adCmdText)
While Not adors.EOF
var1= adors!CodeChauf
var2=adors!Camion
var3= adors!Date
var4= adors!NBKms
var5=adors!NBTonnes
adors.MoveNext
Wend
adors.Close

et là tu va récupérer toutes tes données

bon courage
3
macromorph Messages postés 9 Date d'inscription lundi 23 mai 2005 Statut Membre Dernière intervention 13 juin 2005
14 juin 2005 à 13:51
merci beaucoup je vais tester çà :)
3
macromorph Messages postés 9 Date d'inscription lundi 23 mai 2005 Statut Membre Dernière intervention 13 juin 2005
14 juin 2005 à 14:03
Ca a pas l'air de marcher en premier test, var1 c'est quel type d'objet ?

sur var1= objrs!code j'ai une erreur de compilation, il me dit fin d'instruction attendue

si tu pouvais m'éclairer un peu là dessus :)
3
calla25 Messages postés 85 Date d'inscription lundi 26 janvier 2004 Statut Membre Dernière intervention 25 octobre 2007
16 juin 2005 à 11:49
salut
cela dépend, si code est un numéric (un nombre) tu doit mettre dim var1 as integer
et si c'est une chaine de caractére alors tu met string à la place de integer
mais je ne pe,se pas que ca vienne de là
il est préférableque tu mette des point d'arret pour voir sur quezl ligne de ton code est l'erreur
si elle vien effectivement de var1= objrs!code, je pense que dans ta requete il ne doit rien y avoir
du coup essaye de mettre:

on error goto erreurEnregistrement
Set adors = macx.Execute("select * From livraison", , adCmdText)
While Not adors.EOF
var1= adors!CodeChauf
var2=adors!Camion
var3= adors!Date
var4= adors!NBKms
var5=adors!NBTonnes
adors.MoveNext
Wend
adors.Close
goto fin
erreurEnregistrement:
msgbox("attention, vous n'avez rien dans votre requete")
fin:

si tu as une erreur dans ta requete (si tu n'as rien à l'interrieur) ca va mettre un message d'erreur:attention, vous n'avez rien dans votre requete

voilà voilà
bon courage
3
macromorph Messages postés 9 Date d'inscription lundi 23 mai 2005 Statut Membre Dernière intervention 13 juin 2005
23 juin 2005 à 14:01
Merci de tes conseils je m'en suis bien sorti !!
3
calla25 Messages postés 85 Date d'inscription lundi 26 janvier 2004 Statut Membre Dernière intervention 25 octobre 2007
24 juin 2005 à 09:49
si tu as d'autres problémes n'hesites pas
3
Rejoignez-nous