例えば、データベースのあるテーブルが下記の定義だとします。
id serial, name character varying(32) not null, narabi integer default 99999 not null, sakujyo_flg smallint default 0 not null, biko text, created timestamp without time zone default CURRENT_TIMESTAMP not null, modified timestamp without time zone default CURRENT_TIMESTAMP not null, ※PostgreSQLを利用しています。
そのテーブルに下記の要領で更新(UPDATE)したところ、narabi=1だったところが、99999で更新されました。
$model = 《モデルのインスタンス》; $save_data = array( 'id' => 1, 'name' => 'てすと02' ); $model->create(); $model->save( $save_data );
調べてみたところ、「$model->create()」としたとき、モデルのインスタンス変数内で、更新(UPDATE)する項目(カラム)の情報として、データベースでデフォルト設定されている項目(カラム)をセットするそうです。
なので、更新(UPDATE)のときは「$model->create()」を書かないか、「$model->save」の第3引数で更新(UPDATE)の対象となる項目(カラム)を指定するとよいようです。