База данных SQLite в Андроид и Room на Kotlin (Android Studio)

Поделиться
HTML-код
  • Опубликовано: 30 ноя 2024

Комментарии • 121

  • @89Razin
    @89Razin 2 месяца назад +1

    В очередной раз сожалею, что только один лайк могу поставить! Настолько подробно и качественно объснен материал!!!

  • @appsforkids7808
    @appsforkids7808 Год назад +4

    багато я уроків передивився поки знайшов той який працює, гарно пояснюєте

  • @dmitry_ruden
    @dmitry_ruden 2 года назад +14

    Отлично! Спасибо за информативный урок. Пожалуйста, сделайте отдельный подробный курс по многопоточности с Coroutine. Было бы очень здорово!

  • @porvalrubahu
    @porvalrubahu 5 месяцев назад +1

    Супер-уроки. Каждый раз по новый для себя теме делаю ресерч в гугле и ютубе и на Вашем канале всегда самая объемная и доступная для понимания вкатуном информация.

  • @АлексейКолесников-р6п

    Каждый урок что то новое, Сергей - спасибо! После того, как посмотрел 45 ваших уроков, binding уже не глядя подключаю. Как подсказка начинающим - оставляйте комментарии в коде программы // по мере набора, что за код вы пишете, и что он делает. Это помогает лучше запоминать материал.

  • @TheDamiankain
    @TheDamiankain 2 года назад +3

    Реально лучший преподаватель на ютубе!!!

  • @seoonlyRU
    @seoonlyRU 2 года назад +2

    шикарно))) держите лукасик от гуру по БД и кодера СЕООНЛИ

  • @IbnSabilAbuAbdullah
    @IbnSabilAbuAbdullah 4 месяца назад +1

    Спасибо большое. вы один из лучших каналов по Андроду

  • @trismegistos1s
    @trismegistos1s 2 года назад +6

    Спасибо за уроки. Пожалуйста сделайте урок регистрация и авторизация по API :) Многим было бы полезно как и все ваши видео.

  • @4sn003
    @4sn003 2 года назад +1

    Недавно приобрёл проект «Список покупок», поверьте оно того стоит! Плюс обратная связь, помогает быстрее освоить написание кода и андроид программирование в целом! Хочу еще раз сказать огромное спасибо Сергею! В ближайшем будущем планирую приобрести проект «Доска объявлений»

  • @kostyachu
    @kostyachu Год назад +3

    Спасибо большое вам за ваши уроки, мне очень помогло! Мне подходит для понимания, как вы объясняете. Задумываюсь покупке курсов у вас. Спасбо!

    • @NecoRuChannel
      @NecoRuChannel  Год назад +1

      Большое спасибо! Я рад что вам нравиться!

  • @brigadir5830
    @brigadir5830 2 года назад +7

    Я очень ждал урок по room большое вам спасибо ♥️♥️♥️

  • @Ivan-fl9vq
    @Ivan-fl9vq Год назад

    Прохожу курс шопинг лист и немного возвращаюсь сюда что бы все понять и вспомнить! Отличные уроки, всем рекомендую купить платный курс ShopList

  • @Galyaminsky
    @Galyaminsky 2 года назад +3

    Спасибо! Платный Курс - вообще отличный. Советую

  • @ДимаИванов-ю9о
    @ДимаИванов-ю9о 2 года назад +4

    Здравствуйте, очень интересно было бы посмотреть, как создать приложение, которое использует sqlite и приложение работает в онлайн режиме

  • @OCEH6
    @OCEH6 2 года назад +2

    Большое спасибо! Отличного настроения!

  • @sergeydunaev8146
    @sergeydunaev8146 2 года назад +2

    супер материал! огромное человеческое спасибо!

  • @Андрей-у9р7з
    @Андрей-у9р7з 2 года назад +3

    Спасибо за урок, я как раз изучаю базы данных))

  • @NikNewNik
    @NikNewNik 10 месяцев назад +2

    Спасибо! Вроде всё работает :)

  • @Densoll
    @Densoll Год назад +2

    Спасибо, очень полезный и понятный урок!

  • @fakkesenpai
    @fakkesenpai 2 года назад +2

    Ого, рад что ты продолжаешь это делать)

  • @pavelgera72
    @pavelgera72 2 года назад +2

    БЛАГОДАРЮ ЗА УРОК

  • @sahibaliyev2445
    @sahibaliyev2445 2 года назад +3

    Спасибо за урок. О Retrofit не планируете снять урок?

  • @Richard-d3s
    @Richard-d3s 4 месяца назад

    Ти класний вчитель!!!

  • @PavelStr-x5w
    @PavelStr-x5w 9 месяцев назад

    Большое спасибо за информативный урок!!

  • @Kininijbsrk
    @Kininijbsrk 2 года назад +1

    Спасибо за видео и еще можно про MWI

  • @Qwerty-qz7gg
    @Qwerty-qz7gg Год назад +1

    Комментарий в поддержку!

  • @_chkMyStyle_
    @_chkMyStyle_ 4 месяца назад

    Супер курс! Спасибо! Скажите я двигаюсь по урокам на Вашем сайте, просмотрел все 35 уроков и вот теперь дошёл сюда. Я могу дальше продолжать двигаться по сайту? Или нужно посмотреть какие-то другие плейлисты уже на RUclips ? Хочется сохранить последовательность

  • @Polite_person_
    @Polite_person_ 2 года назад +2

    Я ждал этот урок, спасибо

  • @vitiyz803vitiyz
    @vitiyz803vitiyz Год назад

    Спасибо за труд. Очень понятно и полезно

  • @карнас
    @карнас 2 года назад +1

    Отличные уроки! Занимаюсь ремонтами и разработал для себя приложение за 2.5 месяца абсолютно с нуля. Динамичный прайс с категориями и сортировкой, ведение и просчет заказов согласно прайса, заметки, каталог материалов, контакты с метками, уведомления по заказам и т.д.. Сейчас планирую смотреть уроки по погодному приложению, так как буду писать под себя для морской рыбалки)) 👍

    • @ВЕЗЕР-г1л
      @ВЕЗЕР-г1л 2 года назад +3

      Чувак, я уже пол года учусь, но своего ещё ничего не написал, если у тебя такие успехи в программировании, то может нах этот ремонт и лучше пойдешь в разработку приложений???

    • @карнас
      @карнас 2 года назад +2

      @@ВЕЗЕР-г1л суть в том, что учиться нужно на том, что нужно тебе самому. На всякой фигне, аля (сделай свое первое приложение за 5 минут!) - ничего не выйдет.. Набросать проект, задаться целью и реализовывать смотря ютуб и читая доки

    • @thejekashoww
      @thejekashoww Год назад

      @@карнас спасибо большое, очень полезный совет! Теперь понимаю, почему нет мотивации, желания обучаться...поскольку нет своей (!) цели, сделать свою прогу для своих нужд!
      Благодарю🙏

    • @карнас
      @карнас Год назад +1

      @@thejekashoww , спасибо! Абсолютно верно, пошаговые уроки типа "сделай приложение за 15 уроков", нужны для понимания самих процессов. Если нет своей цели, все бестолково..

    • @thejekashoww
      @thejekashoww Год назад

      @@ВЕЗЕР-г1л Друг, ты через пол года получается не получил никаких практических навыков..?

  • @НиколайСон-ф6т
    @НиколайСон-ф6т Год назад +1

    Здравствуйте, подскажите можно ли использовать в место data class обычный class?

  • @АнастасияБелая-р5ь
    @АнастасияБелая-р5ь 8 месяцев назад +1

    Спасибо, всё понятно!)))

  • @N__C__R
    @N__C__R 2 года назад +4

    годно. как насчет гайда по созданию VPN приложения? с нынешними событиями это будет более чем актуально)

  • @stepanuchnnn4123
    @stepanuchnnn4123 2 года назад +1

    Great! I very wait relise movie about on any libralies!👍👍

  • @Kininijbsrk
    @Kininijbsrk 2 года назад +1

    Спасибо Сергей за видео, но есть вопрос почему ты не пользуешься клин архитектурой?

  • @Juliet-z8z
    @Juliet-z8z Год назад +1

    3 вопроса:
    1) Почему при указании id в дата классе мы не используем ColumnInfo вместе с PrimaryKey?
    2) Почему в дата классе используем var, а не val?
    3) Какой стек технологий у вашего приложения с платных уроков? (список покупок + блокнот)

    • @NecoRuChannel
      @NecoRuChannel  Год назад

      1 - ColumnInfo нужно только когда хотим чтоб название полей в БД и название переменных было разным. Например ты создаешь БД и используешь в андроид но в БД у тебя поле называется name а в Entity хочешь назвать переменную myName в таком случае будет ошибка, но это можно решить используя ColumnInfo. Если переменные в Entity и в БД не отличаются как в нашем случае то ColumnInfo не обязательно.
      2 - в дата классе лучше использовать Val по возможности а изменять значения с помощью copy
      3 - Используем Room persistence library, AdMob (3 вида разных реклам), паттерн МVVM, Billing library (встроенные покупки). Курс предназначен для более глубокого изучения Room (БД SQLite) на практике.

  • @sportfun9713
    @sportfun9713 2 года назад +1

    Супер урок, большое спасибо

  • @NarekAslikyan
    @NarekAslikyan Год назад +1

    а что делать если инспектор дата базу не показывает. Не запускается

  • @Дубровский-ч4с
    @Дубровский-ч4с 11 месяцев назад +1

    Ну наконец то знакомый SQL

  • @fstore2313
    @fstore2313 Год назад +1

    Добрый день, у меня при создание binding, не показывает binding=ActivityMainBanding? Почему так?

    • @NecoRuChannel
      @NecoRuChannel  Год назад

      В новой версии АС пишем viewBinding = true в файле build.gradle раньше было без равно

  • @Nik_Gol_V
    @Nik_Gol_V 2 года назад +1

    Спасибо огромное за урок

  • @TundraEZ0
    @TundraEZ0 Год назад

    Привет
    А можешь записать видос как делать красивые заметки?

  • @МагестЛоил
    @МагестЛоил 4 месяца назад +1

    23:20 у меня запрос весь зеленый и без подсказок. и я не знаю из за чего так.

  • @LokiDmytro
    @LokiDmytro Год назад +1

    Спасибо за ваши уроки :)
    Подскажите, а как мне вытащить в отдельную переменную данные с Room.
    Например я хочу вывести в отдельную переменную цену товара и в отдельную - его название
    Спасибо :)

    • @NecoRuChannel
      @NecoRuChannel  Год назад

      Привет, Entitie из Room это дата класс в котором уже есть переменные по это у из этого дата класса просто передаешь в нужную тебе переменную только в Dao пропиши функцию которая возвращает один элемент или бери нужный из полученного списка

    • @LokiDmytro
      @LokiDmytro Год назад

      @@NecoRuChannel
      Спасибо,
      Это я понял
      А можно подробнее с примером ;)

  • @edilm2008
    @edilm2008 8 месяцев назад +1

    а что если при создании нового проекта не выходит вообще room. версия студио - iguana. Как быть?

    • @NecoRuChannel
      @NecoRuChannel  8 месяцев назад +1

      Там просто пиши как раньше, не обращай внимание что остальные зависимости по другому. Я сейчас записываю урок об этом. Чуть позже уже загружу

  • @luide2167
    @luide2167 7 месяцев назад +1

    Выдало ошибку вот такую. Как устанавливать версии в Игуане я понял. И всё равно как пытаюсь изучить ROOM всегда какаета ошибка которую я пока не могу сам решить.
    Caused by: org.gradle.api.internal.artifacts.ivyservice.DefaultLenientConfiguration$ArtifactResolveException: Could not resolve all files for configuration ':app:debugCompileClasspath'.

    • @luide2167
      @luide2167 7 месяцев назад +1

      Надо было сделать RebuildProject

  • @Boro030771
    @Boro030771 Год назад +1

    Как использовать в качестве имени таблицы переменную?

    • @NecoRuChannel
      @NecoRuChannel  Год назад

      Нельзя использовать переменную, для этого, таблица будет создана и нельзя ее изменить, можно только делая миграцию

  • @Бардзо
    @Бардзо 2 года назад

    Добрый день,А когда новые видео?

  • @INVENToRGAmer
    @INVENToRGAmer 2 года назад +2

    Спасибо за видео

  • @alexandralban5682
    @alexandralban5682 2 года назад

    Отличный урок! Спасибо! У меня вопрос по сохранению списка в базу. Подскажите пожалуйста, тут лучше как бы распарсивать приходящий список и записывать по очереди, или лучше использовать конвертер? или я ерунду спрашиваю... ) Смысл - у меня список настроек которые я в базу хочу сохранять и перезаписывать периодический по воле пользователя.

  • @АнастасияЛиндеман

    Здравствуйте, скажите пожалуйста, а можно добавить уже готовую бд в приложение на языке Котлин

    • @NecoRuChannel
      @NecoRuChannel  Год назад

      Да, конечно

    • @АнастасияЛиндеман
      @АнастасияЛиндеман Год назад

      не подскажите как это сделать? Спасибо@@NecoRuChannel

    • @NecoRuChannel
      @NecoRuChannel  Год назад

      @@АнастасияЛиндеман при создании БД прежде чем build() запускать есть функция createFromAssets в папку assets нужно добавить БД которую хочешь загрузить и чтоб таблицы и переменные все совпадали иначе работать не будет.

  • @IbnSabilAbuAbdullah
    @IbnSabilAbuAbdullah 4 месяца назад +1

    Эх, жаль, что как вишенка на торте не показали как очищать эти данные )) Но и без этого все четко

  • @cocojabaa
    @cocojabaa 8 месяцев назад

    После подключения зависимостей выдает ошибку "jlink executable C:\Program Files\Java\jre1.8.0_341\bin\jlink.exe does not exist". Не знаю как исправить

  • @MrBestKenny
    @MrBestKenny 10 месяцев назад

    В дата классах Entity все поля должны быть var?

  • @Kinogoboom
    @Kinogoboom 2 года назад

    Канал просто 🔥 так держать. Очень много полезного и интересного. Можете пожалуйста сделать видео как создать приложение с фильмами либо обоями на телефон? Спасибо

  • @meiram1223
    @meiram1223 2 года назад +1

    спасибо за труд

  • @Mecenatt
    @Mecenatt 10 месяцев назад

    Подскажите пожалуста , где на эмуляторе храниться файл базы данных

  • @pavelgera72
    @pavelgera72 2 года назад +1

    почему getAllItem не suspend функция( не запускается во второстепенном потоке)?

    • @NecoRuChannel
      @NecoRuChannel  2 года назад

      потому что мы не используем корутины

  • @Muhomor2003
    @Muhomor2003 Год назад +1

    Здравствуйте, в самом начале при добавлении плагина id ‘kotlin-kapt’ и библиотеки kapt ‘androidx.room:room-compiler:2.5.1’ синхронизация проходит без ошибок. Но при запуске виртуального устройства всегда выходит ошибка:
    “Задача compileDebugJavaWithJavac (текущая цель - 1.8) и задача kaptGenerateStubsDebugKotlin (текущая цель - 17). Целевая совместимость jvm должна быть установлена на одну и ту же версию Java.”
    Подскажите пожалуйста, как решить этот вопрос с совместимостью?

    • @NecoRuChannel
      @NecoRuChannel  Год назад

      в build.gradle (Module) выбери:
      compileOptions {
      sourceCompatibility JavaVersion.VERSION_17
      targetCompatibility JavaVersion.VERSION_17
      }
      kotlinOptions {
      jvmTarget = '17'
      }
      должно помочь

    • @Muhomor2003
      @Muhomor2003 Год назад +1

      @@NecoRuChannel Спасибо от всей души, помогло!

    • @NecoRuChannel
      @NecoRuChannel  Год назад

      @@Muhomor2003 Я рад что помогло!

  • @wowus94
    @wowus94 2 года назад +1

    Спасибо!

  • @alexpro2493
    @alexpro2493 Год назад

    Создал по вашему видео recycler view и создал базу данных. В моем приложении rc view находится во фрагменте и у меня никак не получается выводить данные из sqlite в rcView. Что только не пробовал но не могу найти туториал как это делать. Может кто нибудь знает конкретно что нужно делать?😢 два дня голову ломаю

  • @СергейСмирнов-ь8у
    @СергейСмирнов-ь8у 2 года назад

    Спасибо автору канала !
    Кто сталкивался с такой проблемой, помогите решить.
    Plugin [id: 'com.android.application', version: '7.3.0', apply: false] was not found in any of the following sources:
    Плагин Android Gradle не найден ни в одном из следующих источников

  • @Илья-б1я3ш
    @Илья-б1я3ш 2 года назад +2

    спасибо!)

  • @БобешкоТиміш
    @БобешкоТиміш 2 года назад

    А можно ли профессионально разрабатывать приложение на телефоне для андроид?

  • @TheDamiankain
    @TheDamiankain 2 года назад

    Если я делаю на фрагментах, то где мне вставить строку val db = NoteDatabase.getDatabase(this)? Мой this подчеркивает красным. У меня 2 фрагмента HomeFragment и AddNoteFragment. Первый для отображения списка, через ресайклер вью, второй для создания/ редактирования заметки.

    • @TheDamiankain
      @TheDamiankain 2 года назад

      Разобрался. Похоже надо было писать val db = NoteDatabase.getDatabase(view.context) вместо val db = NoteDatabase.getDatabase(this) при использовании фрагментов

  • @ddd6355
    @ddd6355 5 месяцев назад +1

    Я вообще не понимаю, как оно может так работать с базой данных, ведь для работы с базами данных нужен удаленный хост и само подключение, но в этом случае куда сохраняются все данные? И почему даже не требует разрешения на доступ в интернет в манифесте

    • @NecoRuChannel
      @NecoRuChannel  5 месяцев назад +1

      Потому что это локальная БД на смартфоне

    • @ddd6355
      @ddd6355 5 месяцев назад +1

      ​@@NecoRuChannel хм, ну а допустим, если с помощью неё писать авторизацию в большом проекте, и на одном телефоне человек зарегистрировался под данными, например, login и password123, то сможет ли он под такими данными войти с другого устройства? Или если это локальная БД, то только на своём?

    • @NecoRuChannel
      @NecoRuChannel  5 месяцев назад +1

      @@ddd6355 Локальная это как например твой дом 🏠. Твой дом это твой телефон, а в доме есть хранилище, и только ты можешь им пользоваться, у соседа свое хранилище. А вот БД на сервере это как общественна библиотека куда может придти кто угодно

  • @Дубровский-ч4с
    @Дубровский-ч4с 11 месяцев назад +1

    Ошибок навыдавал. Еще в граблях не подключил дату. такого нет. И Flow покрасил красным.

    • @NecoRuChannel
      @NecoRuChannel  11 месяцев назад

      Смотри чтоб Flow был из пакета coroutine

  • @Дубровский-ч4с
    @Дубровский-ч4с 11 месяцев назад

    Жаль дб не сработало. Но что делать.

  • @ИгорьФруткин
    @ИгорьФруткин Год назад

    Спасибо) круто

  • @stepanuchnnn4123
    @stepanuchnnn4123 2 года назад +1

    👍👍👍

  • @АндрейГанюшкин-ф7е

    круто )

  • @mikewazowski255
    @mikewazowski255 2 года назад +1

    👍

  • @monkey_businessss
    @monkey_businessss Год назад

    Господа, если у кого-то выдавалась ошибка апп.*чететам связанное с датабайндинг дебаг*, то вот вам МОЁ решение. В активити у меня помимо основного констрейнлайаут был еще дополнительный (отвечал за визуал серой полосочки слева экрана), на котором находились тектовые плашки. Проблема была, блять, в этих самых плашечках. Рекомендую заместо удаления проекта к хуям просто очень хорошо проверить xml файлы активити.

  • @rinatislamov8977
    @rinatislamov8977 Год назад +1

    Мне нравится видео, лёгкая информация для восприятия на русском языке

  • @Kai41k
    @Kai41k 2 года назад +3

    Здравствуйте Сергей!
    Я поражён вашим испанским языком, на вашем втором канале. Почему бы вам не поделится своими знаниями по Испанскому языку, и не обучать ему нас?

    • @NecoRuChannel
      @NecoRuChannel  2 года назад +1

      Какие там знания, у меня акцент ужасный))

    • @Kai41k
      @Kai41k 2 года назад +2

      @@NecoRuChannel Ну всё равно, если бы сделали курс по испанскому, то было бы хорошо его изучить)

    • @Kai41k
      @Kai41k 2 года назад +3

      @@NecoRuChannel В любом случае, если у вас закончатся курсы, и идеи для новых видео, то вы обязательно вспомните и подумаете об этом 😉

    • @NecoRuChannel
      @NecoRuChannel  2 года назад +1

      @@Kai41k Обязатльно!😉

    • @discord4364
      @discord4364 2 года назад +7

      @@NecoRuChannel Я вообще думал, что Сергей испанец с хорошим русским 😁

  • @aftereffects-7483
    @aftereffects-7483 2 года назад

    спасибо за урок,что то у меня - db.getDao().insertItem(item) - insertItem(красным,и как ставишь точку после db - то не ищет...)

    • @sports_and_humor
      @sports_and_humor Год назад +1

      Значит Dao не подключена, в базе данных MainDb перепиши
      abstract fun getDao(): com.example.*название поекта*.Dao
      или просто сотри и Dao и начни писать заново, он подскажет

    • @aftereffects-7483
      @aftereffects-7483 Год назад

      @@sports_and_humor спасибо

  • @IrinaLyubodeeva
    @IrinaLyubodeeva Год назад +1

    Спасибо😁

  • @Евгений-ч3и2ы
    @Евгений-ч3и2ы Год назад

    Спасибо!!!