|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
CLASSE DE CONNEXION ORACLE
Information sur la source
Description
Cette classe permet de se connecter à une base de données Oracle, de récupérer les données (SELECT), de faire des modifications (UPDATE, DELETE) et de lancer des procédures et des fonctions stockées.
Source
- using System;
- using System.Windows.Forms;
- using System.Collections;
- using System.Data.OracleClient;
- using System.Data;
-
- namespace ConnexionOracle
- {
- /// <summary>
- /// Classe permettant l'interface avec Oracle
- /// </summary>
- public class classOracle
- {
- #region Variables
- /// <summary>
- /// User Oracle
- /// </summary>
- private string sUser;
- /// <summary>
- /// Mot de passe Oracle
- /// </summary>
- private string sPassword;
- /// <summary>
- /// Nom de la base Oracle
- /// </summary>
- private string sBase;
- /// <summary>
- /// Nombre de lignes du résultat d'une requête
- /// </summary>
- private int iNbRows;
- /// <summary>
- /// Nombre de colonnes du résultat d'une requête
- /// </summary>
- private int iNbCols;
- /// <summary>
- /// Connexion à la base de données Oracle
- /// </summary>
- private OracleConnection oracleCnx;
- /// <summary>
- /// Instruction SQL ou procédure stockée à exécuter
- /// </summary>
- private OracleCommand oracleCmd;
- /// <summary>
- /// Flux de lignes de données stockant le résultat d'une requête
- /// </summary>
- private OracleDataReader oracleReader;
- #endregion
-
- #region Propriétés
- /// <summary>
- /// Affecte ou récupère le login Oracle
- /// </summary>
- public string User
- {
- get
- {
- return this.sUser;
- }
-
- set
- {
- this.sUser = value;
- }
- }
-
- /// <summary>
- /// Affecte ou récupère le mot de passe Oracle
- /// </summary>
- public string Password
- {
- get
- {
- return this.sPassword;
- }
-
- set
- {
- this.sPassword = value;
- }
- }
-
- /// <summary>
- /// Affecte ou récupère la base Oracle
- /// </summary>
- public string Base
- {
- get
- {
- return this.sBase;
- }
-
- set
- {
- this.sBase = value;
- }
- }
-
- /// <summary>
- /// Récupère le nombre de ligne d'une requête
- /// </summary>
- public int NbRows
- {
- get
- {
- return this.iNbRows;
- }
- }
-
- /// <summary>
- /// Récupère le nombre de colone d'une requête
- /// </summary>
- public int NbCols
- {
- get
- {
- return this.iNbCols;
- }
- }
- #endregion
-
- #region Constructeur de la classe classOracle
- /// <summary>Constructeur de la classe</summary>
- public classOracle()
- {
- this.sUser = "";
- this.sPassword = "";
- this.sBase = "";
-
- this.iNbRows = 0;
- this.iNbCols = 0;
-
- this.oracleCnx = new OracleConnection();
- this.oracleCmd = new OracleCommand();
- this.oracleReader = null;
- }
- #endregion
-
- #region Connexion à la base de données Oracle
- /// <summary>Lance un ordre de connexion à la base Oracle</summary>
- /// <example>
- /// classOracle monOracle = new classOracle();
- /// monOracle.setUser("Toto");
- /// monOracle.setPassword("mdp");
- /// monOracle.setBase("maBase");
- ///
- /// if(this.monObjetOracle.connect())
- /// {
- /// ...
- /// }
- /// </example>
- public bool connect()
- {
- try
- {
- this.oracleCnx.ConnectionString = "Password=" + this.sPassword + ";User ID=" + this.sUser + ";Data Source=" + this.sBase;
-
- this.iNbCols = 0;
- this.iNbRows = 0;
-
- oracleCnx.Open();
-
- return true;
- }
- catch(Exception)
- {
- MessageBox.Show("Impossible de se connecter à la base de données","Erreur Oracle",System.Windows.Forms.MessageBoxButtons.OK,System.Windows.Forms.MessageBoxIcon.Error);
- return false;
- }
- }
- #endregion
-
- #region Déconnexion de la base de données Oracle
- /// <summary>
- /// Lance un ordre de déconnexion de la base de données Oracle
- /// </summary>
- /// <example>
- /// classOracle monOracle = new classOracle();
- /// ...
- /// this.monOracle.deconnect();
- /// </example>
- public bool deconnect()
- {
- try
- {
- oracleCnx.Close();
- return true;
- }
- catch(Exception ex)
- {
- MessageBox.Show(ex.Message,"Erreur Oracle",System.Windows.Forms.MessageBoxButtons.OK,System.Windows.Forms.MessageBoxIcon.Error);
- return false;
- }
- }
- #endregion
-
- #region Récupère les valeurs d'une requête
- /// <summary>Récupère les valeurs d'une requête</summary>
- /// <param name="sQuery">Requête à exécuter</param>
- /// <returns>Renvoi les valeurs de la requête</returns>
- /// <example>
- /// classOracle monOracle = new classOracle();
- /// monOracle.setUser("Toto");
- /// monOracle.setPassword("mdp");
- /// monOracle.setBase("maBase");
- ///
- /// if(this.monObjetOracle.connect())
- /// {
- /// string sQuery="SELECT COUNT(*) FROM MaTable";
- /// object[,] resultat = this.monOracle.getQueryResult(sQuery);
- /// this.monOracle.deconnect();
- /// ...
- /// }
- /// </example>
- public Object[,] getQueryResult(string sQuery)
- {
- this.oracleCmd = new OracleCommand(sQuery, this.oracleCnx);
- this.oracleReader = null;
- this.oracleReader = this.oracleCmd.ExecuteReader();
-
- Object[,] oArrResult;
- this.iNbRows = 0;
- this.iNbCols = this.oracleReader.FieldCount;
-
- // Initialisation du tableau de retour
- while (this.oracleReader.Read()) { this.iNbRows++; }
- oArrResult = new Object[this.iNbRows,iNbCols];
-
- // Remplissage du tableau de retour
- try
- {
- this.oracleReader = this.oracleCmd.ExecuteReader();
- int i = 0;
- while (this.oracleReader.Read())
- {
- for(int j=0; j<this.iNbCols; j++)
- {
- oArrResult[i,j] = oracleReader.GetOracleValue(j);
- }
- i++;
- }
- }
- catch(OracleException oe)
- {
- this.gestionErreur(oe);
- return null;
- }
- finally
- {
- this.oracleReader.Close();
- this.oracleCmd = null;
- this.oracleReader = null;
- }
-
- return oArrResult;
- }
- #endregion
-
- #region Lance un ordre SQL de INSERT, UPDATE ou DELETE
- /// <summary>Lance un ordre SQL de INSERT, UPDATE ou DELETE</summary>
- /// <param name="sQuery">Requête à exécuter</param>
- /// <returns>Renvoi true si l'odre SQL s'est déroulé normallement, false sinon</returns>
- /// <example>
- /// classOracle monOracle = new classOracle();
- /// monOracle.setUser("Toto");
- /// monOracle.setPassword("mdp");
- /// monOracle.setBase("maBase");
- ///
- /// if(this.monObjetOracle.connect())
- /// {
- /// string sQuery="DELETE FROM MaTable";
- /// bool bResultat = this.monOracle.nonQueryOrder(sQuery);
- /// this.monOracle.deconnect();
- ///
- /// if(bResultat)
- /// {
- /// ...
- /// }
- /// }
- /// </example>
- public bool nonQueryOrder(string sQuery)
- {
- this.oracleCmd = new OracleCommand(sQuery, this.oracleCnx);
- try
- {
- this.oracleCmd.ExecuteNonQuery();
- return true;
- }
- catch(OracleException OracleEx)
- {
- this.gestionErreur(OracleEx);
- return false;
- }
- finally
- {
- this.oracleCmd = null;
- }
- }
- #endregion
-
- #region Lance une procédure PL/SQL
- /// <summary>
- /// Lance une procédure stockée PL/SQL de type procédure
- /// </summary>
- /// <param name="sQuery">Procédure stockée de type procédure à exécuter</param>
- /// <param name="param">Tableau des paramètres</param>
- /// <returns>vrai si la procédure s'est exécutée correctement, faux sinon</returns>
- /// <example>
- /// classOracle monOracle = new classOracle();
- /// monOracle.setUser("Toto");
- /// monOracle.setPassword("mdp");
- /// monOracle.setBase("maBase");
- ///
- /// string param1="blabla";
- /// string param2="blablabla";
- ///
- /// string sQuery = "SCHEMA.PACKAGE.MA_PROCEDURE";
- /// ArrayList param = new ArrayList(2);
- /// /* En admettant que le premier paramètre de ma procédure stockée MA_PROCEDURE, du package PACKAGE, sous le chéma Oracle SCHEMA, se nomme monPremierParametre (idem pour le deuxième paramètre) */
- /// param.Add(new string[] {"monPremierParametre",param1});
- /// param.Add(new string[] {"monDeuxièmeParametre",param2});
- ///
- /// if(this.monOracle.connect())
- /// {
- /// bool bRetour = this.monOracle.procStockOrder(sQuery,param);
- /// this.monOracle.deconnect();
- ///
- /// if(bRetour)
- /// {
- /// ...
- /// }
- /// }
- /// </example>
- public bool procStockOrder(string sQuery, ArrayList param)
- {
- this.oracleCmd = this.oracleCnx.CreateCommand();
- this.oracleCmd.CommandText = sQuery;
- this.oracleCmd.CommandType = CommandType.StoredProcedure;
-
- foreach(string[] tableau in param)
- {
- this.oracleCmd.Parameters.Add(tableau[0],tableau[1]);
- }
-
- try
- {
- this.oracleCmd.ExecuteNonQuery();
- }
- catch(OracleException OracleEx)
- {
- this.gestionErreur(OracleEx);
- return false;
- }
- finally
- {
- this.oracleCmd = null;
- }
-
- return true;
- }
- #endregion
-
- #region Lance une fonction PL/SQL
- /// <summary>
- /// Lance une procédure stockée PL/SQL de type fonction
- /// </summary>
- /// <param name="sQuery">Procédure stockée de type fonction à exécuter</param>
- /// <param name="param">Tableau des paramètres</param>
- /// <param name="sRetour">Intitulé de la valeur de retour</param>
- /// <param name="iLongueurRetour">Longueur de la variable de retour</param>
- /// <returns>la chaîne de caractères retournée par la fonction PL/SQL</returns>
- /// <example>
- /// classOracle monOracle = new classOracle();
- /// monOracle.setUser("Toto");
- /// monOracle.setPassword("mdp");
- /// monOracle.setBase("maBase");
- ///
- /// string param1="blabla";
- /// string param2="blablabla";
- ///
- /// string sQuery = "SCHEMA.PACKAGE.MA_FONCTION";
- /// ArrayList param = new ArrayList(2);
- /// /* En admettant que le premier paramètre de ma fonction stockée MA_FONCTION, du package PACKAGE, sous le chéma Oracle SCHEMA, se nomme monPremierParametre (idem pour le deuxième paramètre) */
- /// param.Add(new string[] {"monPremierParametre",param1});
- /// param.Add(new string[] {"monDeuxièmeParametre",param2});
- ///
- /// if(this.monOracle.connect())
- /// {
- /// /* En admettant que le paramètre de retour de ma fonction stockée se nomme monParametreRetour et est de longueur 10 (VARCHAR2(10))*/
- /// string sRetour = this.monOracle.foncStockOrder(sQuery,param,"monParametreRetour",10);
- /// this.monOracle.deconnect();
- ///
- /// if(sRetour != null)
- /// {
- /// ...
- /// }
- /// }
- /// </example>
- public string foncStockOrder(string sQuery,ArrayList param, string sRetour, int iLongueurRetour)
- {
- this.oracleCmd = this.oracleCnx.CreateCommand();
- this.oracleCmd.CommandText = sQuery;
- this.oracleCmd.CommandType = CommandType.StoredProcedure;
- this.oracleCmd.Parameters.Add(sRetour,OracleType.VarChar,iLongueurRetour);
- this.oracleCmd.Parameters[sRetour].Direction = ParameterDirection.ReturnValue;
-
- foreach(string[] tableau in param)
- {
- this.oracleCmd.Parameters.Add(tableau[0],tableau[1]);
- }
-
- try
- {
- this.oracleCmd.ExecuteNonQuery();
- return((string)this.oracleCmd.Parameters[sRetour].Value);
- }
- catch(OracleException OracleEx)
- {
- this.gestionErreur(OracleEx);
- return null;
- }
- finally
- {
- this.oracleCmd = null;
- }
- }
- #endregion
-
- #region Gestion des erreurs
- private void gestionErreur(OracleException oe)
- {
- switch(oe.Code)
- {
- case 02292 :
- MessageBox.Show("Impossible de supprimer cet élément car il est encore référencé dans une autre table.","Erreur Oracle",System.Windows.Forms.MessageBoxButtons.OK,System.Windows.Forms.MessageBoxIcon.Error);
- break;
-
- default :
- MessageBox.Show(oe.Message,"Erreur Oracle",System.Windows.Forms.MessageBoxButtons.OK,System.Windows.Forms.MessageBoxIcon.Error);
- break;
- }
- }
- #endregion
- }
- }
using System;
using System.Windows.Forms;
using System.Collections;
using System.Data.OracleClient;
using System.Data;
namespace ConnexionOracle
{
/// <summary>
/// Classe permettant l'interface avec Oracle
/// </summary>
public class classOracle
{
#region Variables
/// <summary>
/// User Oracle
/// </summary>
private string sUser;
/// <summary>
/// Mot de passe Oracle
/// </summary>
private string sPassword;
/// <summary>
/// Nom de la base Oracle
/// </summary>
private string sBase;
/// <summary>
/// Nombre de lignes du résultat d'une requête
/// </summary>
private int iNbRows;
/// <summary>
/// Nombre de colonnes du résultat d'une requête
/// </summary>
private int iNbCols;
/// <summary>
/// Connexion à la base de données Oracle
/// </summary>
private OracleConnection oracleCnx;
/// <summary>
/// Instruction SQL ou procédure stockée à exécuter
/// </summary>
private OracleCommand oracleCmd;
/// <summary>
/// Flux de lignes de données stockant le résultat d'une requête
/// </summary>
private OracleDataReader oracleReader;
#endregion
#region Propriétés
/// <summary>
/// Affecte ou récupère le login Oracle
/// </summary>
public string User
{
get
{
return this.sUser;
}
set
{
this.sUser = value;
}
}
/// <summary>
/// Affecte ou récupère le mot de passe Oracle
/// </summary>
public string Password
{
get
{
return this.sPassword;
}
set
{
this.sPassword = value;
}
}
/// <summary>
/// Affecte ou récupère la base Oracle
/// </summary>
public string Base
{
get
{
return this.sBase;
}
set
{
this.sBase = value;
}
}
/// <summary>
/// Récupère le nombre de ligne d'une requête
/// </summary>
public int NbRows
{
get
{
return this.iNbRows;
}
}
/// <summary>
/// Récupère le nombre de colone d'une requête
/// </summary>
public int NbCols
{
get
{
return this.iNbCols;
}
}
#endregion
#region Constructeur de la classe classOracle
/// <summary>Constructeur de la classe</summary>
public classOracle()
{
this.sUser = "";
this.sPassword = "";
this.sBase = "";
this.iNbRows = 0;
this.iNbCols = 0;
this.oracleCnx = new OracleConnection();
this.oracleCmd = new OracleCommand();
this.oracleReader = null;
}
#endregion
#region Connexion à la base de données Oracle
/// <summary>Lance un ordre de connexion à la base Oracle</summary>
/// <example>
/// classOracle monOracle = new classOracle();
/// monOracle.setUser("Toto");
/// monOracle.setPassword("mdp");
/// monOracle.setBase("maBase");
///
/// if(this.monObjetOracle.connect())
/// {
/// ...
/// }
/// </example>
public bool connect()
{
try
{
this.oracleCnx.ConnectionString = "Password=" + this.sPassword + ";User ID=" + this.sUser + ";Data Source=" + this.sBase;
this.iNbCols = 0;
this.iNbRows = 0;
oracleCnx.Open();
return true;
}
catch(Exception)
{
MessageBox.Show("Impossible de se connecter à la base de données","Erreur Oracle",System.Windows.Forms.MessageBoxButtons.OK,System.Windows.Forms.MessageBoxIcon.Error);
return false;
}
}
#endregion
#region Déconnexion de la base de données Oracle
/// <summary>
/// Lance un ordre de déconnexion de la base de données Oracle
/// </summary>
/// <example>
/// classOracle monOracle = new classOracle();
/// ...
/// this.monOracle.deconnect();
/// </example>
public bool deconnect()
{
try
{
oracleCnx.Close();
return true;
}
catch(Exception ex)
{
MessageBox.Show(ex.Message,"Erreur Oracle",System.Windows.Forms.MessageBoxButtons.OK,System.Windows.Forms.MessageBoxIcon.Error);
return false;
}
}
#endregion
#region Récupère les valeurs d'une requête
/// <summary>Récupère les valeurs d'une requête</summary>
/// <param name="sQuery">Requête à exécuter</param>
/// <returns>Renvoi les valeurs de la requête</returns>
/// <example>
/// classOracle monOracle = new classOracle();
/// monOracle.setUser("Toto");
/// monOracle.setPassword("mdp");
/// monOracle.setBase("maBase");
///
/// if(this.monObjetOracle.connect())
/// {
/// string sQuery="SELECT COUNT(*) FROM MaTable";
/// object[,] resultat = this.monOracle.getQueryResult(sQuery);
/// this.monOracle.deconnect();
/// ...
/// }
/// </example>
public Object[,] getQueryResult(string sQuery)
{
this.oracleCmd = new OracleCommand(sQuery, this.oracleCnx);
this.oracleReader = null;
this.oracleReader = this.oracleCmd.ExecuteReader();
Object[,] oArrResult;
this.iNbRows = 0;
this.iNbCols = this.oracleReader.FieldCount;
// Initialisation du tableau de retour
while (this.oracleReader.Read()) { this.iNbRows++; }
oArrResult = new Object[this.iNbRows,iNbCols];
// Remplissage du tableau de retour
try
{
this.oracleReader = this.oracleCmd.ExecuteReader();
int i = 0;
while (this.oracleReader.Read())
{
for(int j=0; j<this.iNbCols; j++)
{
oArrResult[i,j] = oracleReader.GetOracleValue(j);
}
i++;
}
}
catch(OracleException oe)
{
this.gestionErreur(oe);
return null;
}
finally
{
this.oracleReader.Close();
this.oracleCmd = null;
this.oracleReader = null;
}
return oArrResult;
}
#endregion
#region Lance un ordre SQL de INSERT, UPDATE ou DELETE
/// <summary>Lance un ordre SQL de INSERT, UPDATE ou DELETE</summary>
/// <param name="sQuery">Requête à exécuter</param>
/// <returns>Renvoi true si l'odre SQL s'est déroulé normallement, false sinon</returns>
/// <example>
/// classOracle monOracle = new classOracle();
/// monOracle.setUser("Toto");
/// monOracle.setPassword("mdp");
/// monOracle.setBase("maBase");
///
/// if(this.monObjetOracle.connect())
/// {
/// string sQuery="DELETE FROM MaTable";
/// bool bResultat = this.monOracle.nonQueryOrder(sQuery);
/// this.monOracle.deconnect();
///
/// if(bResultat)
/// {
/// ...
/// }
/// }
/// </example>
public bool nonQueryOrder(string sQuery)
{
this.oracleCmd = new OracleCommand(sQuery, this.oracleCnx);
try
{
this.oracleCmd.ExecuteNonQuery();
return true;
}
catch(OracleException OracleEx)
{
this.gestionErreur(OracleEx);
return false;
}
finally
{
this.oracleCmd = null;
}
}
#endregion
#region Lance une procédure PL/SQL
/// <summary>
/// Lance une procédure stockée PL/SQL de type procédure
/// </summary>
/// <param name="sQuery">Procédure stockée de type procédure à exécuter</param>
/// <param name="param">Tableau des paramètres</param>
/// <returns>vrai si la procédure s'est exécutée correctement, faux sinon</returns>
/// <example>
/// classOracle monOracle = new classOracle();
/// monOracle.setUser("Toto");
/// monOracle.setPassword("mdp");
/// monOracle.setBase("maBase");
///
/// string param1="blabla";
/// string param2="blablabla";
///
/// string sQuery = "SCHEMA.PACKAGE.MA_PROCEDURE";
/// ArrayList param = new ArrayList(2);
/// /* En admettant que le premier paramètre de ma procédure stockée MA_PROCEDURE, du package PACKAGE, sous le chéma Oracle SCHEMA, se nomme monPremierParametre (idem pour le deuxième paramètre) */
/// param.Add(new string[] {"monPremierParametre",param1});
/// param.Add(new string[] {"monDeuxièmeParametre",param2});
///
/// if(this.monOracle.connect())
/// {
/// bool bRetour = this.monOracle.procStockOrder(sQuery,param);
/// this.monOracle.deconnect();
///
/// if(bRetour)
/// {
/// ...
/// }
/// }
/// </example>
public bool procStockOrder(string sQuery, ArrayList param)
{
this.oracleCmd = this.oracleCnx.CreateCommand();
this.oracleCmd.CommandText = sQuery;
this.oracleCmd.CommandType = CommandType.StoredProcedure;
foreach(string[] tableau in param)
{
this.oracleCmd.Parameters.Add(tableau[0],tableau[1]);
}
try
{
this.oracleCmd.ExecuteNonQuery();
}
catch(OracleException OracleEx)
{
this.gestionErreur(OracleEx);
return false;
}
finally
{
this.oracleCmd = null;
}
return true;
}
#endregion
#region Lance une fonction PL/SQL
/// <summary>
/// Lance une procédure stockée PL/SQL de type fonction
/// </summary>
/// <param name="sQuery">Procédure stockée de type fonction à exécuter</param>
/// <param name="param">Tableau des paramètres</param>
/// <param name="sRetour">Intitulé de la valeur de retour</param>
/// <param name="iLongueurRetour">Longueur de la variable de retour</param>
/// <returns>la chaîne de caractères retournée par la fonction PL/SQL</returns>
/// <example>
/// classOracle monOracle = new classOracle();
/// monOracle.setUser("Toto");
/// monOracle.setPassword("mdp");
/// monOracle.setBase("maBase");
///
/// string param1="blabla";
/// string param2="blablabla";
///
/// string sQuery = "SCHEMA.PACKAGE.MA_FONCTION";
/// ArrayList param = new ArrayList(2);
/// /* En admettant que le premier paramètre de ma fonction stockée MA_FONCTION, du package PACKAGE, sous le chéma Oracle SCHEMA, se nomme monPremierParametre (idem pour le deuxième paramètre) */
/// param.Add(new string[] {"monPremierParametre",param1});
/// param.Add(new string[] {"monDeuxièmeParametre",param2});
///
/// if(this.monOracle.connect())
/// {
/// /* En admettant que le paramètre de retour de ma fonction stockée se nomme monParametreRetour et est de longueur 10 (VARCHAR2(10))*/
/// string sRetour = this.monOracle.foncStockOrder(sQuery,param,"monParametreRetour",10);
/// this.monOracle.deconnect();
///
/// if(sRetour != null)
/// {
/// ...
/// }
/// }
/// </example>
public string foncStockOrder(string sQuery,ArrayList param, string sRetour, int iLongueurRetour)
{
this.oracleCmd = this.oracleCnx.CreateCommand();
this.oracleCmd.CommandText = sQuery;
this.oracleCmd.CommandType = CommandType.StoredProcedure;
this.oracleCmd.Parameters.Add(sRetour,OracleType.VarChar,iLongueurRetour);
this.oracleCmd.Parameters[sRetour].Direction = ParameterDirection.ReturnValue;
foreach(string[] tableau in param)
{
this.oracleCmd.Parameters.Add(tableau[0],tableau[1]);
}
try
{
this.oracleCmd.ExecuteNonQuery();
return((string)this.oracleCmd.Parameters[sRetour].Value);
}
catch(OracleException OracleEx)
{
this.gestionErreur(OracleEx);
return null;
}
finally
{
this.oracleCmd = null;
}
}
#endregion
#region Gestion des erreurs
private void gestionErreur(OracleException oe)
{
switch(oe.Code)
{
case 02292 :
MessageBox.Show("Impossible de supprimer cet élément car il est encore référencé dans une autre table.","Erreur Oracle",System.Windows.Forms.MessageBoxButtons.OK,System.Windows.Forms.MessageBoxIcon.Error);
break;
default :
MessageBox.Show(oe.Message,"Erreur Oracle",System.Windows.Forms.MessageBoxButtons.OK,System.Windows.Forms.MessageBoxIcon.Error);
break;
}
}
#endregion
}
}
Conclusion
Exemple d'utilisation pour une requête simple : classOracle monOracle = new classOracle(); monOracle.setUser("Toto"); monOracle.setPassword("mdp"); monOracle.setBase("maBase"); if(this.monObjetOracle.connect()) { string sQuery="SELECT MonChamp FROM MaTable"; object[,] resultat = this.monOracle.getQueryResult(sQuery); this.monOracle.deconnect(); // Utilisation pour remplir un combobox par exemple avec MonChamp foreach(object[] monRow in resultat) { this.cbMonComboBox.Items.Add(monRow[0].ToString()); } } Exemple d'utilisation pour une procédure stockée : classOracle monOracle = new classOracle(); monOracle.setUser("Toto"); monOracle.setPassword("mdp"); monOracle.setBase("maBase"); String param1="blabla"; String param2="blablabla"; string sQuery = "SCHEMA.PACKAGE.MA_PROCEDURE"; ArrayList param = new ArrayList(2); /* En admettant que le premier paramètre de ma procédure stockée MA_PROCEDURE, du package PACKAGE, sous le chéma Oracle SCHEMA, se nomme monPremierParametre (idem pour le deuxième paramètre) */ param.Add(new string[] {"monPremierParametre",param1}); param.Add(new string[] {"monDeuxièmeParametre",param2}); if(this.monOracle.connect()) { bool bRetour = this.monOracle.procStockOrder(sQuery,param); this.monOracle.deconnect(); if(bRetour) { ... } }
Fichier Zip
Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
Télécharger le zip
Historique
- 09 mai 2005 10:12:25 :
- MAJ pour remplacer les GET et les SET par des propriétés.
Ajout des exemples pour chaque fonction.
- 04 février 2008 10:06:18 :
- Ajout d'un exemple d'utilisation
Sources de la même categorie
Sources en rapport avec celle ci
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
connection a une db oracle [ par ch3ass ]
j'arrive pas a me connecter a une base de donnée orale ?
Connection sécurisé [ par tobleronne ]
Bonjour à tous,J'essaye tout betement de faire un accés à la base mais on me dit : "Échec de la connexion de l'utilisateur 'sa'. Raison : Non associé
Connexion ORACLE...Trop de mal! :(:(:( [ par sphaxslayer ]
Salut, en fait je refais un post car mon précédent n'était pas/plus très clair...voilà le lien vers le premier: http://www.cs
connection par OLE DB [ par molok ]
j ai lu que l'on peut faire des acces a des fiches de calcul excel avec ole db mais je ne c pas quel provider il faut utiliser pour la connection si q
Chaine de connexion [ par jtccicd ]
Salut,Comment acceder à une base oracle (chaine de connexion) pour oracle avec C# ?JTCCICD
C# et connexion à Oracle7 [ par rouxxx ]
Bonjour à tous, J'aurai aimé avoir qqs précisions et ce de manière relativement urgente :p Je cherche à connecter une application C# à une base de d
connexion oracle [ par haccounsoft ]
Dslé de poluer le forum avec mes questions de debutants mais la encore g un ptit prob .J'aimerai utiliser une base données de TYPE ORACLE pr assurer l
fermer une connexion odbc [ par engelho ]
Salut tout le monde...J'utilise un odbcConnection ainsi que : - un odbcCommand pour une première requete - un o
ODBC, OleDb, ... (°_°)agheu??? + Pb connexion BD Oracle... [ par sphaxslayer ]
Bonjour tout le monde...au risque de paraître stupide, je voudrais vous poser la question suivante:mais que sont ODBC et OleDb ... ? Ormis que ce
connection à myql esyphp en C# [ par patou1007 ]
Bonjour,J'ai installé easy php et j'ai créer une base de donées mysql avc phpadmin.Je travaille avec visual studio 2005 et je souhaiter
|
Téléchargements
Logiciels à télécharger sur le même thème :
Comparez les prix Nouvelle version
|