【发布时间】:2017-07-26 16:02:05
【问题描述】:
我用以下代码创建了一些表:
$db = new PDO(SQLITE_PATH);
$statement = $db->prepare('CREATE TABLE States (name VARCHAR(25) NOT NULL PRIMARY KEY);');
$statement->execute();
$statement = $db->prepare('CREATE TABLE Events (DBID INT NOT NULL PRIMARY KEY , CalID INT, start INT, end INT, state VARCHAR(25), FOREIGN KEY(state) REFERENCES States(name));');
$statement->execute();
并在“States”表中创建了一个条目“Wochenende”。
当我想使用以下代码将条目插入“事件”表时:
$from_timestamp = strtotime(date('c'));
$to_timestamp = strtotime(date('c', time()+100000));
$query = 'INSERT INTO Events (CalID,start,end,state) VALUES (:CALID, :START, :END, :STATE);';
$statement = $db->prepare($query, array(PDO::ATTR_CURSOR => PDO::CURSOR_FWDONLY));
if (!$statement) {
print_r($db->errorInfo());
}
$statement->execute(array(':CALID' => get_highest_calid($db), ':START' => $from_timestamp, ':END' => $to_timestamp, ':STATE' => 'Wochenende'));
没有返回错误,数据库中仍然没有条目。
【问题讨论】:
-
几十年来我没有做过任何 php。你需要提交吗?
-
@BillBell 我尝试使用 sql 事务,但它也不起作用。此外,将条目放入“States”表的请求在没有事务的情况下也有效。
标签: php pdo sqlite sql-insert