es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Mostrando los valores de la base de datos Oracle en un GridView

Hola, tengo una base de datos de Oracle con la tabla PROVA con 3 columnas NOME, COGNOME, NUMTELEFONO. Estoy buscando actualizar mi gridview en c# con el valor contenido en la tabla. Este es mi código y dentro del método button1_Click() necesito mostrar los valores de la base de datos en mi aplicación gridview c#. ¿Alguien puede ayudarme con el código?

“`C#
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.OracleClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Oracle.ManagedDataAccess;

namespace dbOracleForm
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

<pre><code> private void label2_Click(object sender, EventArgs e)
{

}

private void label1_Click(object sender, EventArgs e)
{

}

private void button1_Click(object sender, EventArgs e)
{
String connectionString = "Data Source = (DESCRIPTION = " +
"(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))" +
"(CONNECT_DATA = " +
" (SERVER = DEDICATED) " +
" (SERVICE_NAME = orcl.home) " +
"))"+
</code></pre>

"; User Id = system;password = orcl;";
OracleConnection con = new OracleConnection();
con.ConnectionString = connectionString;

<pre><code> con.Open();

OracleCommand cmd = new OracleCommand();
cmd.CommandText = "SELECT NOME, COGNOME, NUMTELEFONO FROM PROVA ORDER BY COGNOME DESC";
cmd.CommandType = CommandType.Text;
OracleDataReader dr = cmd.ExecuteReader();
DataTable dt = new DataTable();
dt.Load(dr);
dataGridView1.DataSource(dt);
}

private void Form1_Load(object sender, EventArgs e)
{

}
}
</code></pre>

}
“`

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Para actualizar tu vista de cuadrícula en C# con los valores contenidos en la tabla PROVA de tu base de datos Oracle, puedes usar el siguiente código:

    private void button1_Click(object sender, EventArgs e)
    {
        String connectionString = "Data Source =  (DESCRIPTION = " +
            "(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))" +
            "(CONNECT_DATA = " +
            " (SERVER = DEDICATED) " +
            " (SERVICE_NAME = orcl.home) " +
            "))" +
          "); User Id = system;password = orcl;";
    
        OracleConnection con = new OracleConnection();
        con.ConnectionString = connectionString;
    
        try
        {
            con.Open();
            OracleCommand cmd = new OracleCommand();
            cmd.Connection = con;
            cmd.CommandText = "SELECT NOME, COGNOME, NUMTELEFONO FROM PROVA ORDER BY COGNOME DESC";
            cmd.CommandType = CommandType.Text;
    
            OracleDataAdapter da = new OracleDataAdapter(cmd);
            DataTable dt = new DataTable();
            da.Fill(dt);
    
            dataGridView1.DataSource = dt;
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message);
        }
        finally
        {
            con.Close();
        }
    }
    

    Este código se conecta a tu base de datos Oracle utilizando la cadena de conexión proporcionada y selecciona las columnas NOME, COGNOME y NUMTELEFONO de la tabla PROVA, ordenadas por COGNOME en orden descendente. Luego crea un DataTable y lo llena con los resultados de la consulta utilizando un OracleDataAdapter. Finalmente, establece la propiedad DataSource de tu control dataGridView1 con el DataTable lleno.

    Ten en cuenta que este código también incluye manejo de errores y cierra la conexión a la base de datos después de ejecutar la consulta.

Comments are closed.