GUARDAR DATOS DE C# a SQL SERVER

Como insertar en una BD SQL desde c#



Bueno prometí hacer un pequeño tutorial de como hacer una consulta desde un Windows Form C# ha una pequeña base de datos hecha en SQL Server 2005,   pues iniciemos:
Para empezar algo de paja que no cae mal para entender mejor lo que vamos a hacer. Como saben C# es un lenguaje orientado a objetos entonces para conectarnos y consultar  nuestra base de datos necesitamos eso precisamente objetos que nos van a ayudar poder comunicarnos con las clases,y poder  hacer consultas a nuestras bases de datos, estas clases las  explico a continuación:

SqlConnection:  Especifica la fuente de la base de datos  y establece las propiedades con las cuales nos vamos a conectar a la BD
SqlCommandEsta clase ejecuta comandos a una fuente de datos
SqlDataReaderEsta clase es usada para leer datos de una fuente
me falta explicar el SqlDataAdapter pero por lo pronto asi lo dejamos para no confundirlos mas.
Prara empezar inciamos el Visual Studio y creamos un proyecto de tipo Windows Form,  en este caso con con el lenguaje C#
después agregamos lo siguiente (omito las etiquetas por cuestiones de tiempo solo voy a poner textbox ):

Tiponame
textboxtbxncontrol
textboxtbxnombre
buttonbtnincertar 
nos quedara masomenos asi:
image figura 1: diseño de nuestra forma
y nuestra base de datos se va a llamar bdtutorial  y nuestra tabla se va a llamar tabla1 y tendra 2 campos como se muestra a continuación:
image figura 2: tabla1 de nuestra Base de Datos
  Bueno ahora nos vámonos al codigo, y para empezar como nos estamos conectando a una base de datos de MS SQL necesitamos agregar la siguiente libreria:
 using System.Data.SqlClient;
como siguiente paso agregamos nuestros objetos a nivel de clase de la siguiente manera:
public partial class Form1 : Form
{
   SqlConnection conexion = new SqlConnection();
    SqlCommand comando = new SqlCommand();

la primera como ya explique nos servira para la conexion, la segunda para nuestras consultas. ahora que ya tenemos nuestros objetos nos vamos a el metodo Form1_Load de nuestra forma para establecer la conexión a nuestra base de datos:
      private void Form1_Load(object sender, EventArgs e)
       {
  conexion.ConnectionString= @”Data Source=Raphael\SQLEXPRESS;Initial Catalog=bdtutorial;Integrated   Security=True”;       }
    Aqui a la cadena de conexion tenemos las propiedades, la primera “Data Source” nos indica el nombre de nuestro servidor,  despues “Initial Catalog” nos indica el nombre de nuestra base de datos (el cual es bdtutorial) y por ultimo Integrated Security la cual esta en true lo cual nos indica que nos estamos integrando la seguridad a travez de la Autenticacion de windows. como se muestra en la imagen:
image figura 3: conexión a nuestro motor de base de datos.
como se puede observar el nombre de nuestro servidor es “Raphael\SQLEXPRESS” especificado en nuestro Data Source y nuestra propiedad Integrated Security =true se debe a que estamos autenticando por windows.
y por ultimo en nuestro boton agregamos el codigo que nos generara la consulta:

private void btnIncertar_Click(object sender, EventArgs e)
{
    try //protejemos la consulta
    {
        comando.Connection = conexion;
      
  //el simbolo @ nos indica los parametros que le vamos a pasar
        //este codigo es tambien util para update y delete

        comando.CommandText = “insert into tabla1(id,nombre) values(@ncontrol,@nombre)”;
        conexion.Open();    //Abrimos la conexion a nuestra base de datos
        comando.Parameters.Clear();    
        comando.Parameters.AddWithValue(“ncontrol”, tbxncontrol.Text);
        comando.Parameters.AddWithValue(“nombre”, tbxnombre.Text);
        //comando.ExecuteNonQuery regresa el numero de filas afectadas
        int NFilas = comando.ExecuteNonQuery();
        if (NFilas > 0)
        {
            MessageBox.Show(“datos Almacenados exitosamente”);
        }
    }
  
  //.NET  captura las excepciones que ocurran al realizar nuestras consultas en SqlException     catch (SqlException ex)
    {
        MessageBox.Show(“FALLO AL GENERAR LA CONSULTA: “+ex);
    }
    conexion.Close();    //se cierra la conexion para liberar espacio en memoria
    comando.Dispose();       //se limpian los comandos para poder hacer otra consulta
}


Enlace:
http://r4ph43l0.wordpress.com/2010/12/18/como-insertar-en-una-bd-sql-desde-c/#comment-24

Código fuente del ejercico creado por mí. con la ayuda del tutorial del enlace:GUARDAR DATOS DE C# a SQL SERVER

0 comentarios: