21

我正在尝试对 postgresql 进行简单的更新查询。我真的不明白这个错误,因为没有布尔值或列类型。这是日志:

cat=> 更新类别 SET epekcategoryid='27af8b1e-c0c9-4084-8304-256b2ae0c8b2' and epekparentcategoryid='root' WHERE categoryId='281' and siteid='0' and categoryparentid='-1';
错误:布尔类型的输入语法无效:“27af8b1e-c0c9-4084-8304-256b2ae0c8b2”
第 1 行:更新类别 SET epekcategoryid='27af8b1e-c0c9-4084-830...

表配置:

cat=> \d 类别;
                表“public.categories”
        专栏 | 类型 | 修饰符
----------------------+------------+--- --------
 类别ID | 字符变化(32) |
 类别名称 | 正文 |
 网站ID | 整数 |
 类别父ID | 字符变化(32) |
 状态 | 整数 | 默认 0
 epekcategoryid | 正文 |
 epekparentcategoryid | 正文 |
 类别级别 | 字符变化(37) |
 分类路径 | 字符变化(37) |
4

1 回答 1

53

尝试:

UPDATE categories 
SET epekcategoryid='27af8b1e-c0c9-4084-8304-256b2ae0c8b2',
    epekparentcategoryid='root' 
WHERE categoryId='281' 
  and siteid='0' 
  and categoryparentid='-1';

SET您必须用 " "分隔字段,,而不是用 " AND"

于 2012-11-21T15:21:08.720 回答