php - PHP PDO 变量插入与 SQLite 不兼容
问题描述
当我运行以下命令时:
$pdo = new PDO('sqlite:/path/to/database.db');
$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $pdo->prepare('CREATE TABLE IF NOT EXISTS :user (id INTEGER PRIMARY KEY AUTOINCREMENT, time INTEGER NOT NULL, ping TEXT NOT NULL);');
$user = "me";
$stmt->execute(array('user' => $user));
我收到以下错误,引用:user
SQL 的一部分:
PHP致命错误:未捕获的PDOException:SQLSTATE [HY000]:一般错误:“:用户”附近的1:/datasql.php中的语法错误:21\n堆栈跟踪:\n#0 /datasql.php(21):PDO-> prepare('CREATE TABLE IF...')\n#1 {main}\n 在第 21 行的 /datasql.php 中抛出
我找不到 SQL 有什么问题,如果我在没有变量插入的情况下运行命令,它运行良好。
是什么导致了这个错误?提前谢谢!
解决方案
推荐阅读
- javascript - 我似乎无法在 javascript/typescript 的数组中更新对象字段的值?
- java - Eclipse Gradle 项目:JAXB 不会从嵌套的 WSDL 文件创建 java 类
- python - Python - 排序列表
- c++ - 如何在 C++ 中分配 const 成员变量之前验证它的初始化
- curl - 'curl localhost:3000/block/1' 出现错误'curl: (56) Recv failure: Connection reset by peer'
- javascript - 如何在从数组扩展的类上制作工作过滤器功能
- javascript - 如何在单击图例时突出显示 chart.js 堆积条形图中的条形
- hardware - 2018 年的 Web 开发需要多少 RAM?
- android - 如何在 android 中通过改造接收来自 laravel 的字符串响应?
- c++ - Arduino C++中的字典类数据结构