Vuol dire che è stato generato un codice identico a un altro già inserito in tabella. Prova a fare così:
Codice PHP:
<?php
for ($i=1;$i<=100;$i++)
{
$codice = (CreateCode(10,"1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ"));
$query = mysql_query("select id_codice from tabella where id_codice = '$codice' ") or die(mysql_error());
if (mysql_num_rows($query) == 0)
$query2 = mysql_query("insert into tabella (id_codice) values ('$codice') ") or die(mysql_error());
}
?>
Cicla per un numero limitato di volte perchè dubito riesca ad inserire in 30 secondi 25000 record, per giunta con la probabilità che debba generare più codice in caso di eguaglianza.