Hola como están.
Mi consulta es la siguiente
Cuando envió datos a la BD no me detecta los errores el try explico cuando no tiene código de pedido ni de proveedor si me marca los errores como la llave de ese valor ya existe o que no estoy mandando la llave primaria eso es con los valores int.
Ahora cuando no ingreso por ejemplo la dirección debería marcarme que el campo no puede quedar nulo porque así lo declare en la BD pero no me aparece la excepción es decir lo manda vacío.
Aca una imagen Donde los campos como direccion telefono ... deberia de capturarme una excepcion por que los declare como not null pero no se que pasa. Como pueden ver en el registro 1 y 2
De esta forma mando los datos a la BD
Dim con = New SqlConnection(conexion)
Try
con.Open()
Dim comando1 As New SqlCommand("Insert into Pedido(codigoDelPedido, codigoProveedor, direccionDeEntrega," & _
"telefono, tipoDePedido, prioridad, formaDePago, fechaDelPedido, horaDelPediddo," & _
"fechaDeEntrega, horaDeEntrega, total, observaciones)" & _
"values (@codigoDelPedido, @codigoProveedor, @direccionDeEntrega," & _
"@telefono, @tipoDePedido, @prioridad, @formaDePago, @fechaDelPedido, @horaDelPediddo," & _
"@fechaDeEntrega, @horaDeEntrega, @total, @observaciones)", con)
'Datos de la tabla proveedores
comando1.Parameters.Add("@codigoDelPedido", SqlDbType.Int).Value = txtCodPedido.Text
comando1.Parameters.Add("@codigoProveedor", SqlDbType.Int).Value = txtCodProv.Text
comando1.Parameters.Add("@direccionDeEntrega", SqlDbType.VarChar, 100).Value = txtDircPed.Text
comando1.Parameters.Add("@telefono", SqlDbType.VarChar, 11).Value = mskTelPed.Text
comando1.Parameters.Add("@tipoDePedido", SqlDbType.VarChar, 15).Value = cmbTipoPedi.Text
comando1.Parameters.Add("@prioridad", SqlDbType.VarChar, 15).Value = cmbPrioriPedi.Text
comando1.Parameters.Add("@formaDePago", SqlDbType.VarChar, 20).Value = cmbFormPagoPedi.Text
comando1.Parameters.Add("@fechaDelPedido", SqlDbType.Date).Value = dtpFechaPedido.Value
comando1.Parameters.Add("@horaDelPediddo", SqlDbType.DateTime).Value = tpHoraPedido.Value
comando1.Parameters.Add("@fechaDeEntrega", SqlDbType.Date).Value = dtpFechaEntregaPedido.Value
comando1.Parameters.Add("@horaDeEntrega", SqlDbType.DateTime).Value = tpHoraPedido.Value
comando1.Parameters.Add("@total", SqlDbType.Decimal).Value = txtTotalPedido.Text
comando1.Parameters.Add("@observaciones", SqlDbType.VarChar, 100).Value = txtObservacionesPedidos.Text
'Ejecuta la instruccion comando1
comando1.ExecuteNonQuery()
'Cierra la conexion
con.Close()
'Mensaje datos guardados con exito
RadMessageBox.Show(Me, "Los datos se registraron correctamente", "Mensaje",
MessageBoxButtons.OK, RadMessageIcon.Info)
Catch ex As Exception : RadMessageBox.Show(ex.Message) 'captura el error original del sistema
'RadMessageBox.Show("Verifique sus datos o que el codigo no exista")
End Try
Esta es mi tabla en la BD
CREATE TABLE Pedido
(
codigoDelPedido INT PRIMARY KEY,
codigoProveedor INT NOT NULL,
direccionDeEntrega VARCHAR (100) NOT NULL,
telefono VARCHAR (11) NOT NULL,
tipoDePedido VARCHAR (15) NOT NULL,
prioridad VARCHAR(15) NOT NULL,
formaDePago VARCHAR(20) NOT NULL,
fechaDelPedido DATE NOT NULL,
horaDelPediddo TIME NOT NULL,
fechaDeEntrega DATE NOT NULL,
horaDeEntrega TIME,
total DECIMAL (7,2) NOT NULL,
observaciones VARCHAR(100)
)
Espero puedan ayudarme saludos.