viernes, 21 de marzo de 2014

Insertar Registro en C# Utilizando Clase y Métdo

Por Diógenes Amaury MS
Salud@s Amig@s
En el dia de hoy le estare mostrando como insertar un registro a una base de datos utilizando c#, mediante una clase y su método.
Lo primero que debemos crear es la tabla en una base de datos llamada Universidad, donde vamos a almacenar la información, para nuestro ejemplo hemos creado el siguiente Script en Sql server 2008:

USE [Universidad]
GO

/****** Object:  Table [dbo].[Etudiantes]    Script Date: 03/21/2014 06:11:18 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

SET ANSI_PADDING ON
GO

CREATE TABLE [dbo].[Etudiantes](
[MATEST] [varchar](25) NOT NULL,
[NOMEST] [varchar](30) NULL,
[APEEST] [varchar](30) NULL,
[DIREST] [varchar](100) NULL,
[CELEST] [varchar](12) NULL,
 CONSTRAINT [PK_Etudiantes] PRIMARY KEY CLUSTERED
(
[MATEST] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]

GO

SET ANSI_PADDING OFF
GO



Después de crear nuestra tabla, procederemos  a crear nuestra interfaz de usuario.


a continuación muestro los nombres de cada TextBox:
 txtMatricula
 txtNombre
 txtApellido
 txtDireccion
 mskCelular

Pues bien ahora procederemos a crear una clase que nos permita interactuar con la base de datos.


 A nuestra clase le asignaremos el Nombre de Uapa, por tratarse de la Universidad donde estamso creando la clase para insertar estudiante, como ejemplo.
 
  class Uapa
    {
   
    }

El siguiente paso será  ubicarnos en los using, que estan en la parte superior y agregar los siguiente:
using System.Data.SqlClient;
using System.Collections.Generic;

Recordando que los using actúa como una directiva del compilador, haciendo que se puedan utilizar tipos definidos en el espacio de nombres importado sin necesidad de especificarlos de forma explícita en el código. Para nuestro caso lo utilizamos para indicarle al compilador con cual tipo de base de datos vamos a trabajar.

Pues bien ahora procederemos a declarar una variable del tipo SqlConnection, para indicar el servidor y nombre de la base de datos.
public SqlConnection cnn = new SqlConnection(@"Server=SERVERMIT2\SQLEXPRESS;Database=Universidad;Trusted_Connection=True;");

Ahora creamos un método, que se encargara de realizar funciones dependiendo lo que le pasemos como parametro, ya sea Insert, Update, Delete entre otros.

public void EjecutarSql(string strSql)
        {
            SqlCommand myCommand = new SqlCommand(strSql, cnn);
            myCommand.CommandType = CommandType.Text;
            cnn.Open();
            myCommand.ExecuteNonQuery();
            myCommand.Connection.Close();
            cnn.Close();
        }


Aquí le dejo la clase completa:

using System;
using System.Data;
using System.Data.SqlClient;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace WindowsFormsApplication2
{
    class Uapa
    {
        public SqlConnection cnn = new SqlConnection(@"Server=SERVERMIT2\SQLEXPRESS;Database=Universidad;Trusted_Connection=True;");

        public void EjecutarSql(string strSql)
        {
            SqlCommand myCommand = new SqlCommand(strSql, cnn);
            myCommand.CommandType = CommandType.Text;
            cnn.Open();
            myCommand.ExecuteNonQuery();
            myCommand.Connection.Close();
            cnn.Close();
        }

    }
}


En el formulario, especificamente en el botón Guardar escribimos el siguiente código.

 private void btnGuardar_Click(object sender, EventArgs e)
 {
   Uapa ejecuta = new Uapa();
   ejecuta.EjecutarSql("INSERT INTO Etudiantes (MATEST,NOMEST,APEEST,DIREST,CELEST) VALUES ('" + txtMatricula.Text + "','" +      txtNombre.Text + "','" + txtApellido.Text + "','" + txtDireccion.Text + "','" + mskCelular.Text + "')");
 } 


Nota:
la linea que contiene ejecuta.EjecutarSql debe ir digitada de forma continua, es decir, aunque usted lo pueda ver en varias lineas este código esta escrito en una linea.

Banco BHD República Dominicana cuenta:  12175200013









1 comentario:

  1. Como hago si quiero hacer la insercion utilizando parametros? ejemplo:

    Uapa ejecuta = new Uapa();
    ejecuta.EjecutarSql("INSERT INTO Etudiantes (MATEST,NOMEST,APEEST,DIREST,CELEST) VALUES (@matricula,@nombre,@apellido,@dir,@cel)");

    ResponderEliminar