2016-07-30 39 views
-1

我创建在其中创建表的动态有电子邮件(例如:[email protected])的Android应用程序作为他们的表名。后来我知道表名不能有像“@”这样的特殊字符。
请给我建议一种方法,我可以用“@”和“。”等特殊字符创建表格。在表名中。在表名中的特殊字符在SQLite数据库

+0

这是[tag:sqlite]还是[tag:mysql]?它目前用两个标记。 – Mureinik

+1

我不确定为什么你认为每个电子邮件地址都有一个表是合适的解决方案。即使是这样,使用受支持的表名(按顺序或随机生成),并有一个表将电子邮件地址映射到表名。 – CommonsWare

+0

@Mureinik:它的SQLite。你有解决这个问题的方法吗? –

回答

0

See this

基于上面的链接,U可以使用

`

各地的电子邮件地址做。 但据说这是非常糟糕的做法。

1

这太长了评论。简单的回答是,SQLite支持用于转义标识符的双引号和方括号。

然而,正确的答案是,我无法想象为什么一个单独的表会为每封电子邮件创建。电子邮件地址通常是实体的属性,因此也是一个列。即使电子邮件地址本身代表一个实体,那么您也会希望将多个电子邮件存储在单个表中,并将电子邮件作为主键。

如果由于某种原因,你需要一些处理个人用户临时表,然后使用create temporary table