Foros del Web » Programación para mayores de 30 ;) » .NET »

Error al intentar introducir un nuevo registro.

Estas en el tema de Error al intentar introducir un nuevo registro. en el foro de .NET en Foros del Web. Tengo una página en asp.net con vb, y una BD access, y cuando intento meter datos me da error en la instrucción insert. Este es ...
  #1 (permalink)  
Antiguo 26/07/2004, 05:51
 
Fecha de Ingreso: enero-2002
Mensajes: 182
Antigüedad: 22 años, 3 meses
Puntos: 0
Error al intentar introducir un nuevo registro.

Tengo una página en asp.net con vb, y una BD access, y cuando intento meter datos me da error en la instrucción insert.

Este es el codigo que utilizo:

Código PHP:
<%@ Page Language="VB" Debug="True" %> 
<%@ 
import Namespace="System.Data" %> 
<%@ 
import Namespace="System.Data.OleDb" %> 

<
script runat="server"
    
    
Dim cadena As String "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" Server.MapPath("cliente1.mdb;")
             
Sub boton_Click(Sender As ObjectAs EventArgs
            
        
Dim conexion As new OleDbConnection(cadena
        
Dim insertar As OleDbCommand = new OleDbCommand() 
        
insertar.Connection conexion 
        insertar
.CommandText "INSERT INTO cliente (login,password) VALUES (@variable1, @variable2)" 
             
        
insertar.Parameters.Add("@variable1"OleDbType.VarChar50).Value textbox1.value 
        insertar
.Parameters.Add("@variable2"OleDbType.VarChar50).Value textbox2.value 
     
      
Try 
            
conexion.Open() 
            
insertar.ExecuteNonQuery() 
     
      Catch 
ex as Exception 
            Message
.Text ex.ToString() 
     
      
Finally 
            conexion
.Close() 
     
        
End Try 
     
         
    
End Sub 
</script>
 
<html> 
<head> 
</head> 
<body> 
<form runat="server"> 
Textbox1: <input type="text" id="textbox1" runat="server"> 
Textbox2: <input type="text" id="textbox2" runat="server"> 
<input type="submit" OnServerClick="boton_Click" value="Agregar" runat="server"> 
<asp:Label id="Message" runat="server" width="80%" ForeColor="red" EnableViewState="false"></asp:Label> 
    </form> 
</body> 
</html> 
El error:

Código PHP:
System.Data.OleDb.OleDbExceptionError de sintaxis en la instrucción INSERT INTOat
System
.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(Int32 hrat 
System
.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParamsObjectexecuteResultat
 System
.Data.OleDb.OleDbCommand.ExecuteCommandText(ObjectexecuteResultat 
System
.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behaviorObjectexecuteResultat 
System
.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behaviorString methodat 
System
.Data.OleDb.OleDbCommand.ExecuteNonQuery() at ASP.insertar2_aspx.boton_Click(Object SenderEventArgs Ein C:InetpubwwwrootOverlayinsertar2.aspx:line 21 
Muchas gracias.
  #2 (permalink)  
Antiguo 26/07/2004, 06:41
Avatar de luiscl  
Fecha de Ingreso: abril-2004
Ubicación: Zaragoza
Mensajes: 305
Antigüedad: 20 años
Puntos: 0
Prueba a dejar la consulta de este modo.


Dim conexion As New OleDbConnection(cadena)
Dim insertar As New OleDbCommand
Dim seleccion As String

seleccion= " INSERT INTO cliente (login, Password) VALUES (@variable1, @variable2)"

insertar= New OleDbCommand(seleccion, conexion)

insertar.Parameters.Add(New OleDbParameter("@variable1", OleDbType.VarChar, 50))
seleccionGcaracteristicas.Parameters("@variable1") .Value = Server.HtmlEncode(textbox1.text)

insertar.Parameters.Add(New OleDbParameter("@variable2", OleDbType.VarChar, 50))
seleccionGcaracteristicas.Parameters("@variable2") .Value = Server.HtmlEncode(textbox2.text)
__________________
Pide lo que quieras...y luego paga por ello
  #3 (permalink)  
Antiguo 26/07/2004, 08:51
 
Fecha de Ingreso: enero-2002
Mensajes: 182
Antigüedad: 22 años, 3 meses
Puntos: 0
Que es seleccionGcaracteristicas.
  #4 (permalink)  
Antiguo 26/07/2004, 09:08
Avatar de luiscl  
Fecha de Ingreso: abril-2004
Ubicación: Zaragoza
Mensajes: 305
Antigüedad: 20 años
Puntos: 0
nada. En tu caso tienes que sustituirlo por "insertar"
__________________
Pide lo que quieras...y luego paga por ello
  #5 (permalink)  
Antiguo 26/07/2004, 09:12
 
Fecha de Ingreso: enero-2002
Mensajes: 182
Antigüedad: 22 años, 3 meses
Puntos: 0
me da este error

'text' no es un miembro de 'System.Web.UI.HtmlControls.HtmlInputText'

en esta linea

insertar.Parameters("@variable1").Value = Server.HtmlEncode(textbox1.text)

siento molestarte. Gracias por tu ayuda.
  #6 (permalink)  
Antiguo 26/07/2004, 09:35
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Al parecer estás manejando un HTML Control...por lo cual sería así:

Cita:
insertar.Parameters("@variable1").Value = Server.HtmlEncode(Textbox1.Value)
Salu2
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #7 (permalink)  
Antiguo 26/07/2004, 09:42
 
Fecha de Ingreso: enero-2002
Mensajes: 182
Antigüedad: 22 años, 3 meses
Puntos: 0
Ya he conseguido resolver el error de compilación pero sigue dando el mismo error que con mi codigo inicial, error:

Error de sintaxis en la instrucción INSERT INTO

Ayudaaaaa.
  #8 (permalink)  
Antiguo 26/07/2004, 11:19
 
Fecha de Ingreso: enero-2002
Mensajes: 182
Antigüedad: 22 años, 3 meses
Puntos: 0
Parece ser, aunque parezca increible, que el problema estaba en el nombre de los campos de la base de datos, en este caso login y password, los he cambiado y ya funcionan ambos codigos, muchas gracias por el tiempo perdido, y un saludo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:19.