Android 语法错误,无法将电子邮件键入SQLite

Android 语法错误,无法将电子邮件键入SQLite,android,database,sqlite,Android,Database,Sqlite,正如标题所说,我无法将电子邮件地址键入SQLite数据库。错误如下: 02-01 09:49:52.300: I/SqliteDatabaseCpp(16157): sqlite returned: error code = 1, msg = near "@gmail": syntax error, db=/data/data/com.proj.db/databases/FormDetails 在创建数据库的过程中并没有什么错误,只是最近我才把它添加到电子邮件栏中,然后这个错误就出现了。是因为

正如标题所说,我无法将电子邮件地址键入SQLite数据库。错误如下:

02-01 09:49:52.300: I/SqliteDatabaseCpp(16157): sqlite returned: error code = 1, msg = near "@gmail": syntax error, db=/data/data/com.proj.db/databases/FormDetails
在创建数据库的过程中并没有什么错误,只是最近我才把它添加到电子邮件栏中,然后这个错误就出现了。是因为“@”符号无法输入数据库吗

我的表格代码:

String insertNewFormDetails = "create table if not exists " + TABLE_NAME + " ( " + BaseColumns._ID + " integer primary key autoincrement, " 
                                                            + NAME + " text not null, "
                                                            + SCHOOL + " text not null, "
                                                            + CURRENTDATE + " text not null, "
                                                            + FORMTYPE + " text not null, "
                                                            + EMAIL + " text not null);";

    db.execSQL(insertNewFormDetails);

不允许像
@Email
那样在列名中使用
@
,但您仍然可以通过在列名周围使用
[@Email]
方括号来使用它

有效

[@Email]

无效

@电子邮件


请注意,您需要在SQL查询中引用此列,如
[@Email]
,它将起作用。

不允许在
@Email
等列名中使用
@
,但您仍然可以在
[@Email]
等列名周围使用
方括号来使用它

有效

[@Email]

无效

@电子邮件


请注意,您需要在SQL查询中像引用
[@Email]
一样引用此列,它将起作用。

insertNewFormDetails
的值以及用于构建它的每个字符串变量是什么?请注意,您的SQL语句正在尝试使用来自其他变量的某些列名创建一个表。这与插入数据不同,正如变量名所示。列名不能包含
@
字符。
insertNewFormDetails
的值以及用于生成它的每个字符串变量是多少?请注意,SQL语句正在尝试使用来自其他变量的某些列名创建表。这与插入数据不同,正如变量名所示。列名不能包含
@
字符。