【问题标题】:Android SQLite create table with encrypted column namesAndroid SQLite 创建具有加密列名的表
【发布时间】:2011-10-27 17:54:08
【问题描述】:

我在尝试在 Android 上为 sqlite3 运行 CREATE TABLE 语句时遇到了问题。这是因为我正在尝试加密数据库的列。有谁知道为什么它不接受加密值作为列名?

这是我收到的错误:

10-27 17:46:34.591: E/Database(697): Failure 1 (unrecognized token: 
338268F19CB9A68A39035AB5D733F931") on 0x232d40 when preparing 
'CREATE TABLE db_table (_id INTEGER PRIMARY KEY,
BB2BFFB83A95C39D864C9A52D5A5E2CC TEXT,338268F19CB9A68A39035AB5D733F931 
EXT,916D636E4793AB190F05F4F1EF6273A8 TEXT, 
UNIQUE(BB2BFFB83A95C39D864C9A52D5A5E2CC) ON CONFLICT ABORT);'.

如果有任何建议,我将不胜感激。谢谢!

【问题讨论】:

    标签: java android database sqlite encryption


    【解决方案1】:

    不带引号的列名不允许以数字开头

    【讨论】:

    • 这根本不是真的。我会投反对票,但还没有足够的代表。请参阅下面的答案。
    • @EvanR。是的,我应该更具体
    【解决方案2】:
    public static final String CROSSFIT_400MRUN = "'400m_Run'";
    

    用单引号将你的 # 括起来,它会起作用:

    http://www.sqlite.org/lang_keywords.html

    【讨论】:

      猜你喜欢
      • 2021-11-20
      • 1970-01-01
      • 1970-01-01
      • 2016-12-05
      • 2011-08-05
      • 1970-01-01
      • 2016-03-15
      • 1970-01-01
      相关资源
      最近更新 更多