FoxPro/Visual FoxPro - Eliminar Registros(no me da)

 
Vista:

Eliminar Registros(no me da)

Publicado por Stok (79 intervenciones) el 08/04/2001 19:59:40
Hola, gracias a quienes me contestaron la duda con los registros se los agradesco mucho..

Aqui va el problema...
Tengo este codigo

Select codigo from repeticion group by codigo into cursor prueba
select prueba
j=reccount()
i=0
do while j<>i
select prueba
go i+1
cod=codigo
*codigo es el campo unico
*use repeticion <== 1mer. error, " No puedo abrir la tabla 2 veces "
* tabla es la tabla de donde vas a eliminar
locate for codigo=cod
if found()
reg=recno()
delete all for codigo=cod <== Aqui se detiene y dice que no puede actualizar el cursor, ¿que le cambio?
*deleteas todos los registros
go reg
recall
* recuperas solo uno de los borrados
* de esta forma solo te queda uno
endif
i=i+1
enddo

gracias

Sergio
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

RE:Eliminar Registros(no me da)

Publicado por Elmer Rodriguez (25 intervenciones) el 09/04/2001 03:51:11
Lo que tu estas haciendo es incorrecto.
Para empezar no puedes eliminar registros en un cursor, ya que este es de solo lectura.

Lo que debes hacer es crearle a la table un indice de tipo UNICO (UNIQUE), y esto no te mostrara los registros duplicados, ahora no entiendo por que haces esto si a la hora de insertar el registro puedes verificar si existe o no utilizando el SEEK.
Pero bueno, no se como lo estas haciendo y porque razon tienes esto asi, ademas si quieres eliminar totalmente los registros lo que puedes hacer es media vez hayas creado el indice UNICO, haz una copia de la table utilizando COPY TO NewTable, esto no te copiara los registros duplicados ya que el indice te los ha bloqueado.
Aunque con este indice no se te mostraran los registros aunque los tengas quintuplicados o mas; solo te muestra el primero que se ha creado.

Ok.

Suerte, y comentame como te fue.
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

RE:Eliminar Registros(no me da)

Publicado por Luis Guillermo (1 intervención) el 09/04/2001 20:25:35
La instrucción select - sql deja abierta la tabla repeticion en otra área, en vez de la instrucción USE REPETICION coloca: SELECT REPETICION.

Saludos,
Luis Guillermo
Medellín, Colombia
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