By Diógenes Amaury MS
Saludos amigo@s
Hoy veremos como guardar un registro desde asp.net, para ello utilizaremos a sql server 2008 como manejador de base de datos.
Primero debemos crear una base de datos que en mi caso la nombre ControlEstudiante, una tabla llamada Estudiantes con la siguiente estructura:
[MATEST] [varchar](15) NOT NULL
[NOMEST] [varchar](50) NULL
[APEEST] [varchar](50) NULL
[DIREST] [varchar](100) NULL
txtmatest
txtnomest
txtapeest
txtdirest
Ahora vamos a la propiedad Enabled de cada uno de los objetos y la cambiamos a false.
Para hacer esto simplemente seleccione el objeto y valla a la ventana de propiedades, en caso de que no este disponible pulse la tecla F4.
En el botón Nuevo agregue el siguiente código:
Session("esnuevo") = "si"
txtmatest.Enabled = True
txtnomest.Enabled = True
txtapeest.Enabled = True
txtdirest.Enabled = True
Lo que hicimos fue declarar una variable de sesión para controlar luego si insertamos o actualizamos el registro.
agregamos la instancia con la base de datos que deseamos trabajar, para nuestro ejempoo es sql server.
Imports System.Data
Imports System.Data.SqlClient
Declaramos la conexion a la base de datos.
Dim conexion As New SqlConnection("Data Source=USER-PC\SQLEXPRESS;Initial Catalog=ControlEstudiante;Integrated Security=True")
En el botón guardar declaramos el siguiente código.
Dim QUERY As String
If Session("esnuevo") = "si" Then
QUERY = "INSERT INTO ESTUDIANTES (MATEST,NOMEST,APEEST,DIREST)" & _
"VALUES(" & Val(txtmatest.Text) & ",'" & _
txtnomest.Text & "','" & _
txtapeest.Text & "','" & _
txtdirest.Text & "')"
Else
QUERY = "UPDATE ESTUDIANTES SET NOMEST ='" & txtnomest.Text & "', APEEST ='" & txtapeest.Text & "', DIREST = '" & txtdirest.Text & "' WHERE MATEST LIKE '" & txtmatest.Text & "'"
End If
conexion.Open()
Dim cmd1 As New SqlCommand()
cmd1.Connection = conexion
cmd1.CommandType =
cmd1.CommandText = QUERY
cmd1.ExecuteNonQuery()
conexion.Close()
'txtmatest.Enabled = False
'txtnomest.Enabled = False
'txtapeest.Enabled = False
'txtdirest.Enabled = False
Session("esnuevo") = "NO"
Noten que utilizamos Session("esnuevo") para determinar si insertamos o actualizamos el registro, luego utilizamos la variable QUERY que será alimentada dependiendo del valor Session("esnuevo").
SqlCommand se encarga de ejecutar dicha sentencia sql.
hasta la próxima.
Hola Diogenes:
ResponderEliminarFAvor verificar el valor que debe llevar la línea: cmd1.CommandType =
No tiene ningún valor después del signo de =
Un saludo
cmd1.CommandType =cmd1.Text
ResponderEliminarPara tu caso, esta parte no es necesaria, ahora si vas atrabajar con stored procedure si, ya que esta sentencia indica el tipo comando que va a ejcutar.
puede ser un strin, un sp, o una tabla directa.
Saludos.