La Web del Programador: Comunidad de Programadores
 
    Pregunta:  14798 - ARCHIVO IDX YA EXISTE - DESEA SOBREESCRIBIRLO
Autor:  JOSE ROLANDO QUINTERO PAZ
Hola
Tengo una duda; resulta que e creado varias aplicaciones dónde en un combox selecciono por ejemplo el nombre del barrio y entre otras cosas
indexando el campo nom_barrio, es decir

SELECT BARRIOS
INDEX ON NOM_BARRIO TO NOM_BARRIO, y otras sentencias mas que en este momento no recuerdo exactamente y, en todas las aplicaciones funciona perfectamente, sin embargo en una de las aplicaciones cada vez que selecciono barrio del combox me aparece un cuadro de dialogo diciendome que el archivo nom_barrio.idx ya existe y ¿desea sobreescribirlo?
Espero que alguien me explique las causas de esto. Gracias

  Respuesta:  Antonio Estrada
Siempre que indexas una tabla, se crea un fichero. Si ese fichero existe, el programa te pide confirmación.

Si la tabla ya está indexada, no es necesario crear el índice cada vez, basta con abrirlo cada vez que se abra la tabla para que esté siempre actualizado.

Si a pesar de eso quieres seguir creando el indice siempre, solo tienes que colocar la sentencia SET SAFETY OFF para que no te pregunte. (tampoco te preguntará cuando hagas un zap, o elimines un fichero, así que ten cuidado).
Para activar de nuevo la confirmación, solo tienes que poner SET SAFETY ON (fácil verdad?)

  Respuesta:  wences
Veras , creo que tienes un problema de conceptos , index on , genera un indice , es decir , vuelve a crear un indice ... si lo que quieres es ordenar por un indice en concreto debes usar set order to xxxxx (el nombre del indice) y la pregunta la hace porque tienes el safety a ON , es sdecir antes de sobreescribir pregunta siempre ...

Espero te sirva...

  Respuesta:  David Fúnez
José;

Mira, no se si se te esta escapando esto, pero la orden que estas dando depués del SELECT barrios es de que vuelva a indexar esa tabla, cosa que no es mala pues, pero si lo que no quieres es ver ese mensaje coloca SET SAFETY OFF para no ver ese mensaje de sobreescibir archivo.

Espero haberte ayudado, sino, escribeme para ver que se puede hacer.