UPDATE en SQL... error!

28/10/2004 - 21:54 por Jaime | Informe spam
Hola buenas, me estais ayudando mucho y os doy las gracias por ello. Lo que
pasa es que cuando uno se inicia en esto... empieza a ver que surgen errores
y errores... Bueno , al lio!

No puedo hacer un update, porque me dice ke me dice:

The changes you requested to the table were not successful because they
would create duplicate values in the index, primary key, or relationship.
Change the data in the field or fields that contain duplicate data, remove
the index, or redefine the index to permit duplicate entries and try again.

Observen el codigo...

sql0= "select dni from cliente where dni = '" & strID_OLD & "'"
set conConexion=server.CreateObject("adodb.connection")
set rs=server.CreateObject("adodb.recordset")
sConnString="PROVIDER=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" &
Server.MapPath("../../db/clientes.mdb")
conConexion.Open(sConnString)
Rs.Open SQL0,conConexion,3,3

sql3= "update asociacion set dni='" & strID & "'"
sql1= "update cliente set dni='" & strID & "',nombre='" & strNombre &
"',apellidos='" & strApellidos & "',entidad='" & strEntidad & "',telefono='"
& strTelefono & "',email='" & stremail & "',calle='" & strNombreV &
"',tipovia='" & T_via & "',escalera='" & strescalera & "',numero='" & Intnum
& "',piso='" & strpyl & "',cp='" & strcp & "',localidad='" & strlocalidad &
"',provincia='" & strprovincia& "',pais='" & strpais & "',comentarios='"
&comentarios & "'"

conConexion.Execute(sql3)
conConexion.Execute(sql1)

Las tablas estan tienen como key...
Tabla Asociacion...Sin Key
Tabla Cliente; Key= "dni"
Tabla Proyecto; KEY="codigo_proyecto" pero no interviene aqui.

Y luego las keys estan unidas pero sin restricciones ni nada.
Uniones:

Cliente.dni -- Asociacion.dni
Proyecto.codigo_proyecto -- asociacion.codigo_proyecto

No puedo suminstrar mas datos relevantes creo.

Saludos y a ver si sabeis porke .. seguro que es una bobada enorme pero
nunca se sabe...


GRACIAS POR ADELANTADO
 

Leer las respuestas

#1 Sashka
28/10/2004 - 22:20 | Informe spam
¡Importante!: Colabora con el grupo. Contesta a este mensaje y dinos si te
sirvió o no la respuesta dada. Muchas gracias
Tu sql3 está modificando TODOS los registros de la tabla cliente con los
datos que le pasas... entre ellos el campo dni (key) todos con el mismo
dato
Me imagino que más loq ue quieres hacer el modificar el registro que
coincida con ese dni...

sql1= "update cliente set nombre='" & strNombre &
"',apellidos='" & strApellidos & "',entidad='" & strEntidad & "',telefono='"
& strTelefono & "',email='" & stremail & "',calle='" & strNombreV &
"',tipovia='" & T_via & "',escalera='" & strescalera & "',numero='" & Intnum
& "',piso='" & strpyl & "',cp='" & strcp & "',localidad='" & strlocalidad &
"',provincia='" & strprovincia& "',pais='" & strpais & "',comentarios='"
&comentarios & "' where dni='" & strID & "'"


Sashka
MS MVP Access
MCP ASP.Net

"Jaime" <jaimedominguez[arroba]zeratools[punto]com> escribió en el mensaje
news:elyD%
Hola buenas, me estais ayudando mucho y os doy las gracias por ello. Lo
que pasa es que cuando uno se inicia en esto... empieza a ver que surgen
errores y errores... Bueno , al lio!

No puedo hacer un update, porque me dice ke me dice:

The changes you requested to the table were not successful because they
would create duplicate values in the index, primary key, or relationship.
Change the data in the field or fields that contain duplicate data, remove
the index, or redefine the index to permit duplicate entries and try
again.

Observen el codigo...

sql0= "select dni from cliente where dni = '" & strID_OLD & "'"
set conConexion=server.CreateObject("adodb.connection")
set rs=server.CreateObject("adodb.recordset")
sConnString="PROVIDER=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" &
Server.MapPath("../../db/clientes.mdb")
conConexion.Open(sConnString)
Rs.Open SQL0,conConexion,3,3

sql3= "update asociacion set dni='" & strID & "'"
sql1= "update cliente set dni='" & strID & "',nombre='" & strNombre &
"',apellidos='" & strApellidos & "',entidad='" & strEntidad &
"',telefono='" & strTelefono & "',email='" & stremail & "',calle='" &
strNombreV & "',tipovia='" & T_via & "',escalera='" & strescalera &
"',numero='" & Intnum & "',piso='" & strpyl & "',cp='" & strcp &
"',localidad='" & strlocalidad & "',provincia='" & strprovincia&
"',pais='" & strpais & "',comentarios='" &comentarios & "'"

conConexion.Execute(sql3)
conConexion.Execute(sql1)

Las tablas estan tienen como key...
Tabla Asociacion...Sin Key
Tabla Cliente; Key= "dni"
Tabla Proyecto; KEY="codigo_proyecto" pero no interviene aqui.

Y luego las keys estan unidas pero sin restricciones ni nada.
Uniones:

Cliente.dni -- Asociacion.dni
Proyecto.codigo_proyecto -- asociacion.codigo_proyecto

No puedo suminstrar mas datos relevantes creo.

Saludos y a ver si sabeis porke .. seguro que es una bobada enorme pero
nunca se sabe...


GRACIAS POR ADELANTADO







Preguntas similares