elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Tutorial C# & ADO.NET & DB
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Tutorial C# & ADO.NET & DB  (Leído 4,709 veces)
Mr.Blue


Desconectado Desconectado

Mensajes: 441



Ver Perfil WWW
Tutorial C# & ADO.NET & DB
« en: 13 Agosto 2011, 21:21 pm »

Tutorial C# & ADO.NET & DB

1-BASE DE DATOS.

Que es una DB: Una de DB es una base de datos un conjunto de informacion relacionada y estructurada, puede tener diferentes tipos de datos, y esta formada por tablas, un conjunto de tablas conformaran nuestra base de datos.

Que son las tablas?
Las tablas son un contenedor de informacion, la cual esta organizada y esquematizada, esta formada por registros y a su vez contienen diferentes campos.
Estas son objetos de almacenamiento que podran ser manipulados por nuestras aplicaciones.


Que es SQL? Structured Query Language, es el lenguaje que nos permite hacer consultas, definir y actualizar nuestra base de datos.

Tipos de datos de una DB
http://technet.microsoft.com/es-es/library/ms187752.aspx




Estructura del lenguaje

DDL y DML


DDL: Comprende los comandos para: crear, modificar y eliminar tablas e indices.
Comandos mas utilizados son: CREATE, ALTER(Modifica, Agregar columnas, cambia la estructura), DROP(Borrar).

El que nosotros vamos a usar
DML: Comprende los comandos para: realizar consultas, insertar, modificar, eliminar.
Comados mas utilizados son: SELECT, INSERT, UPDATE, DELETE(Elimina informacion no la tabla).

Algunas consultas y creacion de tablas
http://es.wikipedia.org/wiki/SQL

Algo mas completo sobre DB
http://foro.elhacker.net/bases_de_datos/iniciando_en_base_de_datos-t273232.0.html

2- ADO.NET

Que es ADO.NET? Es im conjunto de librerias orientadas a objetos que nos permite interactuar con la base de datos, archivos de: texto, XML, plantillas excel, etc.

Estructura de ADO.NET
<Data Providers> MySql
<Data Sets>Obtener informacion de esa DB

Data Providers: Tiene la siguientes clases.
Connection: la cual nos permite establecer la conexion con la DB.
Command: La cual nos permite hacer cualquier tipo de consulta y eliminacion(datos) a la DB
Parameter: Parametros para ser usados en un Command.
DataAdapter: Es el elemento que nos permite almacenar los datos obtenidos de una DB en un objeto Data Set.
DataReader: Es la clase que nos permite procesar los resultados.

Data Sets: Contiene las siguientes clases

DataTable: Representa una unica tabla
     -DataColumn: Columna de la tabla con su nombre y tipo.
     -DataRow: Fila de la tabla  y nos permite realizar acciones sobre ella

DataRelation: Representa las relaciones entre las tablas.

Constraint: Las restricciones de la tabla.


SQLHelper

SQLHelper es una clase que nos permite reducir lineas de codigo que usaremos para establecer la conexion a la DB.

Metodos de SQLHelper:
ExecuteDataSet
ExecuteNonQuery
ExecuteReader
ExecuteScalar
ExecuteXmlReader

Mas info: http://es.wikipedia.org/wiki/ADO.NET

3- C# & ADO.NET

Realizando Consultas a la DB con C#

