Clase ODP.net Oracle Data Provider C#

Iniciado por cyberserver, 23 Diciembre 2010, 23:36 PM

0 Miembros y 1 Visitante están viendo este tema.

cyberserver

Hola amigos. para los que les interese les comparto una clase muy sencilla para la conexión a una Base de Datos Oracle con Oracle Data Provider,(Ado.net)

Manual para Usar la Clase (BasDatODP)

Esta Clase usa a Oracle Data Provider, que es un componente que utiliza el estar de ADO.net
TODAS LAS ESPECIFICACIONES DE PARAMETROS Y DE RETORNO DE METODOS ESTAN DESCRITAS EN CLASE BasDatODP COMO COMENTARIOS.
Esta clase es exclusivamente para usarce en la conexión de Base De Datos de Oracle 10g con C#,
Para su uso es necesario contar con:
•   C# Instalado.
•   Oracle instalado en el equipo.
•   En caso de que no se cuente con oracle es necesario instalar Las librerias de OracleDataProvider, las cuales puedes descargar de la pagina oficial de Oracle.

La clase Esta Formada por los constructores:
EXISTE SOBRECARGA DE CONSTRUCTORES

Citar1.- CONSTRUCTOR BASDARODP() -> Permite la multiple instancia de la clase sin repetir la entrada de parametros de conexión
2.- CONSTRUCTOR BasDatODP(String Equipox,String Usuariox,String Passwordx) -> Entrada de los parametros de conexión
   
1.   BasDatODP()
@param VACIO - los parametros son vacios,para evitar la Redundancia si es que se decea Reinstanciar la clase BasDatODP
2.   BasDatODP(String Equipox,String Usuariox,String Passwordx)
@param Equipo  String - Nombre del Equipo Host para la conexión
@param Usuario String - Usuario para la conexión
@param Passwor String - Password para la conexión





Y por los Metodos
Metodo Conectar
CitarEXISTE SOBRECARGA DE METODOS
1.- Metodo Conectar() -> Permite realizar la conexión, si se cargaron los parametros anteriormente en el constructor
       
2.- Metodo Conectar(String Equipo, String Usuario, String Password)
->Permite realizar la conexión, si se omitio la Carga de parametros en el constructor

•   public Boolean Conectar()
REALIZA LA conexión CON LA BASE DE DATOS
@return true - La conexión se Realizo Correctamente
@return false - Error en la conexión

•   public Boolean Conectar(String Equipo, String Usuario, String Password)
REALIZA LA conexión CON LA BASE DE DATOS
@param Equipo  String - Nombre del Equipo Host para la conexión
@param Usuario String - Usuario para la conexión
@param Password String - Password para la conexión
@return true - La conexión se Realizo Correctamente
@return false - Error en la conexión

•   public OracleConnection ExportarConeccion()
IMPORTANTE SI SE DECEA IMPLEMENTAR EN ALGUNA OTRA TAREA EL OBJETO ORACLEDATAPROVIDER
@return OracleConnection - Objeto OracleConeccion importante si se quiere implementar en alguna otra tarea de OracleDataProvide

•   public Boolean EstadoDeConeccion()
MUESTRA EL ESTADO EN QUE SE ENCUENTRA LA conexión DE LA BASE DE DATOS
@return true - Estado conectado
@return false - Estado Desconectado

•   public Boolean Desconectar()
DESCONECTA DE LA BASE DE DATOS
@return true - Se Desconecto Correctamente
@return false - No se Desconecto o Existe un Error

•   public OracleDataReader Consulta(String Query)
CONSULTA DONDE SE RETORNE UN VALOR (SELECT,FUNCIONES.ETC)
@return OracleDataReader - Datos de Lectura de la Consulta




•   public Boolean EjecutarQuery(String Query)
LINEA QUERY DONDE NO SE RETORN UN VALOR (INSERT,DELETE,UPDATE)
@return True  - El Query se ejecuto Correctamente
@return False - El Query no se ejecuto

•   public DataTable ConsultarEnDataGrid(String Query)
CARGA UNA CONSULTA QUE RETORNE UN VALOR (SELECT,FUNCION,ETC) A UNA DATAGRID
@return DataTable  - Datos de Tabla, Para ser igualados con dataGridView.DataSource



El codigo de la clase es el siguente:
Código (csharp) [Seleccionar]

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using Oracle.DataAccess.Client;

namespace OracleDateProvider_Prueba
{
   class BasDatODP
   {
       private static OracleConnection conexión;

