sábado, 22 de noviembre de 2008

Agregar datos a base de datos en Access

Primero, tenemos que saber como está compuesta una base de datos.

No tengo ganas de darme todo un curso teórico sobre base de datos, porque hablando en serio, ni siquiera yo lo sé.



En la imagen anterior, lo de la izquierda (Login) es una tabla, mientras que ID, Usuario, y Contraseña son los campos de la tabla. En tipo de dato se selecciona el dato que colocará el usuario (Si es edad numérico, si es nombre Texto, etc.)

Bueno, crearemos una base de datos, crear una tabla llamada Login (como la de la imagen anterior), y dos campos de tabla (Usuario y contraseña).

Empezando ...

Bueno, empezamos con código en Visual Basic .NET :)

Como primer paso, crearemos un nuevo proyecto, de tipo "Aplicación de Windows", y le insertaremos controles de la siguiente forma:



Como ven, insertamos 2 controles Textbox, 2 Labels y un Button.

Lo que hará el programa es, insertar el dato escrito en Textbox1 (Correspondiente a usuario) en el campo de usuario de la base de datos, y el dato escrito en Textbox2 (Correspondiente a contraseña) en el campo de una contraseña de la base de datos.

Como primer paso importamos System.Data.OleDb de la siguiente manera:

En declaraciones colocamos:

Imports System.Data.Oledb
Luego, en el botón, colocamos la validación de los textbox (que no estén vacios, etc)

If Trim(TextBox1.Text) = "" Or Trim(TextBox2.Text) = "" Then
MessageBox.Show("No se ha ingresado ningún caracter")
Else
Validar(Textbox1.Text, textbox2.text)
End If
Código traducido:

Si sacándole los espacios vacíos a textbox1 (usuario) o textbox2 (contraseña), quedan sin ningun caracter, entonces mandar mensaje de que no se ha ingresado ningún caracter.

Para poder seguir, hace falta que sepas como obtener la Cadena de conexión a la base de datos. Si yo tengo mi base de datos de access guardada en disco C:, y ésta base de datos se denomina "Login.mdb" entonces, tendré que poner esta cadena de conexión:

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\login.mdb

En caso de que no sepas la tuya, copia y pega esa, pero cambiale lo que sigue después de "Data source=" por la dirección donde se encuentra tu base de datos.

Seguimos, creamos un procedimiento de la siguiente manera:

Sub validar(byval usuario as string, contraseña as string)
Try
Dim cadena As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\login.mdb"
Dim conectar As New OleDbConnection(cadena)
Dim cadenacomando As String = "Insert Into Login(Usuario,Contraseña) Values(@Usuario,@Contraseña)"
Dim comando As New OleDbCommand(cadenacomando, conectar)
comando.Parameters.Add(New OleDbParameter("@usuario", OleDbType.VarWChar))
comando.Parameters("@usuario").Value = usuario
comando.Parameters.Add(New OleDbParameter("@contraseña", OleDbType.VarWChar))
comando.Parameters("@contraseña").Value = contraseña
conectar.Open()
comando.ExecuteNonQuery()
conectar.Close()
Catch ex As Exception
MessageBox.Show("Error: " & vbNewLine & ex.Message)
End Try
End sub
Explicamos el código:

Creamos un procedimiento llamado Validar, al que se le pasarán dos argumentos, el nombre de usuario a agregar, y la contraseña. Luego declaramos cadena, como un texto, y dentro de ella colocamos la cadena de conexión de la base de datos, hablada anteriormente. Declaramos la cadena de texto comando, que es lo que se ejecutará frente a la base de datos, este comando dice "Insertar en Login (usuario,contraseña) Los valores (@usuario,@contraseña)". A estos valores (@usuario y @contraseña) después se les indicará que son los que escribe el usuario.
Declaramos un comando, que se le pasará la cadena del comando, y la conexión a la que se aplicará. Agregamos parámetros al comando, y se indica que @usuario
tendrá el valor de nombre (el primer argumento que hablamos), lo mismo hacemos con @contraseña.

Finalmente abrimos la conexión, ejecutamos el comando, y la cerramos.


Probando el programa..

Ejecutamos el programa, e intentamos añadir a usuario un valor, Ejemplo "Hola" y a Contraseña otro valor, ejemplo "123456".

Apretamos sobre el botón, y si la validación fue correcta, ya tendremos los datos agregados a la base de datos.





Para aprender otros comandos, buscá en google tutoriales sobre Programación sobre SQL, te recomiendo que será muy necesario para trabajar con base de datos :)

Descarga del proyecto:

Bajar desde RAPIDSHARE
Bajar desde MEGAUPLOAD
Bajar desde SENDSPACE

Mucha suerte, espero que lo hayas entendido.

Fekaa.-

1 comentario:

Alex dijo...

Hay muchas problemas semejantes que pueden resolver por instrumentos especiales como siguente. Pero uno de mejor el programa es actual que socorre me unos semanas antes - programa para recuperar archivos access.