Código
  1. using System;
  2. using System.Data;
  3. using System.Data.SqlClient;
  4. /*Estas son las librerias que necesitaremos incluir a nuestro proyecto para utilizar las clases y metodos explicados anteriormente.
  5. */
  6.  
  7. Class ConexionEjemplo
  8. {
  9. public static void Main(string[] args)
  10. {
  11.  
  12.            //Establecemos conexion
  13.    SqlConnection conexion = new SqlConnection();
  14.            conexion.ConnectionString = "Data Source=VerImagen;User Id=User;password=Password;Initial Catalog=NombreDeLaDB;";
  15.  
  16.    //Instaciamos el DataReader donde se guardaran los datos
  17.    SqlDataReader read=null;
  18.  
  19.  
  20.            try{
  21.  
  22.  //Abrimos la conexion
  23.  conectar.Open();
  24.  
  25.  //Realizamos una consulta
  26.  SqlCommand consulta=new SqlCommand("SELECT * FROM autos", conexion);
  27.  
  28.  //Cargamos los datos al DataReader
  29.  read= consulta.ExecuteReader();
  30.  
  31.  while(read.Read())
  32.  {
  33. Console.WriteLine("Mostramos el contenido de Auto: "+read[0]);
  34.  
  35.  }
  36.       }
  37. finally
  38. {
  39. if(read!=null)
  40. read.Close();
  41. if(conexion!=null)
  42. conexion.Close();
  43. }
  44.  
  45.  
  46. }
  47. }
  48.  

Para insertar datos a la tabla.


Código
  1.        public static void Main(string[] args)
  2. {
  3.  
  4.            //Establecemos conexion
  5.    SqlConnection conexion = new SqlConnection();
  6.            conexion.ConnectionString = "Data Source=VerImagen;User Id=User;password=Password;Initial Catalog=NombreDeLaDB;";
  7.  
  8.    //Instaciamos el DataReader donde se guardaran los datos
  9.    SqlDataReader read=null;
  10.  
  11.  
  12.            try{
  13. String insertar=@" INSERT INTO auto (marca, color, modelo) values("FORD", "VERDE", "2010")";
  14. SqlCommand cargar=new SqlCommand(insertar, conexion);//pasamos al command el query y la conexion
  15.  
  16. cargar.ExecuteNonQuery();//Actualizamos. Si miramos en la DB vamos a ver este nuevo registro.
  17.  
  18.       }
  19. finally
  20. {
  21. //if(read!=null)//
  22. //read.Close();// Como no utilizamos un dataReader este if no iria, ya que no abrimos un reader.
  23. if(conexion!=null)
  24. conexion.Close();
  25. }
  26.  
  27.  
  28. }
  29. }

De La misma manera que insertamos podemos hacer un UPDATE o un DET, esto dependera de la consulta que enviemos en nuestro string.


Usando el metodo ExecuteScalar();

Código
  1.        public static void Main(string[] args)
  2. {
  3.  
  4. try{
  5. conexion.Open();
  6.  
  7. SqlCommand obtener=new SqlCommand("SELECT count(marca) FROM auto",conexion);
  8.  
  9. marcaTotal=(int).ExecuteScalar();
  10.  
  11.     }
  12.     finally
  13.       {
  14.  
  15.     if(conexion!=null)
  16.       conexion.Close();
  17.     }
  18.  
  19.  
  20.   Console.WriteLine("Cantidad de marcas:"+ marcaTotal);
  21. }
  22.  


                                                                            


Código
  1. conexion.ConnectionString = "Data Source=Nombre del Servidor;User Id=User;password=Password;Initial Catalog=NombreDeLaDB";

Si nuestra base de datos como en el caso de la imagen se autentifica con el usuario de windows  hay que agregar un parametro mas a nuestra conexion

Código
  1. conexion.ConnectionString = "Data Source=Nombre del Servidor;Initial Catalog=NombreDeLaDB; Trusted_Connection=true";


« Última modificación: 14 Agosto 2011, 05:10 am por Mr.Blue » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Tutorial
Ingeniería Inversa
Blue_box 5 3,866 Último mensaje 15 Septiembre 2004, 00:48 am
por Blue_box
TUTORIAL RSS
Tutoriales - Documentación
NeoCalderon 6 10,268 Último mensaje 7 Junio 2005, 17:49 pm
por + enrique ZP
[Tutorial] Crear un servidor para WoW usando ArcEmu y NCDB [Tutorial] « 1 2 ... 210 211 »
Juegos y Consolas
Ariath 2,101 927,348 Último mensaje 2 Junio 2009, 22:54 pm
por Ariath
PGP Tutorial
Criptografía
AlbertoBSD 1 2,245 Último mensaje 15 Febrero 2024, 16:31 pm
por TickTack
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines