Does CUBRID UPDATE the record if the new value is same as the old one?
As stated in mysql_affected_rows() PHP API manual:
When using UPDATE, MySQL will not update columns where the new value is the same as the old value. This creates the possibility that mysql_affected_rows() may not actually equal the number of rows matched, only the number of rows that were literally affected by the query.
Based on this, how does CUBRID behave when the new value is the same as the old value?
If you execute an UPDATE query in CUBRID where the new value is the same as the old value, CUBRID Server does not ignore but actually updates the record. Thus, cubrid_affected_rows() function will return 1 instead of 0. See the manual for more information.