在我看来,这个cose对于标准查询是可以的,但在涉及到DESCRIBE时却没有:
$q = $dbh->prepare("DESCRIBE ?");
$q->execute(array($this->ormTable));
$table_fields = $q->fetchAll(PDO::FETCH_ASSOC);
任何人都可以确认?除手动附加表名之外是否有变通方法?
答案 0 :(得分:2)
确保ormTable不受外界影响(SQL注入等)或正确引用语法用法(不要使用PDO :: quote())
$q = $dbh->prepare("DESCRIBE ".$this->ormTable);
$q->execute();
$table_fields = $q->fetchAll(PDO::FETCH_ASSOC);
答案 1 :(得分:0)
$q = $dbh->prepare(sprintf('DESCRIBE %s', $this->ormTable));
$q->execute();
$table_fields = $q->fetchAll(PDO::FETCH_ASSOC);