ASP.NET - Insertar registro en base de datos

 
Vista:

Insertar registro en base de datos

Publicado por LitO_ (11 intervenciones) el 03/06/2005 18:51:09
Es asi, estoy estudiando ADO.NET y me esta volviendo loco, no puedo agregar un registro a una base de datos.

Cuando llamo a este procedimiento me tira error "Referencia a objeto no establecida como instancia de un objeto."
Existes las 3 caja de texto que llamo abajo.

Pongo este codigo:

Sub Insertar(sender As Object, e As EventArgs)

Dim str As String
str = "Provider=Microsoft.Jet.OleDb.4.0; Data Source=C:\Inetpub\wwwroot\asp\db.mdb"
Dim Conexion As New OleDbConnection (str)
Dim Comando As OleDbCommand

DIM q As String
q = "insert into datos(id, nombre, apellido) values (@id, @nombre, @apellido)"

Comando.CommandText = q
Comando.Connection = Conexion

Comando.Parameters.Add(new OleDbParameter("@id", OleDbType.Integer))
Comando.Parameters("@id").Value = idTexto.Text

Comando.Parameters.Add(new OleDbParameter("@nombre", OleDbType.VarWChar, 20))
Comando.Parameters("@nombre").Value = nombreTexto.Text

Comando.Parameters.Add(new OleDbParameter("@apellido", OleDbType.VarWChar, 20))
Comando.Parameters("@apellido").Value = apellidoTexto.Text

Comando.Connection.Open()
Comando.ExecuteNonQuery()
Comando.Connection.Close()

End Sub
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

RE:Insertar registro en base de datos

Publicado por Ricardo Yanisselli (4 intervenciones) el 03/06/2005 23:12:11
Sub Insertar(ByVal sender As Object, ByVal e As EventArgs)

Dim str As String
'si la base de datos esta en el root de tu aplicacion web usa mejor server.mappath
str = "Provider=Microsoft.Jet.OleDb.4.0; Data Source=" + Server.MapPath("db.mdb") 'C:\Inetpub\wwwroot\asp\db.mdb"
Dim Conexion As New System.Data.OleDb.OleDbConnection(str)
Conexion.Open()
Dim q As String

q = "insert into datos(id, nombre, apellido) values (@id, @nombre, @apellido)"
Dim Comando As System.Data.OleDb.OleDbCommand = New System.Data.OleDb.OleDbCommand(q, Conexion)
With Comando
.CommandType = CommandType.Text
.Parameters.Add("@id", OleDb.OleDbType.Integer, 10).Value = idTexto.Text
.Parameters.Add("@nombre", OleDb.OleDbType.VarChar, 100).Value = nombreTexto.Text
.Parameters.Add("@apellido", OleDb.OleDbType.VarChar, 100).Value = apellidoTexto.Text
Try
.ExecuteNonQuery()
Catch ex As Exception
Response.Write("<script>var p = alert('" + ex.Message.ToString + "');</script>")
End Try
End With
Comando = Nothing
Conexion.Close()
Conexion = Nothing

End Sub

espero te sirva(nota: debes hacer los imports de los dlls al principio de la pagina)
<%@ import namespaces="System"%>
<%@ import namespaces="System.Data"%>
<%@ import namespaces="System.Data.OleDb"%>
esto si es html
o bien desde el servidor
imports system
imports system.data
imports system.data.oledb
Cualquier pregunta me puedes escribir
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

RE:Insertar registro en base de datos

Publicado por LitO_ (11 intervenciones) el 03/06/2005 23:49:47
MIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIL GRACIASSSSSSSSSS!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
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