【问题标题】:How to show the table created date in android database and how to delete that table according to some condition on date?如何在android数据库中显示表创建日期以及如何根据日期的某些条件删除该表?
【发布时间】:2011-11-14 05:41:52
【问题描述】:

我知道所有关于创建表和更新所有的东西,然后删除它。 但现在我想删除一些创建日期少于 2 周的表。 那么anybudy 可以告诉我如何获取这种类型的表格,然后我想从那里删除日期少于 2 周的表格。 请帮我解决这个问题。 . . 谢谢。

【问题讨论】:

    标签: android android-layout android-emulator android-widget android-ndk


    【解决方案1】:

    为此,您必须维护一个包含所有表名称及其创建日期的新表 (creation_date)

    当您想删除当时日期小于 2 周的表时,请先获取系统的日期和时间。在那之后计算距离当前日期不到 2 周的日期;

    在包含以下所有表名的表中使用 2 周后日期查询

    Select table_name From creation_date Where crnt_date < date
    

    使用这个你可以得到所有在 2 周之前创建的表名

    在此之后,您可以为每个表触发查询以删除该表,如下所示

    Drop Table table_name
    

    【讨论】:

    • 这意味着我必须创建另一个表来存储使用它们的名称创建其他表的创建日期?如果我不想创建另一个表来维护它,是否还有其他替代方法。 ??
    • 请帮助我解决这个问题。 . .
    • 请告诉我是否还有其他替代品?
    • 据我所知,您无法从 sqllite 获取表的创建日期
    【解决方案2】:

    AFAIK sqlite (我猜你在谈论它)不会将表创建日期作为可通过sqlite_master 表访问的数据库元数据的一部分。但是,如果您需要,创建一个额外的表来跟踪创建日期将是微不足道的。

    【讨论】:

    • 是的,我只关心那些表而不是 sqlite_master 表。
    • 在这种情况下你能帮我吗?
    • 我认为您可以在 sqlite_master 上创建一个触发器来更新跟踪日期的表
    猜你喜欢
    • 1970-01-01
    • 2013-10-02
    • 2021-04-04
    • 2022-11-12
    • 1970-01-01
    • 2021-08-21
    • 1970-01-01
    • 1970-01-01
    • 2021-08-18
    相关资源
    最近更新 更多