So, when you insert to this table, are you trying to insert to the autoincrement column? suppose you have a table like:
create table a (x int autoinc, y varchar(10), z timestamp);
you should insert to it in either of these two ways:
insert into a (y,z) values ('abc','2007-03-01 12:00:00');
insert into a (x,y,z) values (DEFAULT,'abc','2007-03-01 12:00:00');
Note that older version of MySQL use NULL to insert the right value in the autoinc or default. this is a bad habit to get into because A: No other database in the universe does that, cause It's just plain wrong by the SQL standard and B: Later versions of MySQL will start breaking on such things and you'll have to change your code.
Note that if you have to use an earlier version of MySQL that doesn't support the DEFAULT keyword, then use the insert method where you simply don't define the column in the column-list.