我正在使用PHP脚本同步两个PostgreSQL数据库。我无法查询整个表,因此必须使用id列来批量获取记录。
id列是字符串列,而不是数字列。但是,该列中有数字ID。这是我遇到的问题。
当我在PHP中准备SQL语句时,当我碰巧得到一个数字ID时,当我将其绑定到该语句时,它不会在值周围加上引号,因为它认为它是一个int而不是字符串
如何强制将其设为字符串,并始终在ID周围加上单引号?
如果我将引号引起来?在查询中将其视为文本,并且该参数未绑定到该语句。
您可以在代码中看到,我还尝试将$ start变量转换为字符串。 $ start包含起始ID。
代码如下:
$sql = "select id from properties where id > ? order by id limit ?";
$params = [(string) $start, 50000];
$rows = $this->wolfnet->select($sql, $params);