Cita: Pero cuando estoy programando en PHP para insertar un registro, haciendo de cuenta que yo no estoy ni enterado que no se puede sumar el autoincrement, no me devuelve ningún error...
Estás poniendo, como dice un viejo refrán, "el caro delante del caballo". Lo que en realidad te está fallando es la lógica de diseño: Tienes que diseñar la tabla con el rango de valores adecuado. Si estás poniendo un campo numérico de menor tamaño de lo que en el uso se necesita, lo que falló fue el análisis, no la tabla. No es suficiente suponer que usarás un campo de determinado tamaño, tienes que prevenir el problema antes que se produzca: Si supones que usarás TINYINT, usas SMALLINT, si supones SMALLINT usas INT... La idea es
planear para el peor escenario posible, porque se escenario
se va a dar eventualmente, y cuando la base está en funcionamiento
un cambio de estructura es desastroso.
Cita: no me devuelve ningún error...
Como ya te lo indiqué, eso no es cierto, te devuelve un error. Puede que no lo estés controlando debidamente, pero eso lo debes resolver con PHP...
Cita: Por eso pregunto si hay alguna sentencia de MySql para saber si el registro se ingresó correctamente a la base de datos o no.
Normalmente, cuando el dato no se ingresa, el valor devuelto en la ejecución de la sentencia es cero ó -1, por lo que no debería ser necesario otra validación. Pero eso sigue siendo un problema de PHP, no de SQL.
Por otro lado, el PHP en ese caso
si te da recursos para saber que pasó. Solamente tienes que
usarlos correctamente.
Finalmente, hago hincapié en esto: Si estás teniendo problemas de rango de representación,
tu problema es de implementación de la tabla: Si estás seguro de NUNCA usar mas de 200 valores puedes usar TINYINT, pero
usar en un autoincrement un SIGNED es un desperdicio de recursos, ya que el autoincrement
NUNCA usará los valores negativos, con lo que estás desperdiciando la mitad del rango.
Usa los campos con rango que exceda siempre el máximo posible de representación a usar.