Дмитрий, в целом да, но мне кажется что этот вариант гибче, проще выглядит и открыт к расширению (забирать валюту, наименование и т.д.), а усложнять в одном preg_match то еще удовольствие, как и разбирать что оно делает через время.
Максим, одно другому не мешает, я ведь не говорю убирать валидатор unique или другие валидаторы, только вот все эти валидаторы лишь страхуют, что БД будет хранить и как только ей решать. Например, валидатор говорит что это целое число, а в БД поле строка, то приложение назад получит целое число или число в виде строки? также bool и т.д.
lolka02, если немного забыть про Yii и идет массовая вставка, то еще есть INSERT VALUES($arrayValues) - одним запросом несколько записей, и "insert on duplicate key update", последнее вроде тоже поддерживается Yii. Есть есть "INSERT IGNORE" - не будет кидать ошибку, а просто будет считать что все хорошо, но ничего не запишет в БД