I am writing this here just as a reminder.
ArcSde with Oracle (11g maybe all) has a bug where when you create a Feature layer with a small integer column and then create a view out of that table, the view will now have the column as integer.
I have not found a solution for this, except rewriting the code…
You can see it in ArcGis Server:
For SQL Server 2008 table: Type: esriFieldTypeSmallInteger
For Oracle 11g view: Type: esriFieldTypeInteger