Comment integer dans un module la connection, le datareader

Signaler
Messages postés
29
Date d'inscription
jeudi 5 mai 2005
Statut
Membre
Dernière intervention
2 octobre 2013
-
Messages postés
2375
Date d'inscription
jeudi 12 juillet 2001
Statut
Modérateur
Dernière intervention
15 décembre 2018
-
il se trouve qu'avec vb8, il faut pour chaque form, initialisser la connection avec le chemin. comment, pour eviter les reecritures de code integrer le tout dans un module:
connection, lecture d'un datareader, manipulation de la base de donnée. C'est une vraie galére vb8. Voulez vous me faire un exemple de module ou de classe ou la connexion à la base de donnée ou la manipulation des données peuvent ne pas etre réécrites. Merci d'avance. Je souffre.

2 réponses

Messages postés
6063
Date d'inscription
dimanche 13 avril 2003
Statut
Modérateur
Dernière intervention
15 juillet 2011
37
salut,

Il suffit de faire une classe en singleton ou une classe static
mais le singleton semble le plus adapté
et de mettre en constante static ta chaine de connexion
Messages postés
2375
Date d'inscription
jeudi 12 juillet 2001
Statut
Modérateur
Dernière intervention
15 décembre 2018
22
Bonsoir,
Je ne vois se qui te pose des soucis je ne comprend pas vraiment mais voici une classe qui te permet d'obtenir ton instance, d'ouvrir et de fermer la connexion (ex pour Oracle).

Imports

System.Data.OracleClient
Public

Class Connection

Const DB_CONNECTION_STRING
As
String =
"taChaineDeConnexion"

Private
Shared m_OracleCnt
As
New OracleConnection

Public
Shared
ReadOnly
Property GetInstance()

Get

Return m_OracleCnt

End
Get

End
Property

Public
Shared
Sub Open()

If m_OracleCnt.State <> ConnectionState.Closed
Thenm_OracleCnt.Close()

End
Ifm_OracleCnt.ConnectionString = DB_CONNECTION_STRING

m_OracleCnt.Open()

End
Sub

Public
Shared
Sub Close()m_OracleCnt.Close()

End
SubEnd

Class

-------------------------------
Après voici un exemple dans tes formulaires windows ou autres pour l'utiliser.

Connection.Open()

Using
OracleCmd
As
New OracleCommand()OracleCmd.Connection = Connection.GetInstance

OracleCmd.CommandText =

"SELECT...."

Dim OracleRdr
As OracleDataReader = OracleCmd.ExecuteReader

While (OracleRdr.Read)Debug.Write(OracleRdr.GetOracleString(0).Value)

Debug.write(OracleRdr.GetOracleString(1).Value)

End
While

End
Using

Connection.Close()