当前位置:  开发笔记 > 编程语言 > 正文

SQLite中的日期比较

如何解决《SQLite中的日期比较》经验,为你挑选了1个好方法。

如何在表中声明日期数据类型?它只是以下几点?

CREATE TABLE sampleDB (..., sampledate DATE, ...)

现在,如果我想通过POST表单使用字符串查询:

";
        $db = new SQLiteDatabase("testDB.db");
        $query = $db->query("SELECT * FROM sampleDB WHERE sampledate = ".$formdate);
        while($entry = $query->fetch(SQLITE_ASSOC)) {
            echo "result: " ... "
"; } } ?>

这似乎不起作用.它不会返回我想要的条目.

当我存储日期为一个字符串,字符串比较,一切都很好,但如果SQLite的有一个日期数据类型,我觉得应该有办法用它!



1> hillu..:

您发布的代码中存在一个漏洞,似乎可以让任何用户轻松注入任意SQL命令.修复它的两种常用方法是(1)清理输入和(2)使用将命令与(可能不受信任的)参数分开的API.对于(1)我将在PHP文档中查找特定于SQL的转义函数.(2)的一个着名例子是Perl的DBI.(我不知道PHP是否有类似的库.)

在SQLite中,没有日期或时间类型.如果数据库中已有日期字符串,则必须确保它们的格式一致.SQLite手册中的日期和时间函数列出了一些可能对您的查询有用的函数.


首先,你的反应很粗鲁.无论专业水平如何,本网站都是编程问题.其次,你告诉我一个问题而不告诉我如何解决它.什么部分容易受到注射攻击?我该如何解决这个问题?第三,感谢您告诉我SQLite没有日期或时间类型.这是你的回复中唯一对我有用的部分.最后,我正在寻找一个快速的答案; 不是编程课.根据我的理解,Stack Overflow就是这样:快速解答我们的编程问题.
推荐阅读
手机用户2402852387
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有