quelqu'un a t-il déjà manipulé des procédures stockées oracle avec vb.net ?
C'est quelque chose que je fais courrament en VB 6 mais j'ai quelques soucis
dans la création des paramètres de la procédures stockées, plus exactement
dans le typage de ceux ci...
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Francois Muller
Bonjour
"tjfromparis" a écrit dans le message de news: 431f2456$0$20935$
quelqu'un a t-il déjà manipulé des procédures stockées oracle avec vb.net ?
Je le fais tous les jours avec C# .Net.. Ce doit être pareil avec VB.Net ;-))
C'est quelque chose que je fais courrament en VB 6 mais j'ai quelques soucis dans la création des paramètres de la procédures stockées, plus exactement dans le typage de ceux ci...
Quelle est ta question ?
F.
Bonjour
"tjfromparis" <tjfromparis@ifrance.com> a écrit dans le message de news:
431f2456$0$20935$626a14ce@news.free.fr...
quelqu'un a t-il déjà manipulé des procédures stockées oracle avec vb.net
?
Je le fais tous les jours avec C# .Net.. Ce doit être pareil avec VB.Net
;-))
C'est quelque chose que je fais courrament en VB 6 mais j'ai quelques
soucis dans la création des paramètres de la procédures stockées, plus
exactement dans le typage de ceux ci...
"tjfromparis" a écrit dans le message de news: 431f2456$0$20935$
quelqu'un a t-il déjà manipulé des procédures stockées oracle avec vb.net ?
Je le fais tous les jours avec C# .Net.. Ce doit être pareil avec VB.Net ;-))
C'est quelque chose que je fais courrament en VB 6 mais j'ai quelques soucis dans la création des paramètres de la procédures stockées, plus exactement dans le typage de ceux ci...
Quelle est ta question ?
F.
tjfromparis
> Je le fais tous les jours avec C# .Net.. Ce doit être pareil avec VB.Net ;-))
C'est quelque chose que je fais courrament en VB 6 mais j'ai quelques soucis dans la création des paramètres de la procédures stockées, plus exactement dans le typage de ceux ci...
Quelle est ta question ?
F.
Voila mon code VB :
Dim conn As New OracleConnection(connString) conn.Open() Dim cmd As New OracleCommand cmd.Connection = conn cmd.CommandText = "PCK_APR_TRAVAUX.PRC_LST_CENTRE" cmd.CommandType = CommandType.StoredProcedure
Dim rdr As OracleDataReader rdr = cmd.ExecuteReader() While (rdr.Read()) System.Diagnostics.Debug.Write(rdr.GetValue(0)) End While rdr.Close() conn.Close()
Le (debut) de la proc Oracle :
PROCEDURE PRC_LST_Centre (inMCStyl IN VARCHAR2, Enreg_LstCentre OUT Type_Centre) IS
BEGIN
Et le message lorsque j'execute le tout Message d'erreur avec VB.NET:
Une exception non gérée du type 'System.Data.OracleClient.OracleException' s'est produite dans system.data.oracleclient.dll Informations supplémentaires : ORA-01036: numéro/nom de variable interdit
Fonctionne trés bien avec vb6 (et windev par ex). Ce qui me perturbe c'est que la procédure stockée ci-dessus est utilisée sans problème depuis un programme en VB6.
Peut etre est-ce à cause de la declaration de la taille du paramètre passé à la proc ? (mais comment la declarer ?)
"Francois Muller" a écrit dans le message de news: %
Bonjour
"tjfromparis" a écrit dans le message de news: 431f2456$0$20935$
quelqu'un a t-il déjà manipulé des procédures stockées oracle avec vb.net ?
Je le fais tous les jours avec C# .Net.. Ce doit être pareil avec VB.Net ;-))
C'est quelque chose que je fais courrament en VB 6 mais j'ai quelques soucis dans la création des paramètres de la procédures stockées, plus exactement dans le typage de ceux ci...
Quelle est ta question ?
F.
> Je le fais tous les jours avec C# .Net.. Ce doit être pareil avec VB.Net
;-))
C'est quelque chose que je fais courrament en VB 6 mais j'ai quelques
soucis dans la création des paramètres de la procédures stockées, plus
exactement dans le typage de ceux ci...
Quelle est ta question ?
F.
Voila mon code VB :
Dim conn As New OracleConnection(connString)
conn.Open()
Dim cmd As New OracleCommand
cmd.Connection = conn
cmd.CommandText = "PCK_APR_TRAVAUX.PRC_LST_CENTRE"
cmd.CommandType = CommandType.StoredProcedure
Dim rdr As OracleDataReader
rdr = cmd.ExecuteReader()
While (rdr.Read())
System.Diagnostics.Debug.Write(rdr.GetValue(0))
End While
rdr.Close()
conn.Close()
Le (debut) de la proc Oracle :
PROCEDURE PRC_LST_Centre (inMCStyl IN VARCHAR2,
Enreg_LstCentre OUT Type_Centre)
IS
BEGIN
Et le message lorsque j'execute le tout
Message d'erreur avec VB.NET:
Une exception non gérée du type 'System.Data.OracleClient.OracleException'
s'est produite dans system.data.oracleclient.dll
Informations supplémentaires : ORA-01036: numéro/nom de variable interdit
Fonctionne trés bien avec vb6 (et windev par ex).
Ce qui me perturbe c'est que la procédure stockée ci-dessus est utilisée
sans problème depuis un programme en VB6.
Peut etre est-ce à cause de la declaration de la taille du paramètre passé à
la proc ? (mais comment la declarer ?)
"Francois Muller" <fcm_news_No_S_PAM_REPLACE_COM_BY_FR@yahoo.com> a écrit
dans le message de news: %23WuJpO9sFHA.284@TK2MSFTNGP14.phx.gbl...
Bonjour
"tjfromparis" <tjfromparis@ifrance.com> a écrit dans le message de news:
431f2456$0$20935$626a14ce@news.free.fr...
quelqu'un a t-il déjà manipulé des procédures stockées oracle avec vb.net
?
Je le fais tous les jours avec C# .Net.. Ce doit être pareil avec VB.Net
;-))
C'est quelque chose que je fais courrament en VB 6 mais j'ai quelques
soucis dans la création des paramètres de la procédures stockées, plus
exactement dans le typage de ceux ci...
> Je le fais tous les jours avec C# .Net.. Ce doit être pareil avec VB.Net ;-))
C'est quelque chose que je fais courrament en VB 6 mais j'ai quelques soucis dans la création des paramètres de la procédures stockées, plus exactement dans le typage de ceux ci...
Quelle est ta question ?
F.
Voila mon code VB :
Dim conn As New OracleConnection(connString) conn.Open() Dim cmd As New OracleCommand cmd.Connection = conn cmd.CommandText = "PCK_APR_TRAVAUX.PRC_LST_CENTRE" cmd.CommandType = CommandType.StoredProcedure
Dim rdr As OracleDataReader rdr = cmd.ExecuteReader() While (rdr.Read()) System.Diagnostics.Debug.Write(rdr.GetValue(0)) End While rdr.Close() conn.Close()
Le (debut) de la proc Oracle :
PROCEDURE PRC_LST_Centre (inMCStyl IN VARCHAR2, Enreg_LstCentre OUT Type_Centre) IS
BEGIN
Et le message lorsque j'execute le tout Message d'erreur avec VB.NET:
Une exception non gérée du type 'System.Data.OracleClient.OracleException' s'est produite dans system.data.oracleclient.dll Informations supplémentaires : ORA-01036: numéro/nom de variable interdit
Fonctionne trés bien avec vb6 (et windev par ex). Ce qui me perturbe c'est que la procédure stockée ci-dessus est utilisée sans problème depuis un programme en VB6.
Peut etre est-ce à cause de la declaration de la taille du paramètre passé à la proc ? (mais comment la declarer ?)
"Francois Muller" a écrit dans le message de news: %
Bonjour
"tjfromparis" a écrit dans le message de news: 431f2456$0$20935$
quelqu'un a t-il déjà manipulé des procédures stockées oracle avec vb.net ?
Je le fais tous les jours avec C# .Net.. Ce doit être pareil avec VB.Net ;-))
C'est quelque chose que je fais courrament en VB 6 mais j'ai quelques soucis dans la création des paramètres de la procédures stockées, plus exactement dans le typage de ceux ci...
Quelle est ta question ?
F.
Zoury
Salut ! :O)
Peut etre est-ce à cause de la declaration de la taille du paramètre passé à la proc ? (mais comment la declarer ?)
Une des signatures de la méthode Add() te permet à peu près cela.. Dim sInMCStyl As String = "10" cmd.Parameters.Add( _ New OracleParameter( _ "inMCStyl", _ OracleType.VarChar, _ sInMCStyl.Length)).Value = sInMCStyl
Personnelement, je préfères quelque chose comme ceci : '*** Public Function CreerParmt(ByVal NomParmt As String, _ ByVal Direction As ParameterDirection, _ ByVal TypeOra As OracleType, _ ByVal Valeur As Object, _ ByVal Taille As Int32) As OracleParameter
Dim p As New OracleParameter p.ParameterName = NomParmt p.Direction = Direction p.OracleType = TypeOra p.Value = Valeur p.Size = Taille Return p
End Function '***
Dim rdr As OracleDataReader rdr = cmd.ExecuteReader()
Essai d'appeler OracleDataAdapter.Fill() à la place. Ton REF CURSOR devrait être converti en DataSet (contenant un DataTable par REF CURSOR retourné) automatiquement :
Ex (non testé) : '** Dim da As New OracleDataAdapter(cmd) Dim ds As New DataSet da.Fill(ds) '**
-- Cordialement Yanick MVP pour Visual Basic
Salut ! :O)
Peut etre est-ce à cause de la declaration de la taille du paramètre passé
à la proc ? (mais comment la declarer ?)
Une des signatures de la méthode Add() te permet à peu près cela..
Dim sInMCStyl As String = "10"
cmd.Parameters.Add( _
New OracleParameter( _
"inMCStyl", _
OracleType.VarChar, _
sInMCStyl.Length)).Value = sInMCStyl
Personnelement, je préfères quelque chose comme ceci :
'***
Public Function CreerParmt(ByVal NomParmt As String, _
ByVal Direction As ParameterDirection, _
ByVal TypeOra As OracleType, _
ByVal Valeur As Object, _
ByVal Taille As Int32) As OracleParameter
Dim p As New OracleParameter
p.ParameterName = NomParmt
p.Direction = Direction
p.OracleType = TypeOra
p.Value = Valeur
p.Size = Taille
Return p
End Function
'***
Dim rdr As OracleDataReader
rdr = cmd.ExecuteReader()
Essai d'appeler OracleDataAdapter.Fill() à la place. Ton REF CURSOR devrait
être converti en DataSet (contenant un DataTable par REF CURSOR retourné)
automatiquement :
Ex (non testé) :
'**
Dim da As New OracleDataAdapter(cmd)
Dim ds As New DataSet
da.Fill(ds)
'**
Peut etre est-ce à cause de la declaration de la taille du paramètre passé à la proc ? (mais comment la declarer ?)
Une des signatures de la méthode Add() te permet à peu près cela.. Dim sInMCStyl As String = "10" cmd.Parameters.Add( _ New OracleParameter( _ "inMCStyl", _ OracleType.VarChar, _ sInMCStyl.Length)).Value = sInMCStyl
Personnelement, je préfères quelque chose comme ceci : '*** Public Function CreerParmt(ByVal NomParmt As String, _ ByVal Direction As ParameterDirection, _ ByVal TypeOra As OracleType, _ ByVal Valeur As Object, _ ByVal Taille As Int32) As OracleParameter
Dim p As New OracleParameter p.ParameterName = NomParmt p.Direction = Direction p.OracleType = TypeOra p.Value = Valeur p.Size = Taille Return p
End Function '***
Dim rdr As OracleDataReader rdr = cmd.ExecuteReader()
Essai d'appeler OracleDataAdapter.Fill() à la place. Ton REF CURSOR devrait être converti en DataSet (contenant un DataTable par REF CURSOR retourné) automatiquement :
Ex (non testé) : '** Dim da As New OracleDataAdapter(cmd) Dim ds As New DataSet da.Fill(ds) '**