Database 带有颤振的sqflite创建表格问题
我的代码有问题,我编写了一个简单的颤振应用程序,它是创建个人帐户并将个人信息保存在sqlite数据库中,但当我创建表时,它给了我错误,这是我的代码和错误: 我的代码:Database 带有颤振的sqflite创建表格问题,database,sqlite,flutter,Database,Sqlite,Flutter,我的代码有问题,我编写了一个简单的颤振应用程序,它是创建个人帐户并将个人信息保存在sqlite数据库中,但当我创建表时,它给了我错误,这是我的代码和错误: 我的代码: Future openDb()异步{ if(db==null){ //获取数据库的路径 final pathdb=wait getDatabasesPath(); final path=join(pathdb,'roznamcha.db'); db=等待openDatabase(路径, //创建表 onCreate:(数据库,in
Future openDb()异步{
if(db==null){
//获取数据库的路径
final pathdb=wait getDatabasesPath();
final path=join(pathdb,'roznamcha.db');
db=等待openDatabase(路径,
//创建表
onCreate:(数据库,int版本)异步{
等待数据库。执行(“”)
创建表帐户(
accountNumber整数主键自动递增,
名称VARCHAR(64)不为空,
telphone VARCHAR(10)不为空,
地址:VARCHAR(100),
发布日期时间,
平衡整数,
图像VARCHAR(255),
类型VARCHAR(64),
)''');
//事务表
等待数据库。执行(“”)
创建表事务(
transactionNumber整数主键自动递增,
说明文本不为空,
issueDate日期时间不为空,
积分整数,
借方整数,
accountNum整数,
记录布尔值默认值为false,
速率整数不为空
)''');
},版本:1);
}
返回分贝;
}
错误:
发生异常。SqfliteDatabaseException
(DatabaseException(近“)”:语法错误(代码1 SQLITE_错误):,
编译时:创建表帐户(
accountNumber整数主键自动递增,
名称VARCHAR(64)不为空,
telphone VARCHAR(10)不为空,
地址:VARCHAR(100),
发布日期时间,
平衡整数,
图像VARCHAR(255),
类型VARCHAR(64),
))sql“创建表帐户”(
accountNumber整数主键自动递增,
名称VARCHAR(64)不为空,
telphone VARCHAR(10)不为空,
地址:VARCHAR(100),
发布日期时间,
平衡整数,
图像VARCHAR(255),
类型VARCHAR(64),
)'args[]})
从
类型VARCHAR(64),
中删除,
。我从我的代码中删除了,
。但现在它给了我以下错误:发生了异常。SqflitedDatabaseException(DatabaseException(靠近“transaction”):语法错误(代码1 SQLITE_错误):,编译时:创建表事务(@forpastransaction
是SQLITE中的保留字。请将其更改为其他内容。非常感谢您现在它可以完美地工作@forpas
Future<Database> openDb() async {
if (db == null) {
// get path of database
final pathdb = await getDatabasesPath();
final path = join(pathdb, 'roznamcha.db');
db = await openDatabase(path,
// create tables
onCreate: (Database database, int version) async {
await database.execute('''
CREATE TABLE account (
accountNumber INTEGER PRIMARY KEY AUTOINCREMENT,
name VARCHAR(64) NOT NULL,
telphone VARCHAR(10) NOT NULL,
address VARCHAR(100),
issueDate DATETIME,
balance INTEGER,
image VARCHAR(255),
type VARCHAR(64),
)''');
// transaction table
await database.execute('''
CREATE TABLE transaction (
transactionNumber INTEGER PRIMARY KEY AUTOINCREMENT,
description TEXT NOT NULL,
issueDate DATETIME NOT NULL,
credit INTEGER,
debit INTEGER,
accountNum INTEGER,
record BOOLEAN DEFAULT false,
rate INTEGER NOT NULL
)''');
}, version: 1);
}
return db;
}