Visual Basic.NET - NO REPETIR DATOS EN SQL Y VISUAL

 
Vista:
sin imagen de perfil
Val: 10
Ha aumentado su posición en 17 puestos en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

NO REPETIR DATOS EN SQL Y VISUAL

Publicado por victor raul (3 intervenciones) el 31/01/2017 20:32:25
HOLA NECESITO DE SU AYUDA TENGO UNA BASE DE DATOS Y OCUPO QUE EN UN CAMPO LLAMADO NUMERO DE PARTE NO SE REPITA LOS DATOS LOS DATOS SON AGREGADOS POR MEDIO DE UN TEXTBOXT EN VISUAL .NET

:(
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
Imágen de perfil de Edward
Val: 392
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

NO REPETIR DATOS EN SQL Y VISUAL

Publicado por Edward (146 intervenciones) el 31/01/2017 20:40:04
Buen día para todos,

Victor, Para lo que necesitas primero debes hacer una consulta a tu base de datos para verificar si existe ese registro y si no existe ahí si realizas la inserción en la base, también puedes implementar que a medida que se vaya escribiendo el NUMERO DE PARTE este vaya verificando si en la base de datos ya se encuentra ingresado un registro con este número.


Espero haber sido de ayuda.

Que tengan buen día,

El conocimiento siempre debe ser compartido, para que entre todos aprendamos un poco mas...

Mas ejemplos acá...

https://aprendamosdeprogramacion.wordpress.com/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 10
Ha aumentado su posición en 17 puestos en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

NO REPETIR DATOS EN SQL Y VISUAL

Publicado por victor raul (3 intervenciones) el 31/01/2017 23:16:41
en el texbox esta asi

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Private Sub TextBox2_Validating(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles TextBox2.Validating
    'Me.GruposTableAdapter.Fill(Me.BaseDatosDataSet.Grupos)
 
    Dim consultaSQL As String = "SELECT COUNT(NumeroDeParte) FROM Stencilproto WHERE NumeroDeParte ='" & TextBox2.Text & "' ''"
 
    If consultaSQL <> TextBox2.Text Then
 
        MsgBox("duplicado", , "ERROR")
 
 
    ElseIf consultaSQL = TextBox2.Text Then
 
        MsgBox("no es duplicado", , "aceptado")
 
    End If
 
End Sub



en sql esta asi

1
2
3
--validar datos
 
select count(*) from Stencilproto where NumeroDeParte = NumeroDeParte

y nada

:(
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
Imágen de perfil de Diego
Val: 605
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

NO REPETIR DATOS EN SQL Y VISUAL

Publicado por Diego (190 intervenciones) el 01/02/2017 02:00:11
Hola Victor, pero ahi, en ningun momento ejecutas la consulta almacenada en consultaSQL.

Te recomiendo utilizar la validacion en el evento _keypress de textbox1 al momento de presionar INTRO.

Saludos y +bytes.
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
Imágen de perfil de Edward
Val: 392
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

NO REPETIR DATOS EN SQL Y VISUAL

Publicado por Edward (146 intervenciones) el 01/02/2017 14:29:53
Buen día para todos,

Victor, Debes tener presente que la consulta por si sola no hace nada, debes ejecutarla para que te arroje un resultado, ademas de ver que tienes mal planteada la validación debido a que estas preguntando si la consulta es diferente del TextBox

1
If consultaSQL <> TextBox2.Text Then

Ten presente que la respuesta que te retorna la consulta son filas afectadas es decir, si encuentra un registro que cumpla la condición regresa una fila con ese registro si no cumple la condición no regresa ninguna fila, por esta razón esa validación nunca sera verdadera.

En tu caso quedaría de la siguiente forma:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Dim consultaSQL As String = "SELECT COUNT(NumeroDeParte) FROM Stencilproto WHERE NumeroDeParte ='" & TextBox2.Text & "' ''"
 
':::Creamos nuestro objeto OleDbDataAdapter para ejecutar la consulta - este objeto depende de la base de datos que uses
':::El Con corresponde a la cadena de conexión
Dim Da As New OleDbDataAdapter(consultaSQL, Con)
':::Creamos nuestro DataTable para almacenar el resultado
Dim Dt As New DataTable
':::Llenamos nuestro DataTable con el resultado de la consulta
Da.Fill(Dt)
 
If  Dt.Rows.Count > 0 Then
 
    MsgBox("duplicado", , "ERROR")
 
Else
 
   MsgBox("no es duplicado", , "aceptado")
 
End If



Espero haber sido de ayuda.

Que tengan buen día,

El conocimiento siempre debe ser compartido, para que entre todos aprendamos un poco mas...

Mas ejemplos acá...

https://aprendamosdeprogramacion.wordpress.com/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar