【问题标题】:sqlite3 insert into dynamic tablesqlite3 插入动态表
【发布时间】:2012-12-29 22:51:37
【问题描述】:

我正在使用 sqlite3(将来可能是 sqlite4),我需要动态表之类的东西。 我有许多格式相同的表:values_2012_12_27、values_2012_12_28、...(表的数量是动态的),我想动态选择接收一些数据的表。
我正在使用_sqlite3_prepareINSERT INTO ? VALUES(?,?,?)。当然,这无法编译(附近的语法错误?)。在 sqlite 中是否有一种很好且简单的方法可以做到这一点?

谢谢

【问题讨论】:

  • 你为什么不把表名snprintf()放到查询中呢?
  • 因为我需要_sqlite3_prepare 并为我拥有的每张桌子保留一份声明。这是我想要避免的(如果可能的话)。谢谢

标签: sqlite insert


【解决方案1】:

不能对表名或列名等标识符使用 SQL 参数。

如果您不想保留这么多准备好的语句,只需在需要时随时准备它们。


如果您的数据库已正确规范化,您将拥有一个大的 values 表和一个额外的 date 列。 这种组织通常是首选,除非您对两者都进行了衡量,并发现更好的性能(如果确实存在)超过了管理多个表的开销。

【讨论】:

    猜你喜欢
    • 2017-07-11
    • 1970-01-01
    • 2019-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-21
    相关资源
    最近更新 更多