> Under OO 'serial' columns don't work, because OO doesn't see > 'serial' as auto-increment type. I know it's pseuso-type, but > we can detect it. What do you think, about add this feature > to driver? >
The basic idea looks good to me, but you've made a mistake in the isAutoIncrement() method. You are using the column number from the ResultSet to look up the default when you need to actually use that column's position in the table. In fact it looks like the whole method body should be moved into the Field class much like the isNullable method does. This also avoid the contrived hash key value.
Finally we prefer patches in context diff format (diff -c).