       /*
        *Constructores BasDatODP
        * EXISTE SOBRECARGA DE CONSTRUCTORES
        *
        * 1.- CONSTRUCTOR BASDARODP() -> Permite la multiple instancia de la clase sin repetir
        *                                la entrada de parametros de conexión
        * 2.- CONSTRUCTOR BasDatODP(String Equipox,String Usuariox,String Passwordx) ->
        *                              Entrada de los parametros de conexión
        */

       /*
        *Constructor BasDatODP
        * @param VACIO - los parametros son vacios,para evitar la Redundancia si es que se decea
        * Reinstancias la clase BasDatODP
        */
       public BasDatODP() {
           conexión = new OracleConnection();
       }

       /*
        *Constructor BasDatODP(String Equipox,String Usuariox,String Passwordx)
        *@param Equipo  String - Nombre del Equipo Host para la conexión
        *@param Usuario String - Usuario para la conexión
        *@param Passwor String - Password para la conexión
        *
        */
       public BasDatODP(String Equipo, String Usuario, String Password){
           conexión = new OracleConnection();
           conexión.ConnectionString = "Data Source=" + Equipo
                                           + ";User Id=" + Usuario
                                           + ";Password=" + Password
                                           + ";";
       }

       /*
        *Metodo Conectar
        * EXISTE SOBRECARGA DE METODOS
        *
        * 1.- Metodo Conectar() -> Permite realizar la conexión, si se cargaron los parametros
        *                       anteriormente en el constructor
        *
        * 2.- Metodo Conectar(String Equipo, String Usuario, String Password) ->
        *            Permite realizar la conexión, si se omitio la Carga de parametros en el constructor
        */
       
       /*
        *Metodo Conectar()
        *REALIZA LA conexión CON LA BASE DE DATOS
        *@return true - La conexión se Realizo Correctamente
        *@return false - Error en la conexión
        */
       public Boolean Conectar()
       {
           try
           {
               conexión.Open();
               return true;
           }
           catch (Exception error)
           {
               return false;
           }
       }


       /*
        *Metodo Conectar(String Equipox, String Usuariox, String Passwordx)
        *REALIZA LA conexión CON LA BASE DE DATOS
        *@param Equipo  String - Nombre del Equipo Host para la conexión
        *@param Usuario String - Usuario para la conexión
        *@param Password String - Password para la conexión
        *@return true - La conexión se Realizo Correctamente
        *@return false - Error en la conexión
        */
       public Boolean Conectar(String Equipo, String Usuario, String Password)
       {
           try
           {
               conexión.ConnectionString = "Data Source=" + Equipo
                                           + ";User Id=" + Usuario
                                           + ";Password=" + Password
                                           + ";";
               conexión.Open();
               return true;
           }
           catch (Exception error)
           {
               return false;
           }
      }

       /*
        *Metodo ExportarConeccion()
        *IMPORTANTE SI SE DECEA IMPLEMENTAR EN ALGUNA OTRA TAREA EL OBJETO ORACLEDATAPROVIDER
        *@return OracleConnection - Objeto OracleConeccion importante si se quiere implementar en alguna otra
        *                        tarea de OracleDataProvide
        */
       public OracleConnection ExportarConeccion()
       {
           return conexión;
       }

       /*
        *Metodo EstadoDeConeccion()
        *MUESTRA EL ESTADO EN QUE SE ENCUENTRA LA conexión DE LA BASE DE DATOS
        *@return true - Estado conectado
        *@return false - Estado Desconectado
        */
       public Boolean EstadoDeConeccion()
       {
           try
           {
               String Estado=conexión.State.ToString();
               if (Estado.Equals("Open"))
               {
                   return true;
               }
               else
               {
                   return false;
               }

           }
           catch (Exception error)
           {
               return false;
           }
           
         
       }

       /*
        *Metodo Desconectar()
        *DESCONECTA DE LA BASE DE DATOS
        *@return true - Se Desconecto Correctamente
        *@return false - No se Desconecto o Existe un Error
        */
       public Boolean Desconectar() {
           try
           {
               conexión.Close();
               conexión.Dispose();
               return true;
           }
           catch (Exception error) {
               return false;
           }
       }

       /*
        *Metodo Consulta(String Query)
        *CONSULTA DONDE SE RETORNE UN VALOR (SELECT,FUNCIONES.ETC)
        *@return OracleDataReader - Datos de Lectura de la Consulta
        */
       public OracleDataReader Consulta(String Query)
       {
           try
           {
               OracleCommand HacerConsulta = new OracleCommand();
               HacerConsulta.Connection = conexión;
               HacerConsulta.CommandText = Query;
               HacerConsulta.CommandType = CommandType.Text;

               OracleDataReader DatosLectura = HacerConsulta.ExecuteReader();
               if (!DatosLectura.Read())
               {
                   return null;
               }
               return DatosLectura;
           }
           catch (Exception Error)
           {
               return null;
           }
       }

