Newsgrupos.com  

Retroceder   Newsgrupos.com > Forum > Newsgroup microsoft.public.es.* 2 Foro > Newsgroup microsoft.public.es.vfoxpro.formularios
Registrarse Preguntas Frecuentes Lista de Foreros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




Respuesta
 
LinkBack Herramientas Desplegado
  #1 (permalink)  
Antiguo 01-09-2006, 13:23:02
Javier
 
Mensajes: n/a
Predeterminado Problema con integridad referencial

Hola, buenos dÃ***as.

Tengo un formulario en el que se abre una tabla y de esta creo una vista con
parametros de Dbsetpro (.....) en la cual digo que solo se actualice por los
campos clave, las tablas y los campos que actualizables e indices.

El problema lo tengo cuando le digo que me cree un dato nuevo y me
introducen un dato que ya existe en el campo indice unico. Al dar la orden de
tableupdate(.t.) me da un error de integridad referencial. He probado con el
metodo valid del cuadro de texto, pero al recorrer la vista me sale en todos
el mensaje de ya existe. Como podrÃ***a comprobar antes de grabar datos si
existe el dato introducido en la tabla.
Responder Con Cita
Alt Today
Advertising
Google Adsense
 
This advertising will not be shown
in this way to registered members.
Register your free account today
and become a member on
Newsgrupos.com
Standard Sponsored Links

  #2 (permalink)  
Antiguo 07-09-2006, 18:01:01
Sergio
 
Mensajes: n/a
Predeterminado RE: Problema con integridad referencial

Si el dato que te da duplicado es en el campo principal es porque lo estas
calculando mal.
Antes de grabar busca cual es el ultimo numero ingresado y sumale 1
select max(codigo) as codigo from tabla into cursor maximovalor
mcodigo = maximovalor.codigo+ 1
y recien ahi graba el maximo valor y no tendras la clave duplicada.

"Javier" escribió:

> Hola, buenos dÃ***as.
>
> Tengo un formulario en el que se abre una tabla y de esta creo una vista con
> parametros de Dbsetpro (.....) en la cual digo que solo se actualice por los
> campos clave, las tablas y los campos que actualizables e indices.
>
> El problema lo tengo cuando le digo que me cree un dato nuevo y me
> introducen un dato que ya existe en el campo indice unico. Al dar la orden de
> tableupdate(.t.) me da un error de integridad referencial. He probado con el
> metodo valid del cuadro de texto, pero al recorrer la vista me sale en todos
> el mensaje de ya existe. Como podrÃ***a comprobar antes de grabar datos si
> existe el dato introducido en la tabla.

Responder Con Cita
  #3 (permalink)  
Antiguo 07-09-2006, 18:01:01
Sergio
 
Mensajes: n/a
Predeterminado RE: Problema con integridad referencial

Si el dato que te da duplicado es en el campo principal es porque lo estas
calculando mal.
Antes de grabar busca cual es el ultimo numero ingresado y sumale 1
select max(codigo) as codigo from tabla into cursor maximovalor
mcodigo = maximovalor.codigo+ 1
y recien ahi graba el maximo valor y no tendras la clave duplicada.

"Javier" escribió:

> Hola, buenos dÃ***as.
>
> Tengo un formulario en el que se abre una tabla y de esta creo una vista con
> parametros de Dbsetpro (.....) en la cual digo que solo se actualice por los
> campos clave, las tablas y los campos que actualizables e indices.
>
> El problema lo tengo cuando le digo que me cree un dato nuevo y me
> introducen un dato que ya existe en el campo indice unico. Al dar la orden de
> tableupdate(.t.) me da un error de integridad referencial. He probado con el
> metodo valid del cuadro de texto, pero al recorrer la vista me sale en todos
> el mensaje de ya existe. Como podrÃ***a comprobar antes de grabar datos si
> existe el dato introducido en la tabla.

Responder Con Cita
  #4 (permalink)  
Antiguo 07-09-2006, 18:01:01
Sergio
 
Mensajes: n/a
Predeterminado RE: Problema con integridad referencial

Si el dato que te da duplicado es en el campo principal es porque lo estas
calculando mal.
Antes de grabar busca cual es el ultimo numero ingresado y sumale 1
select max(codigo) as codigo from tabla into cursor maximovalor
mcodigo = maximovalor.codigo+ 1
y recien ahi graba el maximo valor y no tendras la clave duplicada.

