SQLite Database for Android - Full Course

แชร์
ฝัง
  • เผยแพร่เมื่อ 29 ส.ค. 2024
  • Learn how to use an SQLite database in Android Studio.
    This tutorial shows every step of programming a demo Android application that uses an SQLlite local database. You will learn how to create an SQLite local database on the Android device, configure new tables with the onCreate method, setup the columns and data types, extend the SQLiteHelper class, create CRUD methods in a DAO (Data Access Object) class, display results on a listview, and more.
    ✏️ Course developed by Shad Sluiter. Check out his TH-cam channel: / shadsluiter
    --
    Learn to code for free and get a developer job: www.freecodeca...
    Read hundreds of articles on programming: freecodecamp.o...

ความคิดเห็น • 216

  • @brunoribeiro3376
    @brunoribeiro3376 3 ปีที่แล้ว +211

    8:38 - Layout
    18:20 - Data Model
    22:02 - Button Click Listeners
    32:07 - SQLite Open Helper Class
    40:58 - Create New Tables with onCreate Method
    58:25 - SELECT * FROM table
    1:12:00 - Set Data In a ListView
    1:19:37 - Delete a Record

  • @burakcanduzcan
    @burakcanduzcan 3 ปีที่แล้ว +52

    44:20 "Refactor -> Extract" is now called "Refactor -> Introduce Constant"

  • @noahbastola9386
    @noahbastola9386 3 ปีที่แล้ว +94

    I'm not usually one to comment on videos, but this is by far the best coding teacher I've ever seen on youtube. What I like most is that he shows you how to use the documentation as a guide for development, because no one has an encyclopedic knowledge base of code.

    • @rxtechandtrading
      @rxtechandtrading 2 ปีที่แล้ว

      Yeah, hes beter than most of the cluster f@$%s out there...BUT. as good as he is, what pisses me off about his tutorials is when he forgets to go into some essential details about the documentation and how different sections of it apply to different SDK versions or API levels

    • @mohamedmire8646
      @mohamedmire8646 ปีที่แล้ว

      because this is a university preffossor, not just a freelancer TH-camrs.
      He's trainined prof.

    • @Kirmeins
      @Kirmeins ปีที่แล้ว

      @@mohamedmire8646 From my experience, a "trained proffessor" is rarely equal to a trained teacher in their pedagogical approach. In fact, most professors have no training at all in pedagogics and tend to just monotonously read some high level facts off of their screen without explaining the base concepts. Sometimes they don't even make and update their slides themselves. And university students are usually expected to learn those basic things in their own time or in tutoriums led by older students.
      So in other words: this guy is better than most not just on YT because he has both the talent and the wish to teach. :)

  • @VikSintus
    @VikSintus 3 ปีที่แล้ว +11

    so many clever people on this planet, but not so many be able to share or deliver their knowledge to others like this one, thank you, sir

  • @ronanlarkin
    @ronanlarkin 2 ปีที่แล้ว +4

    Normally I spend my time rifling through 10 minute videos but this was well worth taking the time to sit down and watch in full.
    Thanks so much! Very helpful!

  • @brandonmchugh9821
    @brandonmchugh9821 2 ปีที่แล้ว +4

    This is amazing. I've been trying to figure out SQL databases but all other tutorials have been lackluster and confusing. This is the first one that has made sense. Thank you!!!

  • @jothamithagu7403
    @jothamithagu7403 10 หลายเดือนก่อน

    I've just completed my 19min and all works perfect.
    I'll watch & follow along this vid repeatedly for 3 times and believe you me, I'll build my first Booking app from this course.
    Lots of appreciation from Kenya...
    You are a great tutor...👏👏👏👏👏👏👏👏👏

  • @fwogg3r158
    @fwogg3r158 2 หลายเดือนก่อน

    Went from nothing to everything in an incredibly comprehensive and cohesive manner. Incredible lecture even today; Thank you!

  • @poogaia
    @poogaia ปีที่แล้ว +1

    This is the best Android Studio Java tutorial I've seen yet. I'm halfway through developing my first app and I've just learned so much. Boom

  • @ajieewin2398
    @ajieewin2398 2 ปีที่แล้ว +22

    9:06 Part I - Layout
    18:59 Part II - Data Model
    22:35 Part III - Button Click Listeners
    32:36 Part IV - SQLite Open Helper Class
    41:27 Part V - Create New Tables with the OnCreate Method
    58:54 Part VI - Pull Data from Database (Select * From Table)
    1:12:31 Part VII - Set Data in a ListView
    1:20:07 Part VIII - Delete a Record
    1:26:46 Challenge

  • @DagothDaddy
    @DagothDaddy 3 ปีที่แล้ว +10

    I took his class when I attended GCU. He was great.

  • @attaullahshah6611
    @attaullahshah6611 2 ปีที่แล้ว +5

    Hello, feeling lucky to found you. You are teaching so professionally like nothing is vague and the concept is also building. Please keep it up :)

  • @colt45jr
    @colt45jr 4 หลายเดือนก่อน

    Came here to learn about SQLite, and learned about a lot of cool features for refactoring and debugging in Android Studio. Great teacher and great video!

  • @tomm-_-16
    @tomm-_-16 3 ปีที่แล้ว +37

    If you are reading this God bless you and have a wonderful day and stay safe ❤️🥰

    • @DevsLikeUs
      @DevsLikeUs 3 ปีที่แล้ว +1

      Thank You 😊

    • @danielflorez3762
      @danielflorez3762 3 ปีที่แล้ว

      im not going to give you like but thanks :)

    • @alibindrayton5211
      @alibindrayton5211 ปีที่แล้ว +1

      Thank you ba HA SHAM AHAYAH same to you ba HA SHAM YASHAYAH

    • @NHKCarimi
      @NHKCarimi 3 หลายเดือนก่อน

      Same applies to You dear, the feelings are mutual, Jumma Mubarak ❤

  • @josejayant3127
    @josejayant3127 3 ปีที่แล้ว +9

    9:08 Layout
    18:51 Data Model
    22:34 Button Click Listeners
    32:37 SQLite Open Helper Class
    41:28 Create New Tables with onCreate Method
    58:44 SELECT * FROM table
    @ - Set Data In a ListView
    @ - Delete a Record

  • @albanmarku6743
    @albanmarku6743 2 ปีที่แล้ว +4

    Very good video. Really like how you talk through your thought process when using classes that require inputs and making it clear what the current goal is.

  • @okrimtech
    @okrimtech ปีที่แล้ว +2

    Amazing tutorial as always. Your materials helped me tremendously with several of my university classes. Thank you a thousand times!

  • @MrStickmanish
    @MrStickmanish 2 ปีที่แล้ว +4

    Great teacher and tutorial! One of the very few that don't rush things and show you exactly where you are in the code and why you are doing something. I actually laughed with voice on the context (this) part xD Even "funny" videos only make me blow air out of my nose but this was good! Thank you!

  • @user-sr4gg2rk9i
    @user-sr4gg2rk9i 2 ปีที่แล้ว +1

    Wonderful. Best teacher I've ever seen on TH-cam.

  • @dimitrigeorgoudakis3676
    @dimitrigeorgoudakis3676 2 ปีที่แล้ว +1

    Hey guys, first of all I would like to say that it was a very intuitive video. Thank you. Secondly, I did everything according to the video but the app crashed (probably when entering data into the database) Did anyone else experience this ?

    • @maryannadelman4438
      @maryannadelman4438 2 ปีที่แล้ว

      I did everything also. All was working until I got to the point of changing the View All button to show the list instead of the Toast msg. And as a newbie, trying to figure out what went wrong is very difficult.

    • @dimitrigeorgoudakis3676
      @dimitrigeorgoudakis3676 2 ปีที่แล้ว

      @@maryannadelman4438 Hey Mary, so, my problem was at the point where we insert the SQL statement into the code . I had left out a comma or something and expected the debugger to pick up on it but it wasn't so it was just crashing .Either than that it worked fine for me. Try to check and compare your code line by line to the original code.

    • @mirsadhadzic5076
      @mirsadhadzic5076 2 ปีที่แล้ว

      similar problem, had to make spaces inside commas when creating new table

  • @aivkhairulamirin9004
    @aivkhairulamirin9004 11 หลายเดือนก่อน

    Thank you. This tutorial is worth our time. It provides the basic of SQLite with easy-to-follow instructions.

  • @KASalgado
    @KASalgado 3 ปีที่แล้ว +4

    Excellent tutorial. It has a very good focus in Code Standards like no other videos. Good job. Thanks.

  • @theguyf8316
    @theguyf8316 ปีที่แล้ว

    If you experience the db is not in the same path, you can use this code to get the right path to the db in the console.
    String dbPath = getDatabasePath("bar_rater.db").getAbsolutePath();
    System.out.println(dbPath); . Great video thx!

  • @cryptonews-q-h4
    @cryptonews-q-h4 2 ปีที่แล้ว

    One of the best video on TH-cam for android sqlite database..

  • @dibyajyotiparida7316
    @dibyajyotiparida7316 3 ปีที่แล้ว +16

    It would be very helpful if someone adds the timestamp🙂

  • @rahulraj94391
    @rahulraj94391 ปีที่แล้ว +1

    26:54
    You have used tools:text = "View All" (This will show the text only in Design window)
    You have to use android:text = "View All" (This will show "View All" at runtime)

  • @oniii-chan_
    @oniii-chan_ 3 ปีที่แล้ว +3

    WOw! today only I was told in class that we would start sqlite(in python) tomorrow and this appeared I hope this would be helpful for it 🤞🤞

  • @siomarapantarotto
    @siomarapantarotto ปีที่แล้ว +1

    What a great teacher. I loved this tutorial ❤ Thanks a lot, Professor Sluiter!

  • @wkalou
    @wkalou 2 ปีที่แล้ว

    Exclusive video that helped to understand where other videos failed
    Good job
    GOD bless

  • @taniamartinezvillagomez6448
    @taniamartinezvillagomez6448 2 ปีที่แล้ว +1

    Thank you very much, your teaching skills are amazing. This is one of the best android tutorials I have ever seen.

  • @Tim-chik
    @Tim-chik 3 ปีที่แล้ว +2

    You are a great person. I needed it and I found it! So thankful for your job!!!

  • @alwa6648
    @alwa6648 2 ปีที่แล้ว +1

    Thank you for all the quality content you produce. You probably contributed more than my teachers toward obtaining my degree.

  • @snoop3800
    @snoop3800 4 หลายเดือนก่อน

    Thanks awesome tutorial, the good thing that you are showing how to use documentation added to that the clear explication

  • @akunformalitas
    @akunformalitas 2 ปีที่แล้ว

    As a desktop programmer this video helps me so much to switch to android apps.

  • @amirchaka1407
    @amirchaka1407 3 ปีที่แล้ว +2

    thanks very much sir please can u show us how to remove CustomerModel from list view and share search and add image as well

  • @YuGan-lm4ce
    @YuGan-lm4ce ปีที่แล้ว

    I am so glad that I found this video, the best teacher I found so far!

  • @bashconsole
    @bashconsole 3 ปีที่แล้ว

    That felling when you watch this video with a cup of coffee having 23+ years of software development experience and understanding what is SQLite. Relaxed.

  • @jesusribeiro9447
    @jesusribeiro9447 3 ปีที่แล้ว +1

    Commenting so I can get back to it tomorrow. ( 58:47 ) Awesome tutorial so far!

  • @thejustinfernald
    @thejustinfernald 3 ปีที่แล้ว +1

    Big fan of Professor Sluiter.

  • @parvizjonhojiev5528
    @parvizjonhojiev5528 3 ปีที่แล้ว +2

    android studio has it's own database inspector

  • @xvzf115
    @xvzf115 3 ปีที่แล้ว +5

    Really nice tutorial format. Thank you, very clear explanations!

  • @tamaspej1378
    @tamaspej1378 7 หลายเดือนก่อน

    I think the hardest part for a newbie is the first adding. The app was crashing and i didnt get anything on the terminal. I was thinking about the emulator and the switch component is obsolate etc. I know it part of the journey but the code what he writes at 29:00 is here.
    CustomerModel customerModel = new CustomerModel(-1,et_name.getText().toString(),Integer.parseInt(et_age.getText().toString()),sw_activeCustomer.isChecked());
    U guys all doing a nice job here.

  • @poisonshroom64
    @poisonshroom64 ปีที่แล้ว

    better and more straighforward than my uni teacher, thanks a bunch

  • @sportscity5487
    @sportscity5487 2 ปีที่แล้ว

    One of the best formal way to do this task.
    Thank you..

  • @elohimalves
    @elohimalves 3 ปีที่แล้ว +1

    You explain everything you are doing, Excellent Professor!

  • @deepakpitaliya8932
    @deepakpitaliya8932 11 หลายเดือนก่อน

    Thank you Prof. Sluiter for this excellent tutorial.

  • @rensonplacino2737
    @rensonplacino2737 3 ปีที่แล้ว +3

    My deleteOne function has a problem it keeps crashing whenever I attempt to delete something in my database though I follow all your instructions

  • @eddyjaga8899
    @eddyjaga8899 3 ปีที่แล้ว +1

    Thank you for your time. It's great and understandable content. Much better than my lecturer 👩‍🏫 👨‍🏫 🧑‍🏫

  • @andrefiord2357
    @andrefiord2357 ปีที่แล้ว

    Excellent tutorial. A bit incomplete w/o search and update but still extremely informative. Thank you!

  • @williamselinder9138
    @williamselinder9138 2 ปีที่แล้ว

    What a great teacher! All understood, all worked well! Fantastic!!!

  • @h.r.60
    @h.r.60 3 ปีที่แล้ว +3

    Keep up the amazing work my friend!

  • @crimsonblue1455
    @crimsonblue1455 2 ปีที่แล้ว

    this guy is good at teaching people. very nice 🤗🤗

  • @tabassummansuri7998
    @tabassummansuri7998 3 ปีที่แล้ว +1

    Sir can u make one video on payroll management system with database connectivity. your concent are really amazing.I want to learn more...

  • @lioneldynasty
    @lioneldynasty ปีที่แล้ว

    This tutorial is amazing andget he's really good at teaching

  • @hhh48222
    @hhh48222 2 ปีที่แล้ว +2

    Mind blowing tutorial

  • @minhphucnguyen3148
    @minhphucnguyen3148 ปีที่แล้ว +1

    48:50 getWritable()
    51:25 insert
    1:00:54 select *

  • @anathemafps5323
    @anathemafps5323 ปีที่แล้ว

    best tutorial ever

  • @rapyd5134
    @rapyd5134 3 ปีที่แล้ว

    thanks Sir at 16:14 for buttons you could use "Chaining"

  • @lxdzii
    @lxdzii 9 หลายเดือนก่อน

    Wow, this was a beautiful one!

  • @kojofosuedue3686
    @kojofosuedue3686 3 ปีที่แล้ว +1

    Very detailed...i loved every bit of it. Thanks guys

  • @hereistyagi
    @hereistyagi ปีที่แล้ว

    love the way you teach sir #BestTeacherHaveEverSeen

  • @Simomajola1
    @Simomajola1 3 ปีที่แล้ว +1

    Best Tutorial Ever !!!!!!!!!!!!!!!!!!!!!!!!!!

  • @marcusgarner1146
    @marcusgarner1146 ปีที่แล้ว

    Great video, thank you! Can you make a video where you show how to implement the search function for the database in the app? :)

  • @kimsing1796
    @kimsing1796 3 ปีที่แล้ว +1

    I just binge watch freecodecamp, but I learn a lot.

  • @vros14
    @vros14 ปีที่แล้ว

    At 1:06:18, the professor uses a ternary operator, I would assume to demonstrate the syntax which may be unfamiliar to some people. To add a little bit of clarity on how Java types work, the == operator already returns a boolean value, so x == 1 already returns true or false, no ternary operator needed. While I'm sure the professor is aware, I'd just like to point it out for the people who are still learning Java.

    • @charleslyell3748
      @charleslyell3748 2 หลายเดือนก่อน

      True, ternary operator is not necessary here.

  • @returnMarcco
    @returnMarcco ปีที่แล้ว

    Thanks very much, awesome tutorial

  • @maryannadelman4438
    @maryannadelman4438 2 ปีที่แล้ว +1

    Great teaching style. I'm a newbie and so far this has helped tremendously. However, I've followed everything exactly and it was working just fine until I got to the last section about changing the View All button to show the list instead of the Toast msg. "ArrayAdapter" is yellowed out and now the app crashes when clicking "view all". Any idea why this would be the case? I'm running Bumblebee version.

  • @patriciarodrigues598
    @patriciarodrigues598 3 ปีที่แล้ว +1

    Great ! Thanks from Brazil!

  • @floresjose
    @floresjose ปีที่แล้ว

    now I understand a lot of fundamental things, thanks a lot, by the way: You rock!

  • @Kunal-jp8tn
    @Kunal-jp8tn 2 ปีที่แล้ว +1

    Thank you so much for providing such cool valuable content.

  • @sleave_exe
    @sleave_exe 8 หลายเดือนก่อน

    thank you man it was really good

  • @lowblowjimboy
    @lowblowjimboy 2 ปีที่แล้ว

    TOP CLASS TEACHER!!! Thank you Sir!

  • @mehdihachimi9624
    @mehdihachimi9624 2 ปีที่แล้ว +1

    Awesome tutorial, thank you so much for this!

  • @ashishthaakur45
    @ashishthaakur45 3 ปีที่แล้ว +2

    Love you freecodecamp

  • @bishnubhusal5999
    @bishnubhusal5999 ปีที่แล้ว

    Best explanation ever.

  • @Gerrit2686
    @Gerrit2686 2 ปีที่แล้ว +1

    Danke!

  • @jajanaglobo
    @jajanaglobo 3 ปีที่แล้ว +3

    PLEASE...
    even if I do not fill anything, it send the data, how can I do not accept if the fields are empty?
    I'm Brazilian, sorry for any mistake.

  • @solomonjara9725
    @solomonjara9725 3 ปีที่แล้ว

    it is very important tutorial i appreciate u

  • @madonnalamin
    @madonnalamin หลายเดือนก่อน

    Thank You

  • @mohamadmaleki3026
    @mohamadmaleki3026 9 หลายเดือนก่อน

    Thanks a lot Mr. Sluiter for this very usefull video. Is the code of the program available to download?

  • @objectobj
    @objectobj ปีที่แล้ว

    not bad. it was getting worse by the end. on 1:23:46 you say, "View view is the ListView", which is not correct, but then later you say that "parent" is ListView
    so *View view* is the exact item that we click, and *AdapterView parent* is ListView
    the way you implemented it so ID is incremented every time you click "add" wasn't shown too, which makes no sense for the last part

    • @charleslyell3748
      @charleslyell3748 2 หลายเดือนก่อน

      CUSTOMER_TABLE + " (" + COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT.

  • @benukapunchihewa4125
    @benukapunchihewa4125 2 ปีที่แล้ว

    Thank you very much. Great Video. Looking forward to watch awesome content like this.

  • @LACOLOMBEService
    @LACOLOMBEService หลายเดือนก่อน

    this is a great tuto but there is a little mistake. Maybe due to video recorder.

  • @qpdbwvwdbqp4730
    @qpdbwvwdbqp4730 2 ปีที่แล้ว

    Amazing! It was very useful! Thank you so much!

  • @vancheloChanel
    @vancheloChanel 3 ปีที่แล้ว +1

    Very helpful! Thank you

  • @ahmedlshubaky7336
    @ahmedlshubaky7336 2 ปีที่แล้ว

    amazing , but i think ViewList btn feature is useless after enhance the code at the end :)

  • @zekeriemand6336
    @zekeriemand6336 3 ปีที่แล้ว

    Thank you very much for this video. It helped me a lot.

  • @alisasasasaa
    @alisasasasaa 2 ปีที่แล้ว

    Where can I find the video about Room that he is talking about at the end ?

  • @hoseinhoseiny8200
    @hoseinhoseiny8200 2 ปีที่แล้ว +1

    hi thanks due to your excellent video , but in btn_viewAll.setOnClickListener ((v) → { how to write forward Arrow symbol ?

  • @bryanminton1397
    @bryanminton1397 ปีที่แล้ว

    Thanks!

  • @mubaraknative
    @mubaraknative ปีที่แล้ว

    26:44 he add the button text name in tools atttribute of xml it is onlty visible in the xml layout not in application

  • @user-hu7ne5ut5g
    @user-hu7ne5ut5g 2 ปีที่แล้ว

    Thanks a lot!
    It worked amazing

  • @jothamithagu7403
    @jothamithagu7403 10 หลายเดือนก่อน

    I have a quick question;
    Is it a must to install XAMPP for AndroidStudio to be complete?

  • @utkarshrastogi8791
    @utkarshrastogi8791 3 ปีที่แล้ว +2

    Thank you sir, this will be of great help to me.

  • @neerajahlawat7393
    @neerajahlawat7393 2 ปีที่แล้ว

    Nice explanation

  • @Marc1920x1080p
    @Marc1920x1080p 2 ปีที่แล้ว

    Thank you so much for this great video. Really told me alot of new stuff :-)

  • @scopez3853
    @scopez3853 ปีที่แล้ว

    I don’t even listen to Nice tutorialm im just reading the comnts lmao

  • @_mantis
    @_mantis 3 ปีที่แล้ว +1

    Lol I thought his head was cut off. Great tutorial though. Cheers!

  • @aislinggallagher7841
    @aislinggallagher7841 3 ปีที่แล้ว

    Very new to android apps and databases, my question is, if I follow what you have done in the above video, and leave out the delete function, can anyone update, add to the same database or is that strictly when you add to db, it only goes to your phone? If I wanted to do a 'universal' db that anyone can add to it, what do I do? Thank you, and also, great video, easy to follow.