Visual Basic.NET - codigo vb6 a codigo vs 2017

 
Vista:
sin imagen de perfil

codigo vb6 a codigo vs 2017

Publicado por QUESTOR (23 intervenciones) el 18/07/2018 02:05:11
PARA MOVER EL VALOR DE UN CAMPO DE UNA TABLA EN VB6, DESPUES DE HABER ABIERTO LA CONECCION Y DESPUES DE HABER SELECCIONADO LOS DATOS, LO HAGO DE LA SIGUIENTE MANERA:

VARIABLE CAMPO

UserName = rstUSERS!NOMBRE

EN VISUAL BASIC 6.0 SI ME FUNCIONA, PERO EN VISUAL STUDIO 2017 ME MANDA ERROR DE SINTAXIS, ALGUIEN ME PODRIA AYUDAR E INFORMARME CUAL SERIA LA SINTAXIS CORRECTA.

GRACIAS.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 190
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

codigo vb6 a codigo vs 2017

Publicado por Cesar (69 intervenciones) el 18/07/2018 18:06:34
Hola.

En .Net tienes muchas formas de accesar los datos de una base.

El objeto de .Net, mas o menos equivalente, al RecordSet que empleas en VB 6.0, es el DataReader, aunque tambien puedes emplear DataTable, DataSet, DataAdapter, etc.

En tu caso, si estas acostumbrado a emplear "NombreObjeto.NombreColumna", creo que te comviene emplear Entity Framework.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

codigo vb6 a codigo vs 2017

Publicado por QUESTOR (23 intervenciones) el 18/07/2018 19:55:48
GRACIAS CESAR, VOY A PROBAR Y TE INFORMO, COMO TODO LO HAGO A TRAVES DE CODIGO, NO ME GUSTA USAR LAS HERRAMIENTAS QUE TRAE EL SISTEMA PARA CONECTARSE A UNA BASE DE DATOS Y ABRIR UN RECORDSET, PERO DEJAME ME LO AVIENTO A PATIN, HABER QUE SUCEDE.

SALUDOS CORDIALES.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 190
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

codigo vb6 a codigo vs 2017

Publicado por Cesar (69 intervenciones) el 18/07/2018 20:41:13
Hola.

Si eres de los que hacen todo mediante codigo, aqui tienes un ejemplo con DataTable:

1
2
3
4
5
6
7
Dim cn = New SQLConnection("Cadena conexion")
    cn.Open()
    Dim cmd = New SQLCommand("Sentencia SQL", cn)
    Dim rd = cmd.ExecuteReader()
    Dim dt = New DataTable()
    dt.Load(rd)
    cn.Close()

Posteriormente, para leer los valores, solo lee las filas del DataTable:

1
2
3
For Each dr As DataRow In dt.Rows
	Console.WriteLine(dr("NombreColumna").ToString())
Next

Una sugerencia. No escribas todo con mayusculas, ya que ademas de que ademas de que se dificulta la lectura, se interpreta como que estas gritando.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

codigo vb6 a codigo vs 2017

Publicado por QUESTOR (23 intervenciones) el 19/07/2018 01:28:10
ESTIMADO CESAR, YA LO HICE COMO ME LO INDICAS Y ME MANDA UN ERROR:

438-NO SE ENCUENTRA EL MIEMBRO PUBLICO 'ExecuteReader' EN EL TIPO 'RecordSet' .

DISCULPA LA MOLESTIA, GRACIAS POR AYUDARME.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 190
Ha aumentado 1 puesto en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

codigo vb6 a codigo vs 2017

Publicado por Cesar (69 intervenciones) el 19/07/2018 01:33:57
Hola.

Repito, NO escribas con mayusculas.

Y NO lo hiciste como en el ejemplo que puse.

En mi codigo, no estoy utilizando un RecordSet.

Estoy utilizando un Command.

El metodo ExecuteReader, es de los objetos Command.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

codigo vb6 a codigo vs 2017

Publicado por QUESTOR (23 intervenciones) el 25/07/2018 01:36:58
Estimado César, muchas gracias por haberte tomado un tiempo para asesorarme, ya lo resolvi de la siguiente manera:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Try
    Dim Ruta As String = Nothing
    Ruta = "C:\Cooperativa\Cooperativa.mdb"
    Using cnx As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Ruta)
        cnx.Open()
        Dim Pssw As String
        Pssw = TextBox2.Text
        sSql = "SELECT * FROM USUARIOS WHERE CLAVE = '" & TextBox1.Text & "'" & " AND PASSWORD = '" & EncryptStr(Pssw) & "'"
        Dim cmd As New OleDbCommand(sSql, cnx)
        cmd.CommandType = CommandType.Text
        cmd.Parameters.AddWithValue("CLAVE", TextBox1.Text)
        Dim lectura As OleDbDataReader = cmd.ExecuteReader()
        If lectura.Read = True Then
            UserName = CStr(lectura(2))
            UserLogin = CStr(lectura(3))
            strClave = CStr(lectura(4))
        End If
        cnx.Close()
        lectura.Close()
    End Using
Catch ex As Exception
    MessageBox.Show("Error : " + ex.Message + "", "¡Ocurrio el siguiente Error!", MessageBoxButtons.OK, MessageBoxIcon.Error)
    rstUSERS = Nothing
End Try

Y listo, todo salio bien, muchas gracias, saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Wilfredo Patricio Castillo
Val: 1.349
Plata
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

codigo vb6 a codigo vs 2017

Publicado por Wilfredo Patricio Castillo (628 intervenciones) el 21/07/2018 18:03:43
Recordset no existe en .NET

Dim Rd as SqlDataReader=cmd.execureReader()
Eso te indicaron que hagas.

Saludos cordiales,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar