Visual Basic - Visual basic 2010 con ACCES 2007

Life is soft - evento anual de software empresarial
   
Vista:

Visual basic 2010 con ACCES 2007

Publicado por Mariano (50 intervenciones) el 05/01/2018 20:26:13
Hola soy nuevo en vb.net 2010
y no puedo lograr gudar unos text a una base de acces
tengo este codigo que no funciona, me darian una mano

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
Imports System.Data.OleDb
Imports System.Data
Public Class Form1
    Dim CMD As OleDb.OleDbCommand
    Dim conexion As New OleDb.OleDbConnection '"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Mariano\Desktop\CLM VB2010\BDProyecto.mdb")
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CmdAceptar.Click
        Dim con As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Mariano\Desktop\CLM VB2010\BDProyecto.mdb"
        Try
            conexion.Open()
            CMD = New OleDb.OleDbCommand("insert into login values (usuario)values(' " + TxtUsu.Text + "','" + TxtCla.Text + "','" + TxtTc.Text + "')", conexion)
            CMD.ExecuteNonQuery()
            conexion.Close()
        Catch ex As Exception
            MsgBox("Datos Cargados")
        End Try
 
 
    End Sub
 
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
 
        Dim con As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Mariano\Desktop\CLM VB2010\BDProyecto.mdb"
 
        conexion = New OleDb.OleDbConnection(con)
 
        conexion.Open()
 
 
 
        'Conexion a la Base 
        'Try
        'MsgBox("Estas actualmente conectado")
        '  Catch ex As Exception
        'MsgBox("La BD no se encuntra!!!")
        '  Me.Close()
        '  End Try
 
    End Sub
End Class
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
Imágen de perfil de Leonardo Daniel A.

Visual basic 2010 con ACCES 2007

Publicado por Leonardo Daniel A. (19 intervenciones) el 05/01/2018 20:32:34
esta mal tu Insert.... la sintaxis de la instrucción INSERT es la siguiente:

INSERT INTO nombre_tabla (lista de campos separados por comas)
VALUES (lista de datos separados por comas)

EJ.
1
2
insert into ALUMNOS (ID_ALUMNO , NOMBRE , APELLIDOS , F_NACIMIENTO)
values (1 , 'Pablo' , 'Hernandaz Mata' , '1995-03-14')


Primero aprende SQL ( es estandar para cualquier base de datos )
http://deletesql.com/viewforum.php?f=5&sid=8449980832460f327ae024505b495453
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

Visual basic 2010 con ACCES 2007

Publicado por Mariano (50 intervenciones) el 08/01/2018 12:26:03
Buenos dias

Ahi Modifique el Insert y tampoco me deja

1
2
3
4
5
6
7
8
9
10
11
12
13
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CmdAceptar.Click
    Dim con As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Mariano\Desktop\CLM VB2010\BDProyecto.mdb"
    Try
        conexion.Open()
        CMD = New OleDb.OleDbCommand("insert into login (Usuario,clave,tipo de cuenta)values(' " + TxtUsu.Text + "','" + TxtCla.Text + "','" + TxtTc.Text + "')", conexion)
        CMD.ExecuteNonQuery()
        conexion.Close()
    Catch ex As Exception
        MsgBox("Datos Cargados")
    End Try
 
 
End Sub
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 Leonardo Daniel A.

Visual basic 2010 con ACCES 2007

Publicado por Leonardo Daniel A. (19 intervenciones) el 08/01/2018 17:50:39
Hola tu error esta en el campo "tipo de cuenta" no se pueden usar campos con espacios... es una mala practica, y deberas meterlo entre Corchetes, creo [tipo de cuenta] pero eso te limita a casarte con una base de datos, yo en lo personal uso el estilo CamelCase.... ej.: EmpleadoId, Nombre, TipoCuenta, etc. y las variables igual, pero iniciando en minusculas, al igual que las funciones y procedimientos iniciando en minusculas

y te recomiendo siempre pongas tu sentencia SQL en una variable, asi es mas facil depurar, le pones un punto de ruptura en esa linea y cuando pase x ahi el programa se va a parar y pones el mouse encima de tu variable y te dira que contiene, o haces un messagebox para ver como se formo

dim insSQL as String

insSQL = tu sentencia SQL

y si esta mal formada, le faltan comillas o le sobran o algo te marcara error, si no le faltan pero esta mal formada con el depurador o el msgbox lo sabras
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

Visual basic 2010 con ACCES 2007

Publicado por Mariano (50 intervenciones) el 08/01/2018 18:58:53
Hola nueva mente
agradezco mucho tu ayuda, y hago todo lo que me dijiste y no se si lo estoy haciendo bien por que no nguarda la info en la bd

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CmdAceptar.Click
    Dim SQL As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Mariano\Desktop\CLM VB2010\BDProyecto.mdb"
 
    Try
        conexion.Open()
        CMD = New OleDb.OleDbCommand
        SQL = "insert into login (Usuario,clave,tipodecuenta) VALUES (' " & TxtUsu.Text & "','" & TxtCla.Text & "','" & TxtTc.Text & "')"
        MsgBox(SQL)
        CMD.CommandText = SQL
 
        CMD.ExecuteNonQuery()
        conexion.Close()
    Catch ex As Exception
        MsgBox("Datos Cargados")
    End Try
 
End Sub
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 Leonardo Daniel A.

Visual basic 2010 con ACCES 2007

Publicado por Leonardo Daniel A. (19 intervenciones) el 08/01/2018 21:15:57
Hola y ya verificaste el SQL que te creo ??

ya lo probaste directamente a ver si funciona ? si es asi .. entonces hay algo mal con el codigo de conexion en el

Catch ex as Exception
el msgbox debe ser el codigo de error msbox( ex.Message )


la verdad no uso VB.net nunca me gusto, aunque si me gustaba VB6, yo ando en C#, hay mucho mas documentacion, y mucho mas ejemplos de todo... deberias usar Entity Framework y LinQ para programar en .NET es lo que se usa, ADO es raro que se utilize, yo estoy usando otro ORM que se llama NPOCO que es mucho mas ligero que 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

Visual basic 2010 con ACCES 2007

Publicado por Pepe pcc.nett.2018@hotmail.com (8 intervenciones) el 17/01/2018 14:42:58
Saludos
Con teanviewer podre ayudarte a solucionar tu problema. Instala teanviewer y avisame. Estare a tus ordenes en explicarte un momento
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
Revisar política de publicidad