FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
#1
|
|||
|
|||
Key Violation
Hola compañeros
Hace pocos dias se me ha dañado una de las tablas de la base de datos que tenia unos indices. Segui los procedimientos acostumbrados y recomendados en el foro, se reconstruyeron los indices y se reindexo de nuevo. pero al momento de almacenar algo en esta tabla nos aparace un mensaje de error de Key violation. El proceso lo he repetido varias veces pero el problema persiste y la calidad de los datos en la tabla tambien los hemos revisado, asi como la conexión del DBE. Agradeciendo de antemano la atención prestada |
#2
|
|||
|
|||
Hola:
Es necesario que indiques con que SGDB trabajas, intuyo que es Paradox. ¿Te has asegurado de que el nuevo registro no repite la clave primaria (eso da un "key violation"). Si no es así, puede que no se haya corregido bien la tabla, en ese caso esste hilo pasará al foro de Tablas Planas, donde se tratan asuntos relacionados específicamente con dichos problemas. Saludos
__________________
Guía de Estilo |
#3
|
|||
|
|||
Efectivamente el problema estaba en la indice primario, ya que estaba usando una variable de autoincremento, lo que estaba pasando era que tenia 245 registros enumerados desde el 1..245, pero al tratar de ingresar un nuevo registro este me colocaba el 164 como el registro que continuaba. por más que he tratado de aparezca el registro 246 como un nuevo registro nno se ha podido.
Parece que la solución sera copiar la tabla en una nueva y luego renombrarla. |
#4
|
|||
|
|||
No...
No no no es esa la salucion.. weno si pero no.. je
Vete al DataBase DeskTop, edita la tabla y en lugar de + ponle I la salvas la vuelves a abrir y ahora al I lo cambias por +, te regenera todo
__________________
saludos desde Puebla Mexico.. asanxt@hotmail.com "como siempre a sus ordenes y siempre con buena cara" 'lolita me excitas, perversa piel de melocotón' |
#5
|
||||
|
||||
Cita:
1. Respalda la tabla 2. Ejecuta SetAutoInc(TableFileName, 245); donde
La tabla debe estar cerrada. Explicación: El archivo *.db guarda el último valor autoinc en el offset $49 (en Paradox). La rutina simplemente escribe el valor deseado (245 en tu caso) de manera que el siguiente valor será 246. Lo acabo de probar y funciona. // Saludos |
#6
|
||||
|
||||
Hola!!!
Roman, decime, donde encontraste ese tipo de información!!!!? De haberlo sabido meses antes, me hubiera podido dormir algunas noches más tranquilo...) Gracias!!!! nos vemos |
#7
|
||||
|
||||
Cita:
Grupos de noticias de Borland // Saludos |
|
|
|