CONNECTION SUR BASE ORACLE AVEC DATASET

Résolu
inforedaster Messages postés 9 Date d'inscription mercredi 21 décembre 2005 Statut Membre Dernière intervention 28 septembre 2008 - 14 sept. 2008 à 02:22
inforedaster Messages postés 9 Date d'inscription mercredi 21 décembre 2005 Statut Membre Dernière intervention 28 septembre 2008 - 17 sept. 2008 à 12:01
Bonjour,

je viens de finir un mini projet de gestion hôtelière avec VB.NET mais on utilisant la DATA READER que je me trouve comme un handicape pour bien manipuler la base de données sous oracle

j'ai décider de travailler avec une DATASET  avec une base de donnée oracle!!!!

Mais le problème c'est que je ne sais pas comment faire la connexion à la base de donnée Oracle ni comment manipuler les données avec.
Est ce qu'il y a quelqu'un qui peut m’aider pour avoir la méthode en commençant par la chaîne de connexion jusqu'a la mise à jour des données sur la base de donnée oracle en local <?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>

6 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
17 sept. 2008 à 11:43
Il n'y a normalement pas d'ordre dans les enregistrements d'une base de données.
Suivant les moteurs et les configurations, l'affichage par défaut se fera selon l'ordre de création, de l'ordre de la clé primaire, ....

Cependant, tu peux indiquer l'ordre de tri dans lequel tu souhaite récupérer tes enregistrement dans ta requette Select

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
3
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
14 sept. 2008 à 12:09
Avec .Net, quelque soit la base de données utilisée, les données se manipulent exactement de la même façon.

Seules les classes utilisées et les chaines de connections changent

Pour des bases SQLServer, on utilise les classes de System.Data.SQLClient
Pour des bases Oracle, on utilise les classes de System.Data.OracleClient
Pour les autres bases, on utilise les classes de System.Data.OleDb
Enfin, quelques soient les bases, en liaison ODBC on utilise les classes de System.Data.ODBC

Pour les chaines de connections, tout est sur ce site --> http://www.connectionstrings.com/default.aspx

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
inforedaster Messages postés 9 Date d'inscription mercredi 21 décembre 2005 Statut Membre Dernière intervention 28 septembre 2008
15 sept. 2008 à 12:28
Merci pour votre réponse mais ce que vous avez donner comme information suffit pas avoir une connexion avec une table sur une base de données oracle ce que j'avais besoin c'est le suivant :



' Déclaration Objet Connexion








Private
ObjetConnection

As
OracleConnection


' Déclaration Objet Commande






Private
ObjetCommand

As
OracleCommand


' Déclaration Objet DataAdapter






Private
ObjetDataAdapter

As
OracleDataAdapter


' Déclaration Objet DataSet






Private
ObjetDataSet

As



New
DataSet()

'Attention au New






'String contenant la 'Requête SQL'






Private
strSql

As



String






' Déclaration Objet DataTable






Private
ObjetDataTable

As
DataTable


' Déclaration Objet DataRow (ligne)






Private
ObjetDataRow

As
DataRow


'Numéro de la ligne en cours






Private
RowNumber

As



Integer



'Numéro de l'enregistrement courant






'Paramêtres de connexion à la DB






Private
strConn

As



String






'Pour recompiler les données modifiées avant de les remettre dans le






'"DataAdapter"






Private
ObjetCommandBuilder

As
OracleCommandBuilder

ensuite vous pouvez suivre les étape d'ouverture de connexion ect.....

Merci
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
15 sept. 2008 à 14:05
Pour ce qui est de la connection et de la commande, le principe est le même que dans l'utilisation du Datareader.

Ensuite au lieu d'utiliser ExecuteReader pour remplir ton DataReader, tu fais ceci (pour remplir le Dataset):

ObjectDataAdapter.SelectCommand = ObjectCommand
ObjectDataAdapter.Fill(ObjectDataSet)

Une fois le Dataset remplie, sa propriété Tables contient une collection d'objets Table (généralement 1, tout dépend de ta requette). Il te suffit d'affecter celui qui t'interesse à ta variable ObjectDataTable, etc .....

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0

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

Posez votre question
inforedaster Messages postés 9 Date d'inscription mercredi 21 décembre 2005 Statut Membre Dernière intervention 28 septembre 2008
17 sept. 2008 à 00:40
MErci pour votre reponse

j'ai une 2 eme petite question :

jutilise dans le bouton ajouter le script suivant :

bjetDataRow = ObjetDataSet.Tables(

"ville").NewRow()RowNumber = ObjetDataTable.Rows.Count - 1

ObjetDataRow(

"cd_ville") =
Me.txt_cdville.TextObjetDataRow(

"lib_ville") =
Me.txt_libville.TextObjetDataSet.Tables(

"ville").Rows.Add(ObjetDataRow)
ObjetCommandBuilder =

New OracleCommandBuilder(ObjetDataAdapter)
ObjetDataAdapter.Update(ObjetDataSet,

"ville")
ObjetDataSet.Clear()

ObjetDataAdapter.Fill(ObjetDataSet,

"ville")ObjetDataTable = ObjetDataSet.Tables(

"ville")

ça marche pour ajouter un enregistrement mais le pb que l'enregistrement s'ajout au debut de la table au base de donnée  le dernier enregistrement ajouter il prend le premier classement dans la table ville par exemple comment faire pour que le dernier enregistrement ajouter soit le dernier dans la liste des enregistrements  
0
inforedaster Messages postés 9 Date d'inscription mercredi 21 décembre 2005 Statut Membre Dernière intervention 28 septembre 2008
17 sept. 2008 à 12:01
c'est resolu Merci
0
Rejoignez-nous