Schema manipulation queries generate SQL that might becomes, more or less, part of a Yii user's app. If one day a developer has to port an app from one RDBMS to another, that developer might be sad or happy depending whether Yii used a lot of server-specific SQL or used instead "*more standard SQL*".

So, if using type spec clause X versus Y makes no functional difference from our point of views (considering Yii Framework design), the choice less likely to make the future porting developer sad is the better one.

I wish I could be more precise and say something like: use standard SQL as far as possible. But that begs the question, what standard? And who cares about standards like ANSI SQL when important possible target RDBMSs reject various ANSI SQL clauses? That's why I said "more portable". I am not an SQL expert so this is the best I can manage for now.

I could put this another way and say: I have learned from being sad and I won't use an ENUM again. It's great that CUBRID added it to help with porting MySQL schemas but for new schemas or schema parts, there's no need for it. I'm not going to use CUBRID's collection types for the same reason, not because I don't like them and what they can do for my app.