1

我正在尝试更新 PDO 中的多行。我的表格脚本包含列id、stylelink,如下所示:

id  style       link

1   Normalize   http://cdnjs.cloudflare.com/ajax/libs/normalize/2.1.0/normalize.css
2   Bootstap    http://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/2.3.2/css/bootstrap.css

我需要为 Normalize 和 Bootstrap 保存两个不同的链接,但是当我使用这种结构时,解释器返回错误。我怎样才能做到这一点?我想更改第一个链接,或第二个或两者一起或单独更改。

我的 sql:

$connect = new Database();
$connect->query("UPDATE scripts SET link :normalize WHERE style = 'Normalize' AND  SET link :bootstrap WHERE style = 'Bootstrap'");
$connect->bind(':normalize', $_POST['normalize']);
$connect->bind(':bootstrap', $_POST['bootstrap']);
$connect->execute();
4

2 回答 2

1

尝试这个:

UPDATE scripts SET link = CASE
WHEN style= 'Normalize' THEN :normalize
WHEN style= 'Bootstrap' THEN :bootstrap
ELSE link
END;
于 2013-09-22T17:53:23.947 回答
0

我认为您尝试做的事情是不可能的。如果要使用多个条件更新行,则需要多个查询。

于 2013-09-22T17:46:43.950 回答