【问题标题】:Blog page hit counter博客页面点击计数器
【发布时间】:2012-03-04 11:55:49
【问题描述】:

我正在为我忙碌的博客创建一个页面点击计数器。

我有一个名为blog_article_hits 的数据库表,其中包含三列:

article_id    INT
hit_counter   INT
last_viewed   DateTime

每次访问者点击我的页面时,我的计划是提取文章的当前点击次数,将其加 1,然后使用新的值和时间再次更新表格。我知道这行得通,但这是实现这一目标的正确方法吗?我担心的是当两个独特的人同时访问同一篇文章时会发生什么。我有可能会失去计数吗?我应该使用存储过程还是其他方法?

【问题讨论】:

    标签: mysql asp-classic pageviews hitcounter


    【解决方案1】:

    只需直接或从存储过程发出更新状态。您不会错过任何点击。

    update blog_article_hits set article_id=article_id+1, last_viewed=Now()
    

    【讨论】:

    • 除了last_viewed = GetDate(),Sql 不理解 Now()
    • @ZeeTee:我正在使用 MySQL,它确实理解 Now()
    • @Zee Tee - 更正- OP 用MYSQL 标记的问题。 MySql可以理解Now(),不理解GetDate()
    • 是存储过程的一个特性,他不会丢失任何命中,还是不太可能?
    • 没有。每次更新都将在前一次完成和数据提交后排队并执行,即使同时发布也是如此。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-26
    • 1970-01-01
    • 1970-01-01
    • 2023-03-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多