       /*
        *Metodo EjecutarQuery(String Query)
        *LINEA QUERY DONDE NO SE RETORN UN VALOR (INSERT,DELETE,UPDATE)
        *@return True  - El Query se ejecuto Correctamente
        *@return False - El Query no se ejecuto
        */
       public Boolean EjecutarQuery(String Query)
       {
           try
           {
               OracleCommand HacerConsulta = new OracleCommand();
               HacerConsulta.Connection = conexión;
               HacerConsulta.CommandText = Query;
               HacerConsulta.CommandType = CommandType.Text;
               HacerConsulta.ExecuteNonQuery();
               return true;
           }catch(Exception error)
           {
               return false;
           }
       }

       /*
        *Metodo ConsultarEnDataGrid(String Query)
        *CARGA UNA CONSULTA QUE RETORNE UN VALOR (SELECT,FUNCION,ETC) A UNA DATAGRID
        *@return DataTable  - Datos de Tabla,
        *          Para ser igualados con dataGridView.DataSource
        *
        */
       public DataTable ConsultarEnDataGrid(String Query)
       {
           try
           {
               OracleDataAdapter DaValores = new OracleDataAdapter(Query, conexión);
               DataSet DsValores = new DataSet();
               DaValores.Fill(DsValores,"Tabla");

               return DsValores.Tables["Tabla"];
           }
           catch (Exception error)
           {
               return null;
           }
           
       }

       
       
   }
}



Editado por D4N93R: Recuerda colocar el código Geshi correcto, estaba en Java y no en C#.






[D4N93R]

#1
Agregado a los temas interesantes!

Gracias por el aporte!

cyberserver

Aqui esta, la nueva clase un poco mas "pulida" y funcional

Código (csharp) [Seleccionar]

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using Oracle.DataAccess.Client;

namespace ModuloVentas
{
   class BasDatODP
   {
       private OracleConnection conexión;
       private static String Equipox;
       private static String Usuariox;
       private static String Passwordx;
       /*
        *Constructores BasDatODP
        * EXISTE SOBRECARGA DE CONSTRUCTORES
        *
        * 1.- CONSTRUCTOR BASDARODP() -> Permite la multiple instancia de la clase sin repetir
        *                                la entrada de parametros de conexión
        * 2.- CONSTRUCTOR BasDatODP(String Equipox,String Usuariox,String Passwordx) ->
        *                              Entrada de los parametros de conexión
        */

       /*
        *Constructor BasDatODP
        * @param VACIO - los parametros son vacios,para evitar la Redundancia si es que se decea
        * Reinstancias la clase BasDatODP
        */
       public BasDatODP()
       {
           conexión = new OracleConnection();
       }

       /*
        *Constructor BasDatODP(String Equipox,String Usuariox,String Passwordx)
        *@param Equipo  String - Nombre del Equipo Host para la conexión
        *@param Usuario String - Usuario para la conexión
        *@param Passwor String - Password para la conexión
        *
        */
       public BasDatODP(String Equipo, String Usuario, String Password)
       {
           Equipox = Equipo;
           Usuariox = Usuario;
           Passwordx = Password;

           conexión = new OracleConnection();
           conexión.ConnectionString = "Data Source=" + Equipox
                                           + ";User Id=" + Usuariox
                                           + ";Password=" + Passwordx
                                           + ";";
       }

       /*
        *Metodo Conectar
        * EXISTE SOBRECARGA DE METODOS
        *
        * 1.- Metodo Conectar() -> Permite realizar la conexión, si se cargaron los parametros
        *                       anteriormente en el constructor
        *
        * 2.- Metodo Conectar(String Equipo, String Usuario, String Password) ->
        *            Permite realizar la conexión, si se omitio la Carga de parametros en el constructor
        */

       /*
        *Metodo Conectar()
        *REALIZA LA conexión CON LA BASE DE DATOS
        *@return true - La conexión se Realizo Correctamente
        *@return false - Error en la conexión
        */
       public Boolean Conectar()
       {
           try
           {
               conexión.ConnectionString = "Data Source=" + Equipox
                                           + ";User Id=" + Usuariox
                                           + ";Password=" + Passwordx
                                           + ";";
               conexión.Open();
               return true;
           }
           catch (Exception error)
           {
               return false;
           }
       }


