SqfliteDatabaseException (DatabaseException(near ")": 语法错误
SqfliteDatabaseException (DatabaseException(near ")": syntax error
我用 sqflite 创建了一个数据 table。但它告诉我语法错误。你能告诉我这里的语法错误在哪里吗?
Future _onCreate(Database db, int version) async {
await db.execute('''
CREATE TABLE $table (
$columnId INTEGER PRIMARY KEY,
$columnfid VARCHAR,
$columnfname TEXT,
)
''');
}
这里是错误:
Exception has occurred.
SqfliteDatabaseException (DatabaseException(near ")": syntax error (code 1 SQLITE_ERROR): , while compiling: CREATE TABLE fid_table (
id INTEGER PRIMARY KEY,
fid VARCHAR,
fname TEXT,
)) sql ' CREATE TABLE fid_table (
id INTEGER PRIMARY KEY,
fid VARCHAR,
fname TEXT,
)
' args []})
问题在于 SQL 的尾随逗号 (,),即在最后一个 TEXT.
之后
而不是
await db.execute('''
CREATE TABLE $table (
$columnId INTEGER PRIMARY KEY,
$columnfid VARCHAR,
$columnfname TEXT,
)
''');
尝试
wait db.execute('''
CREATE TABLE $table (
$columnId INTEGER PRIMARY KEY,
$columnfid VARCHAR,
$columnfname TEXT
)
''');
此外,也不需要额外的引号。所以,你也可以这么写。
wait db.execute('
CREATE TABLE $table (
$columnId INTEGER PRIMARY KEY,
$columnfid VARCHAR,
$columnfname TEXT
)
');
我用 sqflite 创建了一个数据 table。但它告诉我语法错误。你能告诉我这里的语法错误在哪里吗?
Future _onCreate(Database db, int version) async {
await db.execute('''
CREATE TABLE $table (
$columnId INTEGER PRIMARY KEY,
$columnfid VARCHAR,
$columnfname TEXT,
)
''');
}
这里是错误:
Exception has occurred.
SqfliteDatabaseException (DatabaseException(near ")": syntax error (code 1 SQLITE_ERROR): , while compiling: CREATE TABLE fid_table (
id INTEGER PRIMARY KEY,
fid VARCHAR,
fname TEXT,
)) sql ' CREATE TABLE fid_table (
id INTEGER PRIMARY KEY,
fid VARCHAR,
fname TEXT,
)
' args []})
问题在于 SQL 的尾随逗号 (,),即在最后一个 TEXT.
之后而不是
await db.execute('''
CREATE TABLE $table (
$columnId INTEGER PRIMARY KEY,
$columnfid VARCHAR,
$columnfname TEXT,
)
''');
尝试
wait db.execute('''
CREATE TABLE $table (
$columnId INTEGER PRIMARY KEY,
$columnfid VARCHAR,
$columnfname TEXT
)
''');
此外,也不需要额外的引号。所以,你也可以这么写。
wait db.execute('
CREATE TABLE $table (
$columnId INTEGER PRIMARY KEY,
$columnfid VARCHAR,
$columnfname TEXT
)
');