Introducción
Aunque personalmente prefiero usar MySQL como motor de base
de datos, por cosas del trabajo se me ha dado la oportunidad de trabajar con
Access últimamente y aunque no me he tomado con mayores problemas hasta el
momento, las cosas si son un poco diferentes, por lo cual voy a publicar una
serie de ejemplos para fomentar el uso de estas tecnología en pequeños
desarrollos.
En cuanto al desarrollo de software
Bueno en esta ocasión empezare a publicar un programa completo desarrollado en VB.NET y que se conecte a una base de datos (Access como ya sabemos).Empezaremos por realizar el Loggin o formulario de inicio de sesión, así que una vez tengamos creado nuestro proyecto agregaremos un nuevo formulario pero del tipo “Formulario de inicio de sesion”
Si no sabes cómo se realiza esto, en el panel superior de VB.NET; esta la opción “Proyecto” y luego damos en “Agregar Windows Form…” y en la ventana que aparecerá seleccionar “Formulario de Inicio de Sesión”
Una vez creado esto, el siguiente paso es crear un modulo; Presionamos en “Proyecto”>”Agregar modulo…”
Ahora en el módulo que acabamos de crear vamos a agregar el siguiente código y debería quedarnos así:
Module Module1
Public conn As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;
Data
Source=C:\Users\Camel\Desktop\HelloBD.mdb;
Jet OLEDB:Database Password=Rosa1253;")
Public Function
conectarBD()
Try
conn.Open()
Return True
Catch ex As Exception
'Return False
MsgBox("Error
en la conexion a DB" + vbCrLf + "Contacte
al programador" + vbCrLf + "Error: " + ex.ToString)
End Try
End Function
End Module
En este módulo tenemos para iniciar la variable "conn" que será la que contiene la dirección y las credenciales de nuestra base de datos para posteriormente conectarnos a ella. No olvides cambiar C:\Users\Camel\Desktop\HelloBD.mdb por la ubicación de tu base de datos y Rosa1253 por la contraseña de la misma.
Como segundo elemento en el módulo tenemos una función pública que se llama conectarBD que como su nombre lo indica es la encargada de conectar nuestro programa a la base de datos.
Como segundo paso nos iremos al LoginForm que creamos antes y al final agregaremos el siguiente
método
Private Function Loggiar(ByVal
user As String,
ByVal pswd As String)
Dim cmd5 As New OleDb.OleDbCommand
Dim dr5 As
OleDb.OleDbDataReader
cmd5.Connection
= conn
cmd5.CommandType = CommandType.Text
cmd5.CommandText = "Select * FROM
Funcionarios Where Usuario='" & user & "' AND Pswd='" & pswd & "'"
Try
dr5 =
cmd5.ExecuteReader()
If dr5.HasRows Then
Dim x = 0
While dr5.Read
'contraseña = (dr5(2).ToString)
'Iniciar(dr5(4).ToString, dr5(3).ToString, dr5(5).ToString)
x =
x + 1
Return True
End While
Else
Return False
End If
dr5.Close()
Catch ex As Exception
MsgBox(ex.ToString)
End
End Try
End Function
conexión a la base de datos y nos quedara algo como esto:
Private Sub LoginForm1_Load(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
conectarBD()
End Sub
Private Sub OK_Click(ByVal
sender As System.Object, ByVal e As
System.EventArgs) Handles OK.Click
If Loggiar(Me.UsernameTextBox.Text,
Me.PasswordTextBox.Text) = True Then
'Ingreso correctamente
Form1.Show()
Else
'Datos
incorrectos
MsgBox("Error")
End If
End Sub
En cuanto a la base de datos
El criterio de la base de datos es suya, pueden manejar la estructura que más les convenga. En mi caso tengo una tabla Usuarios y contiene los campos Usuario (Nickname) y Passsword (La contraseña de dicho usuario)cmd5.CommandText = "Select * FROM Funcionarios Where Usuario='" & user & "' AND Pswd='" & pswd & "'"
En caso de que tu estructura no sea igual solo modifica los campos y el nombre de la tabla y con eso será suficiente.
No hay comentarios:
Publicar un comentario