php - Codeigniter MYSQL QUERY insert_string 避免重复

标签 php mysql sql codeigniter

我想配置一个 SQL 查询,如果记录存在,它不会再次插入。

提前致谢。

$name="John";
$value="login";

        $this->db->query(
            $this->db->insert_string("user_log", array(
                "user_log_user_id"  =>  $this->session->userdata("user_id"),
                "user_log_name"     =>  $name,
                "user_log_value"    =>  $value,
                "user_log_date"     =>  time()

        ))

如果有相同的时间和相同的activity,则不应该插入到日志信息表中。
例如。

当前问题:

No User          Activity        Time
-- ----------    ----------      ----------
1 John           Login           01/10/2014 10:55
2 John           Login           01/10/2014 10:55
3 John           Login           01/10/2014 10:55
4 John           Logout          01/10/2014 11:00
5 John           Logout          01/10/2014 11:00

预期结果:

No User          Activity        Time
-- ----------    ----------      ----------
1 John           Login           01/10/2014 10:55
2 John           Logout          01/10/2014 11:00

最佳答案

您需要使用“ON DUPLICATE KEY UPDATE”。我认为以下链接将对您有很大帮助

https://ellislab.com/forums/viewthread/203637/

关于php - Codeigniter MYSQL QUERY insert_string 避免重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26134215/

相关文章:

java - hibernate : String Index Out Of Bounds Exception

SQL Server 2008 - 默认列值 - 我应该使用 null 还是空字符串?

php - 在 PHP 中将日期和时间转换为 GMT,反之亦然......?

php - 如何将数组中的字符串分解为更多数组 PHP

javascript - 使用 post 将 span 值发送到 php 脚本

mysql - 如何在多个表中选择值?

java - 流式处理结果集错误

php - 将多个复选框值插入一行中的单独列

java - JPA/JPQL 返回不完整的结果 WHERE x.y IS NULL OR x.y.z = 1

php - 来自搜索引擎的外部链接 - 重定向?