En mi programa estoy haciendo una validación que no permita ingresar un DNI ya registrado en mi base de datos.
Procedimiento almacenado SQL es el siguiente
Código PHP:
create procedure InsertarPersona
@Nombres varchar(50),
@Apellidos varchar(50),
@Dni int,
@Direccion varchar(100),
@Telefono int,
@Email varchar(100),
@Estado varchar(30)
as
begin
if (select Count(*) from tztPersona where Dni = @Dni) = 0
insert into tztPersona values (@Nombres, @Apellidos, @Dni, @Direccion, @Telefono, @Email, @Estado)
else
select 'Error, DNI Repetido..'
end
go
Código PHP:
Public Function InsertarPersona(ByVal a As nPersona) As Boolean
Try
Conectado()
cmd = New SqlCommand("InsertarPersona")
cmd.CommandType = CommandType.StoredProcedure
cmd.Connection = cnn
cmd.Parameters.AddWithValue("@Nombres", a.getNombres)
cmd.Parameters.AddWithValue("@Apellidos", a.getApellidos)
cmd.Parameters.AddWithValue("@Dni", a.getDni)
cmd.Parameters.AddWithValue("@Direccion", a.getDireccion)
cmd.Parameters.AddWithValue("@Telefono", a.getTelefono)
cmd.Parameters.AddWithValue("@Email", a.getEmail)
cmd.Parameters.AddWithValue("@Estado", a.getEstado)
If cmd.ExecuteNonQuery Then
Return True
Else
Return False
End If
Catch ex As Exception
MsgBox(ex.Message)
Return False
Finally
Desconectado()
End Try
End Function
Código PHP:
If Me.ValidateChildren = True And txtNombres.Text <> "" And txtApellidos.Text <> "" And txtCi.Text <> "" And txtDireccion.Text <> "" And txtTelefono.Text <> "" And txtEmail.Text <> "" Then
Try
Dim na As New nPersona
Dim da As New dPersona
na.getNombres = txtNombres.Text
na.getApellidos = txtApellidos.Text
na.getDni = txtDni.Text
na.getDireccion = txtDireccion.Text
na.getTelefono = txtTelefono.Text
na.getEmail = txtEmail.Text
na.getEstado = cmbEstado.SelectedItem
If da.InsertarPersona(na) Then
MessageBox.Show("Persona Registrada Correctamente", "Guardando Datos..", MessageBoxButtons.OK, MessageBoxIcon.Information)
Else
MessageBox.Show("Ya Existe Una Persona Con el Mismo DNI.", "Guardando Datos..", MessageBoxButtons.OK, MessageBoxIcon.Error)
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
Else
MessageBox.Show("Faltan Datos Para Ingresar", "Guardando Datos..", MessageBoxButtons.OK, MessageBoxIcon.Error)
End If