PHP PDO MYSQL/MARIADB 如何查询视图? (查看未发现错误)

PHP PDO MYSQL/MARIADB How to query a view? (view not found error)

我在 MariaDB 中有一个视图和一个对 select 所有数据的简单 PDO 查询。

使用常规 tables,完全没有问题。我遇到的唯一问题是,一旦我使用 VIEW,就会收到该视图不存在的错误。

[826]::sqlstate[42s02]: 基础 table 或未找到视图:1146 table 'kafexxxx_diner.reservationsxmonth' 不存在

::select reservationsxmonth.property,reservationsxmonth.period,reservationsxmonth.total from reservationsxmonth limit 0, 10000

它看起来不像是供股,因为该语句在 phpMyAdmin 中执行良好。

问题是,我可以使用 PDO 访问视图吗?如何操作? PDO 连接是否需要某些选项?

     $pdo='mysql:host=127.0.0.1;dbname=kafexxxx_diner;port=3306;charset=utf8';
     $this->connection = new PDO($pdo, $this->userid, $this->password, $options);
     $this->connection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

     

这没有问题,所以如果创建了视图,您应该检查拼写错误或检查数据库

<?php
$stmt = $pdo->query("SELECT * FROM view_name");
while ($row = $stmt->fetch()) {
    echo $row['name']."<br />\n";
}

example