hola compañeros necesito de su ayuda en la uni me dejaron realizar un proyecto en C# 2008 express y que almacene los datos en MySql
ya tengo instalado el conector ya pude realizar la conexion pero ahora mi duda es como puedo realizar consultas y que los datos se muestren en un Data Grid View al momento de que yo le de un clic en un boton,como insertar datos en la base de datos.
aki les pongo el codigo que tengo hecho
hasta ahora no me marca errores
using System;
using System.Collections.Generic;
using MySql.Data.Types;
using MySql.Data.MySqlClient;
using System.Linq;
using System.Text;
namespace nab
{
class mysql
{
private MySqlConnection cnn;
private string connStr;
public void conexion()
{
connStr = ("host=localhost;Uid=root;DataBase=usuario;port=3306");
cnn = new MySqlConnection(connStr);
}
public MySqlConnection Cnx
{
get
{
cnn.Open();
return cnn;
}
}
}
}
Espero me pueda ayudar
Desde hace raton que no toco VB.NET and C#, pero algo es algo:
Visual Studio .NET
Dim cnn As New MySqlConection("String de conexion")
Dim adap As New MySqlDataAdapter()
Dim ds As New DataSet()
cnn.Open()
adap = New MySqlDataAdapter("Query_MySQL", cnn)
ds = new DataSet()
da.Fill(ds, "NewQuery")
dvgConsulta.DataSource = ds.DefaultViewManager
cnn.Close()
C#
MySqlConection cnn = new MySqlConection("String de Conexion");
cnn.Open();
MySqlDataAdapter da = new MySqlDataAdapter("Query_MySQL", cnn);
DataSet ds = new DataSet();
da.Fill(ds, "NewQuery");
dvgConsulta.DataSource = ds.DefaultViewManager;
cnn.Close();
Saludos!
oye amigo disculpa pero me podrias explicar que debo de poner donde "Query_SQL" "New query"
es que me marca un error en la linea da.Fill(ds,"new query") me dice base de datos desconocida
serias tan amable de ayudarme xfavor
En Query_SQL, el la query del MySQL, es decir,
Select * From Clientes
Y en NewQuery, es la tabla, es decir, en el ejemplo del query anterior, en DataSet, seria así:
VB.Net
adap = New MySqlDataAdapter("Select * From Clientes", cnn)
da.Fill(ds, "Clientes")
C#:
MySqlDataAdapter da = new MySqlDataAdapter("Select * From Clientes", cnn);
da.Fill(ds, "Clientes");
Las cadenas de conexión puedes encontrarlas en http://www.connectionstrings.com/ (http://www.connectionstrings.com/)
:D
muchas gracias compañeros por fin me salio aki les dejo el code por si alguien lo necesita
Formulario
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using MySql.Data.MySqlClient;
using MySql.Data.Types;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace nab
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void btnmostrar_Click(object sender, EventArgs e)
{
MySqlConnection cnn = new MySqlConnection();
MySqlCommand cmd = new MySqlCommand();
MySqlDataAdapter da = new MySqlDataAdapter("Select * from cliente", cnn);
DataSet ds = new DataSet();
try
{
cnn.ConnectionString = "host=localhost;Uid=root;DataBase=clientes;port=3306";
cmd.CommandText = "Select * from cliente";
cmd.CommandType = CommandType.Text;
cmd.Connection = cnn;
cnn.Open();
da.Fill(ds, "cliente");
cmd.ExecuteReader();
dvgdatos.DataSource = ds.Tables[0];
cnn.Close();
}
catch (Exception n)
{
MessageBox.Show(n.HelpLink);
}
}
private void button1_Click_1(object sender, EventArgs e)
{
MySqlConnection cnn = new MySqlConnection();
MySqlCommand cmd = new MySqlCommand();
cnn.ConnectionString = "host=localhost;Uid=root;DataBase=clientes;port=3306";
try
{
cnn.Open();
cmd.CommandText = "insert into cliente(idcliente,nombre,apellidos,direccion,telefono)Values('"+Convert.ToInt32(txtclave.Text)+"','" + txtnombre.Text + "','" + txtapellidos.Text + "','" + txtdireccion.Text + "','" + Convert.ToInt32(txttelefono.Text) + "')";
cmd.Connection = cnn;
int contenedor = cmd.ExecuteNonQuery();
cnn.Close();
MessageBox.Show("Se ha registrado correctamente", "Registro exitoso", MessageBoxButtons.OK);
}
catch (Exception mesange)
{
MessageBox.Show(mesange.Message);
}
}
private void button4_Click(object sender, EventArgs e)
{
txtclave.Text = "";
txtapellidos.Text = "";
txtdireccion.Text = "";
txtnombre.Text = "";
txttelefono.Text = "";
}
private void button2_Click(object sender, EventArgs e)
{
MySqlConnection cnn = new MySqlConnection();
cnn.ConnectionString = "host=localhost;Uid=root;DataBase=clientes;port=3306";
cnn.Open();
MySqlCommand cmd = new MySqlCommand("Delete from cliente where idcliente=?idcliente");
try
{
cmd.Parameters.Add("?idcliente", MySqlDbType.Int32).Value = txtclave.Text;
cmd.Connection = cnn;
cmd.ExecuteNonQuery();
cnn.Close();
}
catch (Exception m)
{
MessageBox.Show(m.Message,("Por favor introduzca la clave del cliente"));
}
}
private void btnactualizar_Click(object sender, EventArgs e)
{
MySqlConnection cnn = new MySqlConnection();
cnn.ConnectionString = "host=localhost;Uid=root;Database=clientes;Port=3306";
cnn.Open();
MySqlCommand cmd = new MySqlCommand("Update cliente set nombre=?nombre,apellidos=?apellidos,direccion=?direccion,telefono=?telefono where idcliente=?idcliente");
try
{
cmd.Parameters.Add("?idcliente", MySqlDbType.Int32).Value = txtclave.Text;
cmd.Parameters.Add("?nombre", MySqlDbType.String).Value=txtnombre.Text;
cmd.Parameters.Add("?apellidos", MySqlDbType.String).Value = txtapellidos.Text;
cmd.Parameters.Add("?direccion", MySqlDbType.String).Value = txtdireccion.Text;
cmd.Parameters.Add("?telefono", MySqlDbType.Int32).Value = txttelefono.Text;
cmd.Connection = cnn;
cmd.ExecuteNonQuery();
}
catch (Exception m)
{
MessageBox.Show(m.Message);
}
}
}
}
saludos
Hola:
Mira en la página 437 de este manual sobre C# y MySQL.
http://electronica-pic.blogspot.com/2009/06/servidor-casero-apache-php-mysql.html
Saludo.
Hola, pregunto ¿para que es ese conector? yo he trabajado con My SQL y nunca tuve que instalar tal programa.
saludos.
El conector te instala una referencia ya adaptada para mysql y agrega a los asistentes la positibilidad de hacer datasets tipados directo para mysql, en fin, ahorran algo de tiempo no? (o al menos eso creo)
se puede conectar sin eso, pero por algun lado lei que era muy generico