簡體   English   中英

我如何在我的飛鏢代碼中解決此問題

[英]How Can I Solve This Problem in my dart code sqlite

我的代碼中有一個問題,在database_helper.dart中午餐時發生錯誤

database_helper.dart是Sqlite中存儲數據學習項目的一個文件,我遇到了此問題,我嘗試了許多解決方案,例如卸載應用程序並重新安裝

誰能幫我 ?

======

  class DataBaseHelper {
    static Database _db ;
    final String userT = 'userT' ;
    final String columnId = 'id' ;
    final String columnUserName = 'username' ;
    final String columnPassword = 'password' ;
    final String columnAge = 'age' ;
    final String columnCity = 'city' ;
=========

  Future<Database> get dbase async {
    if(_db != null) {
      return _db ;
    }
    _db = await intDB();
    return _db ;

  }
=================

  intDB() async {
    Directory docDirectory = await getApplicationDocumentsDirectory() ;
    String path = join(docDirectory.path , 'myDB.db') ;
    var myOwnDB = await openDatabase(path , version: 1 , onCreate: _onCreate);
    return myOwnDB ;
  }
=========================

  void _onCreate(Database db , int newVersion) async {
    var sql = 'CREATE TABLE $userT ($columnId INTEGER PRIMARY KEY UNIQUE ,'
        ' $columnUserName TEXT , $columnPassword TEXT , $columnCity TEXT , $columnAge INTEGER ' ;
    await db.execute(sql) ;
  }

錯誤日志:

E / SQLiteLog(14607):“ INTEGER”附近的(1):語法錯誤

I / flutter(14607):錯誤DatabaseException(在“ INTEGER”附近:語法錯誤(代碼1):),而在編譯時:Centate table userT(id INTEGER主鍵唯一性,用戶名TEXT,密碼TEXT,city TEXT,age INTEGER)代碼herepen,關閉...

E / flutter(14607):[錯誤:flutter / lib / ui / ui_dart_state.cc(148)]未處理的異常:DatabaseException(在“ INTEGER”附近:語法錯誤(代碼1):,而在編譯時:CREATE TABLE userT(id INTEGER主鍵唯一性,用戶名TEXT,密碼TEXT,城市TEXT,年齡INTEGER)

語法錯誤。 您忘了把)放在行尾

$columnAge INTEGER )

您可以在https://sqliteonline.com/中檢查您的sqllite代碼

CREATE TABLE userT (columnId INTEGER PRIMARY KEY UNIQUE ,
        columnUserName TEXT , columnPassword TEXT , columnCity TEXT , columnAge INTEGER)

放置后)。 它工作正常。

在此處輸入圖片說明

編輯:您在評論中提到的Insert Into語句的第二個問題

Insert Into語句的語法錯誤是“ userCity”列不存在。
在您提供的問題中,在創建表時,使用名稱columnCity ='city'。 因此,您應該將名稱更改為“ city”。

嘗試刪除唯一

他們沒有在任何示例中包含該詞,因此可能尚未實現。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM