Vamos a ver desde el principio, de nuevo...
Esta sintaxis:
te servirá si y sólo si e archivo de datos contiene algo como:
Cita: 2015-01-03;mensaje1
2015-01-03;mensaje2
2015-01-03;mensaje3
donde mensaje1, mensaje2 y mensaje3 representan textos de mensajes
que no contienen ";".
Si el archivo de terxto contiene además una columna numerica de ID inicial, entonces esa sintaxis
ya no serviría,
Cita: 1;2015-01-03;mensaje1
2;2015-01-03;mensaje2
3;2015-01-03;mensaje3
y sólo podrías usar la clasica:
¿Eso queda claro?
Ahora bien, de acuerdo a las pruebas que realzaste, se dispara un error de clave duplicada, para lo cual hay que verificar si en realidad eso sucede y en qué momento. Para ello lo mejor es cargar los datos en una tabla transaccional antes de ponerlos en la final:
No le pongo PK para evitar que la restricción se dispare.
Luego:
Y finalmente comprobamos si alguno de los campos ID está duplicado:
o bien solamente:
Si estas dos consultas no devuelven nada, entonces toma la tabla termporal creada y haz esto:
y luego
Una
nota final:
Es importante verificar dos cuatro cosas sobre el archivo:
1) Si estás usando Linux o Windows, el comportamiento de los saltos de línea cambia. En un caso se usa un salto de linea ("\n"), y en el segundio retorno de carro (CR) más un salto de línea ("\r\n").
2) Se debe verificar si hay caracteres escapados en los mensajes, porque en ese caso se deberá indicar el ESCAPED BY para que lo tome correctamente.
3) Muy importante: El charset del archivo
debe ser UTF-8. Supongo que el que tienes debe serlo, porque de lo contrario ya se te habrías presentado problemas.
4) Finalmente: Los campos de fecha debe n ser almacenados en DATE, DATETIME o TIMESTAMP, y NUNCA en VARCHAR. Para que se cumpla el formato, el archivo debe tener las fechas en el formato estandar AAAA-MM-DD.