"Javier" escribió:

> Hola, buenos dÃ***as.
>
> Tengo un formulario en el que se abre una tabla y de esta creo una vista con
> parametros de Dbsetpro (.....) en la cual digo que solo se actualice por los
> campos clave, las tablas y los campos que actualizables e indices.
>
> El problema lo tengo cuando le digo que me cree un dato nuevo y me
> introducen un dato que ya existe en el campo indice unico. Al dar la orden de
> tableupdate(.t.) me da un error de integridad referencial. He probado con el
> metodo valid del cuadro de texto, pero al recorrer la vista me sale en todos
> el mensaje de ya existe. Como podrÃ***a comprobar antes de grabar datos si
> existe el dato introducido en la tabla.

Responder Con Cita
  #5 (permalink)  
Antiguo 07-09-2006, 18:01:01
Sergio
 
Mensajes: n/a
Predeterminado RE: Problema con integridad referencial

Si el dato que te da duplicado es en el campo principal es porque lo estas
calculando mal.
Antes de grabar busca cual es el ultimo numero ingresado y sumale 1
select max(codigo) as codigo from tabla into cursor maximovalor
mcodigo = maximovalor.codigo+ 1
y recien ahi graba el maximo valor y no tendras la clave duplicada.

"Javier" escribió:

> Hola, buenos dÃ***as.
>
> Tengo un formulario en el que se abre una tabla y de esta creo una vista con
> parametros de Dbsetpro (.....) en la cual digo que solo se actualice por los
> campos clave, las tablas y los campos que actualizables e indices.
>
> El problema lo tengo cuando le digo que me cree un dato nuevo y me
> introducen un dato que ya existe en el campo indice unico. Al dar la orden de
> tableupdate(.t.) me da un error de integridad referencial. He probado con el
> metodo valid del cuadro de texto, pero al recorrer la vista me sale en todos
> el mensaje de ya existe. Como podrÃ***a comprobar antes de grabar datos si
> existe el dato introducido en la tabla.

Responder Con Cita
  #6 (permalink)  
Antiguo 07-09-2006, 18:01:01
Sergio
 
Mensajes: n/a
Predeterminado RE: Problema con integridad referencial

Si el dato que te da duplicado es en el campo principal es porque lo estas
calculando mal.
Antes de grabar busca cual es el ultimo numero ingresado y sumale 1
select max(codigo) as codigo from tabla into cursor maximovalor
mcodigo = maximovalor.codigo+ 1
y recien ahi graba el maximo valor y no tendras la clave duplicada.

"Javier" escribió:

> Hola, buenos dÃ***as.
>
> Tengo un formulario en el que se abre una tabla y de esta creo una vista con
> parametros de Dbsetpro (.....) en la cual digo que solo se actualice por los
> campos clave, las tablas y los campos que actualizables e indices.
>
> El problema lo tengo cuando le digo que me cree un dato nuevo y me
> introducen un dato que ya existe en el campo indice unico. Al dar la orden de
> tableupdate(.t.) me da un error de integridad referencial. He probado con el
> metodo valid del cuadro de texto, pero al recorrer la vista me sale en todos
> el mensaje de ya existe. Como podrÃ***a comprobar antes de grabar datos si
> existe el dato introducido en la tabla.

Responder Con Cita
 
Respuesta


Herramientas
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Trackbacks are habilitado
Pingbacks are habilitado
Refbacks are habilitado


Temas Similares
Tema Autor Foro Respuestas Último mensaje
Integridad de Datos Gustavo Newsgroup microsoft.public.es.vfoxpro.datos 3 05-07-2008 15:09:20
Israel: Un modélo referencial para España. libera Newsgroup es.charla.religion 0 21-06-2008 20:02:57
Integridad referencial Gabriel Dameñov Newsgroup microsoft.public.es.vfoxpro 4 16-04-2008 11:25:32
Integridad referencial con fk ciclica Pablo Roca Newsgroup microsoft.public.es.sqlserver 20 09-12-2007 18:22:20
Sacar integridad referencial a código. José Luis Newsgroup microsoft.public.es.vfoxpro.datos 0 09-11-2006 13:01:16





Powered by: vBulletin, Versión 3.6.8
Derechos de Autor ©2000 - 2008, Jelsoft Enterprises Ltd.

LinkBacks Enabled by vBSEO 3.1.0 © 2007, Crawlability, Inc.