Flutter Tutorial - SQL Database Storage Using Sqlite & Sqflite CRUD | Android & iOS
HTML-код
- Опубликовано: 5 июн 2024
- Persist data with Flutter's Sqflite & Flutter's Sqlite Database locally on your Android or iOS device by using Raw SQL statements and perform Sqflite CRUD Operations Create, Read, Update and Delete.
Click here to Subscribe to Johannes Milke: ruclips.net/user/JohannesMilke...
👉 12 Week Flutter Training | heyflutter.com
👉 Flutter Masterclass Courses | heyflutter.com/masterclass
Source Code | github.com/JohannesMilke/sqfl...
My Courses | heyflutter.com
Follow Newsletter | johannesmilke.com/newsletter
SUBSCRIBE HERE
bit.ly/JohannesMilke
SUPPORT & SPONSOR ME
github.com/sponsors/JohannesM...
RESOURCES
Shared Preferences Load & Store Data Tutorial: • Flutter Tutorial - Sha...
Shared Preferences II Persist JSON Data Tutorial: • Flutter Tutorial - Log...
Todo App From Scratch Tutorial: • Flutter Tutorial - 1/2...
Firebase CRUD Tutorial: • Flutter Tutorial - Tod...
Secure Storage Tutorial: • Flutter Tutorial - Sec...
Search App Bar & Search Delegate Tutorial: • Flutter Tutorial - Sea...
Crop & Save Images Tutorial: • Flutter Tutorial - Ima...
Store Image Tutorial: • Flutter Tutorial - Flu...
Selectable DataTable Tutorial: • Flutter Tutorial - Sel...
Deploy Flutter Web App Tutorial: • Flutter Tutorial - Fir...
Create Invoice PDF Document Tutorial: • Flutter Tutorial - Cre...
Google SignIn Tutorial: • Flutter Tutorial - Goo...
Email Sign In Tutorial: • Flutter Tutorial - Ema...
App Internationalization Tutorial: • Flutter Tutorial - Loc...
Migrate App To Null Safety Tutorial: • Flutter Tutorial - Mig...
Null Safety In 5 Minutes Tutorial: • Flutter Tutorial - Nul...
Autofill Services Tutorial: • Flutter Tutorial - Aut...
TIMELINE
0:00 Introduction Database Storage Sqlite & Sqflite
0:39 When To Use Database?
1:04 Which To Use Database? SQL VS NoSQL
1:24 Sqflite CRUD Operations
1:56 Setup Sqflite
2:10 Open Sqflite Database & Initialize Database
4:34 Create Database Table
8:22 Add Sqflite Multiple Tables
8:34 Insert SQL Statement / Sqflite Create Operation
13:21 Query SQL Statement / Sqflite Read Operation
18:39 Query All SQL Statement / Sqflite Read All Operation
20:11 Update SQL Statement / Sqflite Update Operation
21:26 Delete SQL Statement / Sqflite Delete Operation
21:54 Create Notes App UI With Sqflite CRUD
SHARE | SUBSCRIBE | LIKE FOR MORE VIDEOS LIKE THIS
*********
SOCIAL MEDIA: Follow Us :-)
Twitter | / heyflutter_
Linkedin | / heyflutter
LEARN MORE
SOURCE CODE | github.com/JohannesMilke
ARTICLES | / johannesmilke
PLAYLISTS
All Flutter Videos | • Flutter Tutorial - Flu...
Widgets - Flutter | • Flutter Tutorial - Flu...
Plugins - Flutter | • Flutter Tutorial - Flu...
Animations - Flutter | • Flutter Tutorial - Tra...
Designs - Flutter | • Flutter Tutorial - Flu...
Firebase - Flutter | • Flutter Tutorial - Pag...
State Management - Flutter | • Flutter Tutorial - Riv...
CREDITS
Copyright song "Corporate Technology" by scottholmesmusic.com
#Flutter #Tutorial #JohannesMilke
LIKE & SHARE & ACTIVATE THE BELL
Thanks For Watching :-)
bit.ly/JohannesMilke - Наука
👉Join 12 Week Flutter Training: heyflutter.com
👉Join the WhatsApp Channel to get the latest news about Flutter & HeyFlutter: whatsapp.com/channel/0029VaDNCZtC1Fu8nL2vmw3f
Source Code: github.com/JohannesMilke/sqflite_database_example
Shared Preferences Load & Store Data Tutorial: ruclips.net/video/szOllHT1S7Y/видео.html
Shared Preferences II Persist JSON Data Tutorial: ruclips.net/video/-32HIsRf26o/видео.html
Todo App From Scratch Tutorial: ruclips.net/video/kN9Yfd4fu04/видео.html
Firebase CRUD Tutorial: ruclips.net/video/EV2DyrKOqrY/видео.html
Secure Storage Tutorial: ruclips.net/video/Oqhrxk_f1RE/видео.html
Search App Bar & Search Delegate Tutorial: ruclips.net/video/RaACAwvZ61E/видео.html
Crop & Save Images Tutorial: ruclips.net/video/pXbBTJt7frM/видео.html
Store Image Tutorial: ruclips.net/video/JDDoN2THwug/видео.html
Selectable DataTable Tutorial: ruclips.net/video/HZD-0zgpuak/видео.html
Deploy Flutter Web App Tutorial: ruclips.net/video/xJo7Mqse960/видео.html
Create Invoice PDF Document Tutorial: ruclips.net/video/z_5xkhEkc5Y/видео.html
Google SignIn Tutorial: ruclips.net/video/ogW83xGQGTg/видео.html
Email Sign In Tutorial: ruclips.net/video/rnHAInnjCmM/видео.html
App Internationalization Tutorial: ruclips.net/video/Zw4KoorVxgg/видео.html
Migrate App To Null Safety Tutorial: ruclips.net/video/GLnQphHi1BY/видео.html
Null Safety In 5 Minutes Tutorial: ruclips.net/video/Q_WloMNKOkU/видео.html
Autofill Services Tutorial: ruclips.net/video/v8T4fnrQCf0/видео.html
So glad I came across your content, well delivered and well executed delivery. Best intro to sqlfite I have found. Please know that your efforts are appreciated!
@@HeyFlutter can you pleasemake a video on how to add and use excel in flutter .
For Eg a Drop down where we select first name of user and Last name is retreived from data in excel
Clear voice with slow and perfect explanation. Keep it up. Thank you for such a nice and awesome video.
Thank you SO MUCH for this tutorial!!! It is extremely helpful, with clear and easy steps to follow. Please continue posting such tutorials!! :)
It all looks so easy when you do it :-D Thanks for another great video.
Great video, complete explanation of using sqlite and Flutter. Thanks! I'm subscribed now!
Thank you so much! You explained so perfectly! Can't find this perfect content explanation with slides anywhere!!
Hat's off to you for your efforts!
@@HeyFlutter always here for your support!
Can you please me explain why there is exclamation mark in the end of the database name in: if(_database != null) return _database!; 03:52
@@suniltimilsina7425 if you want detail explanation i explain you on chat, LOL I DON'T WANT TO SPAM COMMENT SECTION
Maybe text me on ig: @hanishajainn
@@TechyChung I can't find you on Instagram... is that your account which have only 17 following and about 11 followers?
Wonderful tutorial and covered everything in so details i managed to implement same into my project in no time, kudo to you :)
Just got Started with flutter and these are good quality content keep up the good work!!
Thank you so much! :)
This tutorial was reaally helpful and easy to follow,
have a great day!
What a clear explanation sir!! Thank you so much.
Johannes again what a NICE video this, just love it, thanks
Your channel is amazing. Keep up
You are amazing! best video and explained in the best way ever possible!
Another great Tutorial. Nice job Man.
Thank you very much, everything you teach is very helpful to me.
Extremely helpful! Thank you!
It's a really helpful video and literally, I support you in my country with my friends and colleagues you taught with clear and easy steps.
Love From PAKISTAN
Thank you for the great content as always! Managed to make an app with sqflite.
Just subscribed your channel ! Loved this video ❤
you deserve a reward. Thanks
Really helpful explanation. Thank you very much !!
6:13 A very elegant way of parametrizing your SQL typing and variables. Never seen that before but really enjoying it!
Thanks, Max R! 🙂
@@HeyFlutter You got yourself a new subscriber!
Amazing!! Thanks Johannes
Best video on sqflite!🔥
I really like your channel, it's the best I've ever seen so far
Glad to hear that, Thank you omar attia! 😊
You are best ! Thanks a lot for the awesome tutorial!
Thank you, Johannes! 👍
Your videos are awesome
Another great video 👍thank you so much
A very beautiful and excellent tutorial. Thank you @Johannes
You’re most welcome, Arthur D. Mugume! 🙂
Best flutter tutorial channel in English
Best flutter tutorial! This is the basis of all apps
Thank you, John! 🙂
outstanding explanation man,thanks
thank you very much, very easy to understand, hope you will make more videos
thank you so much !
I learned how to build my app with sqflite from this tutorial
Glad it was helpful, @codinglife-ii1vr 😀
Just a tip, inside the _initDB method you can just use:
Insted of:
final dbPath = await getDatabasesPath();
final path = join(dbPath, filePath);
You can put:
Future _initDB(String filePath) async {
return await openDatabase(filePath, version: 1);
}
because openDatabase first parameter now gets the defaul database path automatically, just pass the database name "notes.db"
@@HeyFlutter You are welcome, sexy voice.
how we find the our db path where is this located
Great tutorial, thank you
Thank you Johannes :)
Thank you so much. So beautiful
Such a nice content !!!
thanks for the great video!!
Thank you so much for the effort. This really helped me in my project.
Glad I could be of help, You are welcome Maqquse! 😊
nice work thank you 👏
hie am total new to flutter ..ur tutorial is he best i found out there...
Thank you so much
very helpful tnx.
Thank you very Much
It's a pretty simple and straightforward tutorial. Thanks!
Great video! I'm curious, whats your recording process? how can you paste multiple contents with apparently no video editing? Also, have you tried floor? Any pros vs cons?
Thank you bro. It really help alot
You’re most welcome, @codeGenius157! 🙂
thanks @Johannes for your efforts
Please give us tutorial sqflit with multiple tables with foreign key
@@HeyFlutter
Good,I am waiting make it soon please
Thanks for sharing.
You are welcome, @srunrathaes128!
great job
hey vry nice
tnk for the video
Great Tutorial excellent.
Thanks, @clefeducationforum7726! 🙂
Thank you very much!
Glad you liked it, @namnguyenanh5170 😀
Your sound is very easy to understand
Thanks ❤
this is gold
thank you
very helpful content
Thank you, Riche Quan! 🙂
thank bro
My flutter teacher is you sir
I followed your instructions for my own use case, but was wondering how you would go about with multiple tables, i assume you would create a separate db.dart in which you initialise the connection, and create the tables from, but i can't figure out how to make that work.
Thank you so much Mr. J. Milke for uploading such a wonderful video in a fabulous manner. i found it very helpful.
Could u please share the code in pdf or word.
Thanks.
Johannes one thing that I'd like to know is how do you organize your code when you will have lots of different tables with different coluns and data, like storing lots of different models, using one db for it, I think we would need a helper to class that could do a CRUD in multiple tables/colums, maybe different db's too.
Hi, thanks for the code and the very clear walkthrough. Very well created. However I have a question for the insert statement. from 11:20 to 12:20. I understand that id is not generated from dart, so the id is auto-generated from db side. But why do we have to collect id after inserting to db?
We need to read, delete, edit, etc. items. How you will identificate single item to operate with it? We have probability to have items with same title.
Future delete(int id) async {
final db = await instance.database;
return db.delete(
_tableName,
where: '${TaskFields.id} = ?',
whereArgs: [id],
);
}
Thank you for your efforts, can i ask where can i find the file notes.db in my folder's app?
At 8:19 what must you put after onUpgrade: ? (after the colon: ) if you add new fields to your Create Table
Thank You Jonathan Munday! Follow this link: stackoverflow.com/questions/63347032/how-do-you-upgrade-a-flutter-app-with-sqlite-database
I hope you will get your answer 🙂
Thank you! Is the updating for "isImportant" working? When I try to update the "isImportant" of an already created note, it doesn't update.. I can't figure out how to fix it.. :(
Ty, it really help me so much!
Following the note model, how can add ManyToMany relationship with other table?
Thank You Alan Gómez! Follow this link: www.back4app.com/docs/flutter/parse-sdk/data-objects/flutter-many-to-many-relationship
I hope you will get your answer 🙂
thanks a lot
You are welcome, @roninspect4357 😊
Thank you very much for the video and also providing the code for free.
You’re most welcome, Kamrul Ibn Zaman! 🙂
Great video man! . Can you make a video about how to retrieve data from firestore and save it in a CSV file?
Thanks, Juan David! 🙂 Check out my videos about Firestore here. Instead of CSV File you could also use JSON files
0. Load JSON Tutorial: ruclips.net/video/Rlf5q2EGHzc/видео.html
1. Store JSON Tutorial: ruclips.net/video/-32HIsRf26o/видео.html
2. Firebase CRUD Tutorial: ruclips.net/video/EV2DyrKOqrY/видео.html
3. Todo App With Firebase Tutorial: ruclips.net/video/EV2DyrKOqrY/видео.html
4. Pagination With Firebase Tutorial: ruclips.net/video/IruuzPydPz4/видео.html
5. ChatApp With Firebase Tutorial: ruclips.net/video/wHIcJDQbBFs/видео.html
Maa syaa allah tabaarakallah
is it possible using sqflite to create database such as for example we have user form with dropdown menu animals and birds. If user selects animals, all input textfields only related to animals should display and store the animals related info in animals table separately and viceversa for birds..input textfields only related to birds should store in separate table. but both the birds and animals list should be accesible from home screen.
Thank you for the perfect tutorial. I have a question, what if I want to have a list of initial data, so that anyone who download this app will have these data already stored in the app?
Don't know if it's the correct approach. But I just called create method inside the _CreateDB after creating the table.
Thanks for the tutorial.
You'll have to write a lot of code in flutter for SQL than C#.
Yeah, @achieverstv8244 🙂
thank you Johannes
also are need explanation on how to connect flutter app with firebase
Thank you 😊, innocent philbert! Check out this playlist on flutter and firebase : ruclips.net/video/Z0jFkP0A3B0/видео.html
nice one
@@HeyFlutter you can't believe i have listened to this video for more than 7 times, it's very interesting and has helped me a lot in my final year project, thank you man
Thank you, you are god!
Hey Johannes. Thank you for making this video. This is a perfect tutorial for sqlite. But I'm still confused what is the used of isImportant and number in the database?
Enrico you mean why was used number instead of the bool value? If so its because sql cannot handle bool values so we can control it by using number, false = 0 and true = 1, like on/off
thank you very much for the video, I wanted to know if it is possible to send an icon to the database and then display it in a widget for example, if so how to do?
Thank You DARGWA! Follow this link: stackoverflow.com/questions/59369988/save-icondata-and-restore-in-flutter
I hope you will get your answer 🙂
Reading his code shows his experience
Thanks, Ali Gohar! 🙂
Thank you. I need to know how to add bookmark in local device storage.
Thank You Rabbi Hossen! Follow this link: stackoverflow.com/questions/41369633/how-to-save-to-local-storage-using-flutter
I hope you will get your answer 🙂
Hi Johannes, thank you for another great tutorial. I have managed to write all the code for the db with all my relevant fields but I don't want to use it for a 'note app' I need to make my db work for a 'medications list'. I want the user to be able to list all their meds etc and then retrieve/update/delete from more of a form field type UI. Could you please give me some ideas on how to develop the screen so this would work with my newly created db?
I hope this makes sense, I am very new to coding and this is my first app!
Kind regards
Jane
Thanks, Jane Maddison! 🙂 Simply start with something more simple as your first app. This should be your first app: ruclips.net/video/UPSsxGQRIzs/видео.html
hello dear,
Can you explain in video how use search on data with sqf 🌻
@@HeyFlutter thanks 💜
Awesome! As always...
Hi, @Johannes Milke I wonder how to implement "saving data from internet/web-service to this kind of local database" to work like WhatsApp or Telegram. Any idea? or Do you plan to make tutorial about that thing?
Terima kasih atas balasannya, @@HeyFlutter...
That was great answer!
But, it will be hard for me, since I'm still newbie... anyway, thanks a lot
Thanks, Trik! 🙂 Simply download the files / data first and then store it your database such as learned in this of this tutorial. Learn more about loading data from the internet here: ruclips.net/video/Rlf5q2EGHzc/видео.html
Hi, I am currently learning flutter and Dart, Just have a little question. Why do we need to pass the value of "id" from INSERT method into the "Note" object using the COPY method?
Thank You Justin Dela Rapa! Follow this link: stackoverflow.com/questions/59967096/add-id-or-name-property-or-other-means-of-identification-for-flutter-web-applica
I hope you will get your answer 🙂
I have the same question actually
thanks a lot for the video sir. I want to ask if the Copy function is really needed in the Create function? can I change the return type of the Create function from Note to just void?
Thank you, Fathin Al Ghifari! 🙂. Then it will not work.
@@HeyFlutter what if replace the copy method with setter for ID field ? Idk why we need to copy all fields if we change only one.
Thanks, Johannes, for your work!
did you do this in null safety version ?
can you pleasemake a video on how to add and use excel in flutter .
Thanks again for the tutorial! I've noticed that after following your instructions, it works perfectly on iOS devices, but for some reason, on Android, the connection to the database is intermittently lost, when you leave the screen and return to it etc, such that even if you managed to store something in it, you can't see it. Is there any reason why this might be, on Android only (still working perfectly on iOS?
@@HeyFlutter You're welcome! Honestly, they are second to none. There was no error but I have actually managed to resolve it. Basically, I have tabbed sections on the app screen. Each section has its own sqflite table/database. What I had done was to have a separate database for each, each with its own table. I think that was the issue, when switching between tabs. Why might that be? Instead, what I have done is create a new database, with multiple tables. With just the one database, with tables for each tab, it seems to be working fine now :)
try putting the dispose method in a different file, i had this same issue so i solved it by moving it the the logout button of my app so the db connection was lost when logout was pressed.
Hi do you have tutorials flutter dart using sqlite for email login page? In which for login they read data from database
Hey 😊, @adilahusin! Check out this video: ruclips.net/video/-32HIsRf26o/видео.html I hope it may help you
Hye, im new to SQflite, Firebase database has console in their website, but where is the database for SQflite? I want to see the structure, table and so on.
Thank You Kucing Malaya! Follow this link: medium.com/flutter-community/using-sqlite-in-flutter-187c1a82e8b
I hope you will get your answer 🙂
when i open app just loading and when i select add save not work >>please correct me
Thank you so much for the great tutorial. i have a question, if i want to create a user registration form, how would i achieve it ?
Thank You ashish rana! Follow this link: ruclips.net/video/G-TQyWjkCME/видео.html&ab_channel=EasyCodingwithAmmara
I hope you will get your answer 🙂
@@HeyFlutter that’s so kind of you. Really appreciated.
Hi, Thanks for the video . I followed your whole tutorial and did some side projects, but am having problems with update function , it is not updating from my database , I check your github project and couldn`t solve the problem . am getting error null type Null isn't supported .
You had to delete my comment , you could have just said I can’t answer you sorry 😕