diff --git a/ecrire/base/db_mysql.php b/ecrire/base/db_mysql.php
index 17f60b07118c2f732eae5cde2cb2b861059597f3..092db9e5bc22bd654aa2c5ad3b239183b5dca3ef 100644
--- a/ecrire/base/db_mysql.php
+++ b/ecrire/base/db_mysql.php
@@ -309,9 +309,12 @@ function spip_mysql_create($nom, $champs, $cles, $autoinc=false, $temporary=fals
 				$v = $defs[1] . $character_set . ' ' . substr($v,strlen($defs[1]));
 			}
 		}
-		
-		$query .= "$s\n\t\t$k $v" .
-		(($autoinc && ($p == $k)) ? " auto_increment" : '');
+
+		$query .= "$s\n\t\t$k $v"
+			. (($autoinc && ($p == $k) && preg_match(',\b(big)?int\b,i', $v))
+				? " auto_increment"
+				: ''
+			);
 		$s = ",";
 	}
 	$temporary = $temporary ? 'TEMPORARY':'';