所以我想遍历表中的所有记录,用CURRENT_TIMESTAMP
更新时间戳列。但它在浏览器中超时。
function TEST_Module(){
$stockScaned = DB_DataObject::factory('StockScanned');
$number_of_rows = $stockScaned->find();
while ($stockScaned->fetch()) {
$sql =
<<<SQL
UPDATE "StockScanned"
SET "scanDateTime" = CURRENT_TIMESTAMP;
SQL;
$stockScaned->query($sql);
$updatedRows = $stockScaned->update();
}
}
有什么想法吗?
更新:
它不再超时,但它不会更新数据库。
我从查询末尾删除了;
。
我已经为更新创建了一个新的数据对象,并且还按ID查询,但是唉....
function TEST_Module(){
$stockScaned = DB_DataObject::factory('StockScanned');
$number_of_rows = $stockScaned->find();
while ($stockScaned->fetch()) {
$id = $stockScaned->id;
$sql =
<<<SQL
UPDATE "StockScanned"
SET "scanDateTime" = CURRENT_TIMESTAMP
WHERE id = $id
SQL;
$stockScanedNEW = DB_DataObject::factory('StockScanned');
$stockScanedNEW->query($sql);
$updatedRows = $stockScanedNEW->update();
}
}
好的。
$dumbUserError = new FacePalm()
我没有把 where 子句id
放在引号里。