0

当我在 sqlite 数据库上从 codeigniter (PHP) 运行此查询时,我得到重复的插入:

INSERT INTO `users` 
SELECT 'test@email.com' AS `email`,
'12345' AS `password`

当我从 SQLite Manager 运行它时,它只添加一个条目。但是,当我在 PHP 代码中用这个替换上面的查询时:

INSERT INTO `users`
(`email`,`password`) 
VALUES ('test@email.com', '12345') 

它只添加一次条目(其他一切都相同)。我也检查过,脚本只被调用一次。

有人知道为什么会这样吗?我知道可以通过将电子邮件字段设置为主键来修复它,然后不会插入重复项,但这不是一个选项。

4

1 回答 1

0

正确的 SQL 语法是最后一个!

为什么不使用 CodeIgniter 的 Active Record 功能?

$data = array('email' => $email, 'password' => $password);
$this->db->insert('users', $data);
于 2013-01-31T20:01:19.887 回答