CActiveRecord更新没有主键的表的字段值时出错,报错Column name must be either a string or an array. 而同样的代码,并没有修改,只是给表设置了主键,运行正常。
修改之前的表结构:
CREATE TABLE [a] (
[str] nvarchar(50)
);
修改之后的表结构:
CREATE TABLE [a] (
[id] INTEGER NOT NULL primary key,
[str] nvarchar(50)
);
更新字段值的代码:
$A=A::model()->findByAttributes(array(‘str’=>‘b’));
$A->str=‘a test string’;
$A->save();