Problema con SQL Server

Publicado en 'Programación' por dsk, 30 Mar 2012.





  1. dsk

    dsk Miembro frecuente

    Registro:
    24 May 2011
    Mensajes:
    195
    Likes:
    6




    En una base de datos tengo la tabla "Cliente" con clave principal "DNI", al insertar datos con comando "INSERT INTO ..." todo esta bien pero al hacer "DELETE FROM Cliente WHERE DNI = '00123456'" o tambien "UPDATE ..." me da error "El nombre de la columna 'DNI' no es válido", ayudenme foristas.
     


  2. Leonardo

    Leonardo Miembro de bronce

    Registro:
    15 Mar 2011
    Mensajes:
    1,321
    Likes:
    195
    no sera q no puedes eliminar datos de una clave principal? :D
    cheka eso.
     
  3. D@rkWolf

    D@rkWolf Miembro maestro

    Registro:
    7 Oct 2011
    Mensajes:
    510
    Likes:
    166
    la consulta que yo te haria seria si la tabla Cliente esta enlazada a otra tabla, dado que si se intentara borrar un registro de una tabla referenciada por una FOREING KEY como tabla maestra y mas si el campo ref es clave principal, si la tabla dependiente tiene registros relacionados la sentencia DELETE fallará amigo dalo por hecho, seria bueno ver tu diagrama de clases.

    saludos:)
     
    Última edición: 30 Mar 2012
  4. rplaz

    rplaz Miembro frecuente

    Registro:
    27 Jul 2010
    Mensajes:
    213
    Likes:
    19
    Estimado,
    Por favor envía el detalle del error, como bien dicen puede que la tabla este relacionada, también puede ser error de sintaxis.
     
  5. dsk

    dsk Miembro frecuente

    Registro:
    24 May 2011
    Mensajes:
    195
    Likes:
    6
    Si esta relacionada con otra tabla "Ventas", pero hasta el momento la tabla "Cliente" es la única con datos.

    ----- mensaje añadido, 31-mar-2012 a las 10:55 -----

    No intento eliminar la celda con clave principal, busco eliminar toda la fila pero me da el error ya mencionado.

    ----- mensaje añadido, 31-mar-2012 a las 10:57 -----

    Es para una aplicación con Visual Basic 2010, pero al eliminar registros me daba error, todo estaba bien en cuanto a codigo, fui al sql para hacer ahi la consulta y me daba el mismo error al intentar eliminar: "El nombre de la columna 'DNI' no es válido"
     
  6. floresdj87

    floresdj87 Miembro frecuente

    Registro:
    16 May 2012
    Mensajes:
    104
    Likes:
    20
    has probado eliminarla con las mismas opciones de SQL a ver si te sale algo? si no se puede es porque la relación no te deja eliminarla y si se puede eliminar capaz es por el tipo de dato que declaraste o por el ID de la tabla si esta con auto-increment.
     
  7. edilaq

    edilaq Miembro maestro

    Registro:
    25 Mar 2010
    Mensajes:
    929
    Likes:
    144
    si debes eliminar, haz un select a ese registro, luego seleccionas ese registro, clic derecho y Borrar fila.

    Revisa el nombre de la columna, si es una clave principal puede tener el prefijo "ID"

    Saludos
     
  8. xalphabetax

    xalphabetax Miembro maestro

    Registro:
    30 Oct 2009
    Mensajes:
    846
    Likes:
    93
    Quizas lo que pase es que DNI sea una palabra reservada en SQL y por eso te mande como error que no existe tal columna; puedes probar a poner entre corchetes el campo [DNI], tal vez ahi si lo pueda borrar.