       /*
        *Metodo Conectar(String Equipox, String Usuariox, String Passwordx)
        *REALIZA LA conexión CON LA BASE DE DATOS
        *@param Equipo  String - Nombre del Equipo Host para la conexión
        *@param Usuario String - Usuario para la conexión
        *@param Password String - Password para la conexión
        *@return true - La conexión se Realizo Correctamente
        *@return false - Error en la conexión
        */
       public Boolean Conectar(String Equipo, String Usuario, String Password)
       {
           try
           {
               Equipox = Equipo;
               Usuariox = Usuario;
               Passwordx = Password;

               conexión = new OracleConnection();
               conexión.ConnectionString = "Data Source=" + Equipox
                                               + ";User Id=" + Usuariox
                                               + ";Password=" + Passwordx
                                               + ";";
               conexión.Open();
               return true;
           }
           catch (Exception error)
           {
               return false;
           }
       }

       /*
        *Metodo ExportarConeccion()
        *IMPORTANTE SI SE DECEA IMPLEMENTAR EN ALGUNA OTRA TAREA EL OBJETO ORACLEDATAPROVIDER
        *@return OracleConnection - Objeto OracleConeccion importante si se quiere implementar en alguna otra
        *                        tarea de OracleDataProvide
        */
       public OracleConnection ExportarConeccion()
       {
           return conexión;
       }

       /*
        *Metodo EstadoDeConeccion()
        *MUESTRA EL ESTADO EN QUE SE ENCUENTRA LA conexión DE LA BASE DE DATOS
        *@return true - Estado conectado
        *@return false - Estado Desconectado
        */
       public Boolean EstadoDeConeccion()
       {
           try
           {
               String Estado = conexión.State.ToString();
               if (Estado.Equals("Open"))
               {
                   return true;
               }
               else
               {
                   return false;
               }

           }
           catch (Exception error)
           {
               return false;
           }


       }

       /*
        *Metodo Desconectar()
        *DESCONECTA DE LA BASE DE DATOS
        *@return true - Se Desconecto Correctamente
        *@return false - No se Desconecto o Existe un Error
        */
       public Boolean Desconectar()
       {
           try
           {
               conexión.Close();
               conexión.Dispose();
               return true;
           }
           catch (Exception error)
           {
               return false;
           }
       }

       /*
        *Metodo Consulta(String Query)
        *CONSULTA DONDE SE RETORNE UN VALOR (SELECT,FUNCIONES.ETC)
        *@return OracleDataReader - Datos de Lectura de la Consulta
        */
       public OracleDataReader Consulta(String Query)
       {
           try
           {
               OracleCommand HacerConsulta = new OracleCommand();
               HacerConsulta.Connection = conexión;
               HacerConsulta.CommandText = Query;
               HacerConsulta.CommandType = CommandType.Text;

               OracleDataReader DatosLectura = HacerConsulta.ExecuteReader();
               if (!DatosLectura.Read())
               {
                   return null;
               }
               return DatosLectura;
           }
           catch (Exception Error)
           {
               return null;
           }
       }

       /*
        *Metodo EjecutarQuery(String Query)
        *LINEA QUERY DONDE NO SE RETORN UN VALOR (INSERT,DELETE,UPDATE)
        *@return True  - El Query se ejecuto Correctamente
        *@return False - El Query no se ejecuto
        */
       public Boolean EjecutarQuery(String Query)
       {
           try
           {
               OracleCommand HacerConsulta = new OracleCommand();
               HacerConsulta.Connection = conexión;
               HacerConsulta.CommandText = Query;
               HacerConsulta.CommandType = CommandType.Text;
               HacerConsulta.ExecuteNonQuery();
               return true;
           }
           catch (Exception error)
           {
               return false;
           }
       }

       /*
        *Metodo ConsultarEnDataGrid(String Query)
        *CARGA UNA CONSULTA QUE RETORNE UN VALOR (SELECT,FUNCION,ETC) A UNA DATAGRID
        *@return DataTable  - Datos de Tabla,
        *          Para ser igualados con dataGridView.DataSource
        *
        */
       public DataTable ConsultarEnDataGrid(String Query)
       {
           try
           {
               OracleDataAdapter DaValores = new OracleDataAdapter(Query, conexión);
               DataSet DsValores = new DataSet();
               DaValores.Fill(DsValores, "Tabla");

               return DsValores.Tables["Tabla"];

           }
           catch (Exception error)
           {
               return null;
           }

       }
       public String GetEquipo()
       {
           return Equipox;
       }
       public String GetUsuario()
       {
           return Usuariox;
       }
       public String GetPassword()
       {
           return Passwordx;
       }
   }
}