问:致命错误:未捕获的异常 'PDOException' 带有消息 'SQLSTATE[HY000]:一般错误:1 没有这样的表:/home/treehouse/workspace/index.php:8 堆栈跟踪:#0 /home/treehouse/workspace /index.php(8): PDO->query('select * from f...') #1 {main} 在第 8 行的 /home/treehouse/workspace/index.php 中抛出
有什么想法吗?)
我的 index.php 文件:
索引.php
<?php
require_once ( 'database.php' ); // 飞行前删除ini_set ( 'display_errors' , 'On' ); $results = $db -> query ( 'select * from film' ); var_dump ( $results ); ?>
<!DOCTYPE html>
<html lang="en"> <head> <meta charset="UTF-8"> <title>PHP 数据对象</title> <link rel="stylesheet" href="style.css" > </head> <body id="home"> <h1>Sakila 示例数据库</h1> <h2>电影名称</h2> <ol> <li><i class="lens"></i >电影一</li> <li><i class="lens"></i>电影二</li> <li><i class="lens"></i>电影三</li> < li><i class="lens"></i>电影四</li> </ol></正文> </html>
我的 database.php 文件:
数据库.php
<?php
try { $db = new PDO ( 'sqlite:./database.db' ); $db -> setAttribute ( PDO :: ATTR_ERRMODE , PDO :: ERRMODE_EXCEPTION ); } catch ( Exception $e ) { echo $e -> getMessage ();
答:你创建了表吗?您应该能够使用以下命令查看所有创建的表。把它放在脚本的顶部,看看你得到了什么:
<?php
$results = $db -> query ( "SELECT name FROM sqlite_master WHERE type = 'table'" ); var_dump ( $results ); 退出;