BD SQL. Problemas

22/10/2004 - 17:25 por Jaime | Informe spam
Tengo 3 tablas y en una de ellas hay una clave secundaria de una tabla A y
una clave secundaria de una tabla B.
Estan hechas en acces. Y tienen relaciones que a se actualicen en cascada.

El problema ahora es:
Cuando meto un dato nuevo cuando lo hago por "Insert Into" me dice ke las
claves no pueden tener valor nulo.
Pues le meto el valor, el mismo que le estoy metiendo por otra tabla,
supuestamente no deberia tener ke hacerlo ya que se actualizan en
cascada...Pues bien me dice que no pueden repetirse las claves.
Ala qué hago?

os pongo aqui las 3 sentencias...

sql1= "insert into
cliente(dni,pass,nombre,apellidos,entidad,telefono,email,calle,tipovia,escalera,numero,piso,cp,localidad,provincia,pais,comentarios)
values('" & strID & strIDL & "','" & strPass & "','" & strNombre & "','" &
strApellidos & "','" & strEntidad & "','" & strTelefono & "','" & email &
"','" & strNombreV & "','" & T_via & "','" & strescalera & "'," & Intnum &
",'" & strpiyl & "','" & strcp & "','" & strlocalidad & "','" &
strprovincia& "','" & strpais & "','No comentarios')"
sql3= "insert into asociacion(dni,codigo_proyecto,estado) values ('" & strID
& strIDL & "','" & codigoproyecto & "',0)"
sql2= "insert into
proyecto(codigo_proyecto,proyecto,fecha_inicio,tipo_proyecto) values ('"&
codigoproyecto & "','" & strTexto & "','" & date_hoy & "','" & strServicio &
"')"


Gracias.
 

Leer las respuestas

#1 Sashka
22/10/2004 - 18:02 | Informe spam
¡Importante!: Colabora con el grupo. Contesta a este mensaje y dinos si te
sirvió o no la respuesta dada. Muchas gracias
Por lo que veo en tus sql no encuentro cual es la tabla que tiene ambas
claves secundarias
En todo caso te respondo sólo para aclararte este punto...

"supuestamente no deberia tener ke hacerlo ya que se actualizan en
cascada..."

Las actualizaciones en cascada son para los updates... no para los insert...
es decir una tabla secundaria no necesariamente debe tener registros
para cada registro de la tabla principal pero si los tiene y cambias el
dato "clave principal" se actualizarán en cascada todos los registros de la
tabla secundaria que tienen esa clave.

Sashka
MS MVP Access
MCP ASP.Net

"Jaime" escribió en el mensaje
news:%
Tengo 3 tablas y en una de ellas hay una clave secundaria de una tabla A y
una clave secundaria de una tabla B.
Estan hechas en acces. Y tienen relaciones que a se actualicen en cascada.

El problema ahora es:
Cuando meto un dato nuevo cuando lo hago por "Insert Into" me dice ke las
claves no pueden tener valor nulo.
Pues le meto el valor, el mismo que le estoy metiendo por otra tabla,
supuestamente no deberia tener ke hacerlo ya que se actualizan en
cascada...Pues bien me dice que no pueden repetirse las claves.
Ala qué hago?

os pongo aqui las 3 sentencias...

sql1= "insert into
cliente(dni,pass,nombre,apellidos,entidad,telefono,email,calle,tipovia,escalera,numero,piso,cp,localidad,provincia,pais,comentarios)
values('" & strID & strIDL & "','" & strPass & "','" & strNombre & "','" &
strApellidos & "','" & strEntidad & "','" & strTelefono & "','" & email &
"','" & strNombreV & "','" & T_via & "','" & strescalera & "'," & Intnum &
",'" & strpiyl & "','" & strcp & "','" & strlocalidad & "','" &
strprovincia& "','" & strpais & "','No comentarios')"
sql3= "insert into asociacion(dni,codigo_proyecto,estado) values ('" &
strID & strIDL & "','" & codigoproyecto & "',0)"
sql2= "insert into
proyecto(codigo_proyecto,proyecto,fecha_inicio,tipo_proyecto) values ('"&
codigoproyecto & "','" & strTexto & "','" & date_hoy & "','" & strServicio
& "')"


Gracias.



Preguntas similares