Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: enterariel en 28 Abril 2009, 18:15 pm



Título: Una Solucion para todos (Base de Datos en VB.NET)
Publicado por: enterariel en 28 Abril 2009, 18:15 pm
Hola soy 1 mas que programo en VB6 y al qurerer pasar en .NET es otro mundo.
Alguien puede ayudarme con este tema yo asi tenia mis proyectos en VB6

en Proyectos cargaba las referencias asi:

(http://img83.imageshack.us/img83/851/referencias.jpg) (http://img83.imageshack.us/my.php?image=referencias.jpg)

En un Modulo declaro las conexiones y otras variables

Código:
Public ADOConexion As ADODB.Connection
Public ComandoSQL As String

Public DB As Database
Public RS As Recordset

Public StrSQL As String

'----------------------------------------------------------------------------------------------------------------------------------------------------------------------
'//Este es para Conectar con la base de datos.

Public Sub ConectarADO()
    Set ADOConexion = New ADODB.Connection
    ADOConexion.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\CONTROL\BDATOS.MDB;Persist Security Info=False"
    ADOConexion.Open
End Sub

'// Este es para cerrar la base de datos.

Public Sub CerrarADO()
    ADOConexion.Close
    Set ADOConexion = Nothing
End Sub
'----------------------------------------------------------------------------------------------------------------------------------------------------------------------

'----------------------------------------------------------------------------------------------------------------------------------------------------------------------
'//El DAO utilizo para hacer mis reportes segun por lo que ley en algunos foros es mas rapido solo por eso uso.

'//Este es para conectar con la base de datos
Public Sub ConectarDAO()
    Set DB = OpenDatabase("C:\CONTROL\BDATOS.MDB", True, False)
    Set RS = DB.OpenRecordset(StrSQL)
End Sub

'//Este es para Cerrar la BaseDatos

Public Sub CerrarDAO()
    DB.Close
    Set DB = Nothing
    Set RS = Nothing
End Sub

'----------------------------------------------------------------------------------------------------------------------------------------------------------------------

Ahora para guardar los datos tengo asi mi formulario

(http://img216.imageshack.us/img216/5049/altausuarios.jpg) (http://img216.imageshack.us/my.php?image=altausuarios.jpg)

Este en el boton guardar

Código:
Private Sub cmdGuardar_Click()
           
    Dim Prg
    Prg = MsgBox("Esta seguro que quiere guardar el registro", vbOKCancel + vbInformation, "Guardar registro")
   
    If Prg = vbOK Then
           
        V01 = "'" & txtCodigo.Text & "'"
        V02 = "'" & txtNombre.Text & "'"
        V03 = "'" & txtTurno.Text & "'"
       
        '+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-+
        '// Conectar la Base Datos con ADO
            Call ConectarADO
        '+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-+

            ComandoSQL = "INSERT INTO PERSONAL (CODIGO, NOMBRE, TURNO) VALUES (" & V01 & "," & V02 & "," & V03 & ")"
            ADOConexion.Execute ComandoSQL
       
        '+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-+
        '// Cerrar la base de datos y liberar la memoria
            Call CerrarADO
        '+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-+

    End If
   
End Sub

Código:
Private Sub cmdEliminar_Click()

    Dim Prg
    Prg = MsgBox("Esta seguro que quiere eliminar el registro", vbOKCancel + vbInformation, "Eliminar registro")
   
    If Prg = vbOK Then
       
        '+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-+
        '// Conectar la Base Datos con ADO
            Call ConectarADO
        '+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-+

            ComandoSQL = "DELETE FROM PERSONAL WHERE CODIGO = '" & ListView1.SelectedItem.Text & "'"
            ADOConexion.Execute ComandoSQL
           
        '+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-+
        '// Cerrar la base de datos y liberar la memoria
            Call CerrarADO
        '+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-+

    End If

End Sub


'//Este utilizo para cargar la tabla en el control ListView

Código:
Sub Cargar_Personal()

    ListView1.ListItems.Clear
    StrSQL = "SELECT * FROM PERSONAL ORDER BY NOMBRE"
       
    '+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-+
    '// Conectar a la Base de Datos
        ConectarDAO
    '+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-+
               
        Do Until RS.EOF
           
            Set TLS = ListView1.ListItems.Add()
            TLS.Text = RS.Fields("CODIGO") & ""
            TLS.SubItems(1) = RS.Fields("NOMBRE") & ""
            TLS.SubItems(2) = RS.Fields("TURNO") & ""
           
            RS.MoveNext
           
        Loop
       
    '+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-+
    '// Cerrar la base de datos y liberar la memoria
        CerrarDAO
    '+-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-+

End Sub


Se puede hacer esto en Visual Basic 2008 pero conectar toda las base de datos por medio de codigo


Título: Re: Una Solucion para todos (Base de Datos en VB.NET)
Publicado por: odeONeSs en 28 Abril 2009, 21:01 pm
Esta muy bien, pero prueba a poner esto a ver que pasa:
en el txtnombre pon una comilla ' y dale a guardar.

Saludos!


Título: Re: Una Solucion para todos (Base de Datos en VB.NET)
Publicado por: enterariel en 28 Abril 2009, 21:34 pm
odeONeSs gracias por responder creo que no me entendiste yo esto ago en visual basic 6.0, lo quiero hacer es algo igual en Visual Basic 2008 .NET


Título: Re: Una Solucion para todos (Base de Datos en VB.NET)
Publicado por: odeONeSs en 28 Abril 2009, 21:46 pm
Cierto perdon no te entendi bien! 
mira este enlace:

http://www.elguille.info/net/adonet/ejemploAccess.htm