Upgrade Skill Di ITBOX Jadi Lebih Hemat
Special Diskon 50%
Sampai 16 November 2026!
Hari
Jam
Menit
Detik
GARUDABOX

error praktik SQLite part 2

Beranda › Forums › Belajar Flutter Mobile Apps Tingkat Menengah › error praktik SQLite part 2

Viewing 13 posts - 1 through 13 (of 13 total)
  • Author
    Posts
  • #169678
    Aris Sugiyono
    Participant

      ada error seperti ini saat direstart E/SQLiteLog( 4115): (1) no such table: notes

      #169867
      Anonymous

        Halo, sesuai pesan errornya ya
        gk ada tabel notes, jadi perlu dibuat terelbih dahulu.
        pastikan aja pas db create, nama tabel yang dicreate sudah sesuai. bisa diperhatikan lagi video nya atau bisa kirimin code kamu ke sini ya(untuk bagian databasenya).

        #169891
        Aris Sugiyono
        Participant
          import 'package:notes_app/models/note.dart';
          import 'package:path/path.dart';
          import 'package:sqflite/sqflite.dart';
          
          class dataBaseHelper {
            static const TABLE_NOTES = 'notes';
            static const TABLE_NOTES_ID = 'id';
            static const TABLE_NOTES_NOTE = 'note';
            static const TABLE_NOTES_TITLE = 'title';
            static const TABLE_NOTES_ISPINNED = 'iSPinned';
            static const TABLE_NOTES_UPDATEDAT = 'updated_at';
            static const TABLE_NOTES_CREATEDAT = 'created_at';
          
            static Future<Database> Init() async {
              final dpPath = await getDatabasesPath();
              return openDatabase(join(dpPath, 'notes.db'), version: 1,
                  onCreate: (newDb, version) {
                newDb.execute('''CREATE TABLE $TABLE_NOTES (
          $TABLE_NOTES_ID TEXT PRIMARY KEY,
          $TABLE_NOTES_TITLE TEXT,
          $TABLE_NOTES_NOTE TEXT,
          $TABLE_NOTES_ISPINNED INTEGER,
          $TABLE_NOTES_UPDATEDAT TEXT,
          $TABLE_NOTES_CREATEDAT TEXT,
                )''');
              });
            }
          
            Future<List<Note>> GetAllNote() async {
              final db = await dataBaseHelper.Init();
              final results = await db.query('notes');
          
              List<Note> listNote = [];
              results.forEach((data) {
                listNote.add(Note.formDb(data));
              });
          
              return listNote;
            }
          
            Future<void> insertallNote(List<Note> listNote) async {
              final db = await dataBaseHelper.Init();
              Batch batch = db.batch();
          
              listNote.forEach((note) {
                batch.insert('note', note.toDb());
              });
          
              await batch.commit();
            }
          }
          
          #169892
          Aris Sugiyono
          Participant

            siap coba saya lihat lagi videonya coach

            #170016
            Anonymous

              sip, catatan aja ya
              itu kan dari code kamu query buat create tablenya ada dibagian oncreate db ya
              dan function oncreate itu hanya dijalankan 1x saat db nya pertama x dibuat, jadi kalau sebelumnya sudah kebuat dengan nama tabel yang salah. bisa tambahkan query create tablenya di function onupgrade, atau klo lebih mudah, bisa uninstall dulu aplikasi lama.

              #170489
              Aris Sugiyono
              Participant

                hallo coach ada dua error berbeda
                1. saat run pakai web base ( chrome ) errornya missingpluginexception ( no implementattion found for method getdatabasespath on channel com.tekartik.sqflite) sudah di restart masih tetep muncul

                2. saat run pakai emulator android errornya masih sama databaseException(no such table: notes ( code 1 AQLITE_ERROR):, while compiling: SELECT* FORM notes) SQL ‘SELECT * FORM notes’ args

                saya cantumkan githubnya coach
                notes app

                #170509
                Anonymous

                  Hallo,

                  1. Kalau run di web menggunakan package sqflite pasti akan error, karena database sqlite itu merupakan database local, dan web tidak bisa menerapkan database tersebut. Jadi kalau mau dev aplikasi buat web, pastikan pakai package yang support untuk web.

                  2. ini saya sudah coba jalanin code kamu. pas dijalanin langsung dapat error ini di console

                  
                  E/SQLiteLog( 8969): (1) near ")": syntax error in "CREATE TABLE notes (
                  E/SQLiteLog( 8969): id TEXT PRIMARY KEY,
                  E/SQLiteLog( 8969): title TEXT,
                  E/SQLiteLog( 8969): note TEXT,
                  E/SQLiteLog( 8969): iSPinned INTEGER,
                  E/SQLiteLog( 8969): updated_at TEXT,
                  E/SQLiteLog( 8969): created_at TEXT,
                  E/SQLiteLog( 8969):       )"
                  E/flutter ( 8969): [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: DatabaseException(near ")": syntax error (code 1 SQLITE_ERROR): , while compiling: CREATE TABLE notes (
                  E/flutter ( 8969): id TEXT PRIMARY KEY,
                  E/flutter ( 8969): title TEXT,
                  E/flutter ( 8969): note TEXT,
                  E/flutter ( 8969): iSPinned INTEGER,
                  E/flutter ( 8969): updated_at TEXT,
                  E/flutter ( 8969): created_at TEXT,
                  E/flutter ( 8969):       )) sql 'CREATE TABLE notes (
                  E/flutter ( 8969): id TEXT PRIMARY KEY,
                  E/flutter ( 8969): title TEXT,
                  E/flutter ( 8969): note TEXT,
                  E/flutter ( 8969): iSPinned INTEGER,
                  E/flutter ( 8969): updated_at TEXT,
                  E/flutter ( 8969): created_at TEXT,
                  E/flutter ( 8969):       )' args []
                  E/flutter ( 8969): #0      wrapDatabaseException
                  E/flutter ( 8969): <asynchronous suspension>
                  E/flutter ( 8969): #1      SqfliteDatabaseMixin.txnSynchronized
                  E/flutter ( 8969): <asynchronous suspension>
                  E/flutter ( 8969):

                  bisa diliat ya itu ditulis syntax error in “CREATE TABLE notes dari sini kita bisa tau kalau pas nge create table, syntax/query nya salah jadinya table nya gk ke create.

                  makanya pas get data note nya
                  kamu dapat error no such table: notes

                  setelah di cek, itu query create table kamu kebanyakan , (koma) ya.

                  seharusnya seperti ini
                  `static Future<Database> Init() async {
                  final dpPath = await getDatabasesPath();
                  return openDatabase(join(dpPath, ‘notes.db’), version: 1, onCreate: (newDb, version) {
                  newDb.execute(”’CREATE TABLE $TABLE_NOTES (
                  $TABLE_NOTES_ID TEXT PRIMARY KEY,
                  $TABLE_NOTES_TITLE TEXT,
                  $TABLE_NOTES_NOTE TEXT,
                  $TABLE_NOTES_ISPINNED INTEGER,
                  $TABLE_NOTES_UPDATEDAT TEXT,
                  $TABLE_NOTES_CREATEDAT TEXT //koma dibagian sini dihapus. karena kolom terakhir dari query create table tidak perlu menambahkan ,
                  )”’);
                  });
                  }`

                  #170517
                  Aris Sugiyono
                  Participant

                    hasil

                    hallo coach, setelah saya coba hasilnya masih sama itu coach.

                    #170518
                    Aris Sugiyono
                    Participant
                      #170786
                      Anonymous

                        Hallo, jangan lupa untuk di uninstall dulu ya apk sebelumnya.

                        #170788
                        Anonymous

                          Karna seperti yang dijelaskan sebelumnya, function oncreate pada db nya hanya di jalanin saat db nya pertama x dibuat, dan karena DB nya sudah ada dan function oncreate pernah dijalankan, makanya function oncreate nya tidak dijalankan lagi. sehingga walaupun sudah di fix query create table nya, tableny tetap gk kebuat karena gk dijalankan oleh aplikasinya.

                          #170970
                          Aris Sugiyono
                          Participant

                            solved coach, terima kasih

                            #191821
                            Anonymous

                              Oke sama sama

                            Viewing 13 posts - 1 through 13 (of 13 total)
                            • You must be logged in to reply to this topic.
                            Shopping cart0
                            There are no products in the cart!
                            Continue shopping