Si actualizas a la versión 5 ó 5.1 de MySQL tienes que tener cuidado con los underflow en los campos integer unsigned que puedas tener, ya que en caso de realizar una operación aritmética que produzca un número negativo, no se quedará en 0 sino que hará underflow.

mysql> SELECT CAST(0 AS UNSIGNED) - 1; 
+-------------------------+
| CAST(0 AS UNSIGNED) - 1 |
+-------------------------+
| 18446744073709551615 |
+-------------------------+
 
Para solucionar esto hay que establecer el SQL_MODE a NO_UNSIGNED_SUBTRATION y asi evitar este comportamiento y dejarlo en 0 en caso de restar más de la cuenta.

mysql> SET SQL_MODE = 'NO_UNSIGNED_SUBTRACTION'; 
mysql> SELECT CAST(0 AS UNSIGNED) - 1;
+-------------------------+
| CAST(0 AS UNSIGNED) - 1 |
+-------------------------+
| -1 |
+-------------------------+