База данных SQLite в Python. Выборка, связь таблиц #2 | Базовый курс. Программирование на Python

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

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

  • @_test_test
    @_test_test 3 года назад +10

    госпаде, это один из лучших каналов с туторами. просто теку с твоей подачи

    • @SweetCoder
      @SweetCoder  3 года назад +6

      спасибо за отзыв. держи себя в руках

  • @АртемПотапов-т7я
    @АртемПотапов-т7я 3 года назад +15

    За даты отдельная благодарность!

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

      на здоровье

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

      Да, это находка, не нужно городить непонятно чего.

  • @yarko6734
    @yarko6734 2 года назад +5

    Это пушка! Водном видео и бест проктик и работа через конетекст и джоин ! За дату вообще просто поклон! Я всю голову сломал как эти строки потом анализировать, а у вас реально более быстрый подход описан!

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

    Это отличное видео, лучшее из того что я нашёл на тему. Пришлось много ставить на паузу что бы хорошо проработать материал, но это норма.

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

    Годнота! Сжато, без воды!

  • @Gigantovod
    @Gigantovod 3 года назад +3

    Лайк поставил, колокольчик нажал... Ждём ещё ролики!

  • @lite_go_9565
    @lite_go_9565 2 года назад +20

    Тот момент когда полтора часа смотришь 7 минутное видео, потому что каждую строчку переписываешь, изменяешь и изучаешь чтои для чего

    • @uglyhurd4959
      @uglyhurd4959 11 месяцев назад +1

      как успехи?

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

    Спасибо, дружище, за ещё одно бодрое виде! Устал на работе, лень учить новое? Sweet Coder мотивирует)

  • @ЭльмарГаджиев-д9ж
    @ЭльмарГаджиев-д9ж 4 года назад +1

    Спасибо за урок

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

    Спасибо, крутой канал! Лайк и подписка!

    • @SweetCoder
      @SweetCoder  3 года назад

      спасибо за отзыв

  • @egorkolobov2392
    @egorkolobov2392 3 года назад +6

    Крутое видео! Однако лучше не ускорять видео так сильно. Иногда просто не успеваешь отследить изменения кода и увидеть, что написали.

    • @SweetCoder
      @SweetCoder  3 года назад +3

      для того чтобы хорошенько всё рассмотреть можно поставить видео на паузу. а вот если для кого-то из зрителей материал будет казаться слишком медленным и затянутым - то ускорить его сложнее

    • @ЭльдарОсманов-ц8щ
      @ЭльдарОсманов-ц8щ 2 года назад

      Я в х2 смотрел))

  • @БектурЧукин
    @БектурЧукин 2 года назад +2

    Здравствуйте! Спасибо Вам за прекрасное изложение и представление материала. Очень полезно. Хочу спросить как расширять БД, если исходный материал представлен в формате Excel.

  • @ЕлизаветаМалахова-ф2м

    Добрый день! Подскажите, а можно как-то БД заполнить "автоматически"ю Мне для проекта нужно 10 000 данных, а вручную как-то не очень хочется все это вводить.

  • @nickolya00
    @nickolya00 3 года назад

    супер!!!!!! быстро и понятно

    • @SweetCoder
      @SweetCoder  3 года назад

      спасибо за отзыв

  • @ИванИванов-н9т9ъ
    @ИванИванов-н9т9ъ 3 года назад +1

    Полезное видео.

    • @SweetCoder
      @SweetCoder  3 года назад +1

      да, без баз никуда

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

    Спасибо за уроки, сделай серию уроков по sqlalchemy (Flask) просто в Русскоязычном сегменте мало толковых роликов для тех кто только изучает это.

    • @SweetCoder
      @SweetCoder  4 года назад

      спасибо за отзыв. не могу обещать, что Flask скоро появится на канале

  • @denissavast
    @denissavast 3 года назад

    Благодарю!

  • @Екатерина-б8р3м
    @Екатерина-б8р3м 4 года назад

    Очень интересно. Можете пожалуйста рассказать больше о создании базы данных SQLite в Python, построении взаимосвязей и формировании отчетов

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

      тема создания базы раскрыта в предыдущем видео. а построение взаимосвязей в этом. какие конкретные вопросы мне стоило бы еще осветить?

    • @Екатерина-б8р3м
      @Екатерина-б8р3м 4 года назад

      @@SweetCoder на официальном сайте SQLite в разделе документация представлен схематически синтаксис языка программирования, что очень хорошо и наглядно. Но не совсем понятны возможности каждого. Может быть Вы могли бы рассказать больше об этом www.sqlite.org/lang.html

    • @Androidcarclub
      @Androidcarclub 4 года назад +1

      @@SweetCoder не плохо было бы увидеть пример базы данных взаимодействия с телеграм ботом на py например. Как вносить вносить в таблицы user_id, создавать для каждого пользователя строки с данными и как вызывать определенные данные по команде.

    • @SweetCoder
      @SweetCoder  4 года назад

      @@Androidcarclub нет совершенно никакой разницы между взаимодействием базы данных с телеграмм-ботом или с каким либо другим приложением. записывать ЛЮБУЮ информацию в базу нужно с помощью запроса insert. выбирать данные из базы с помощью запроса select. частично, эти примеры показаны в плейлисте создания десктопного приложения. например:
      ruclips.net/video/NWhwUpV4FsU/видео.html
      ruclips.net/video/PF6TQ9cRjHo/видео.html
      используешь тоже самое с телеграмм-ботом - и дело в шляпе.

    • @Androidcarclub
      @Androidcarclub 4 года назад +1

      @@SweetCoder согласен, но те, кто только - только начинают постигать бд в тг ботах ищут инфу именно по телеграм ботам. Ради примера. И это не плохой шанс собрать аудиторию.

  • @DrumsMan-f3i
    @DrumsMan-f3i 3 года назад +1

    Круто! Спасибо! Когда next?

    • @SweetCoder
      @SweetCoder  3 года назад +1

      на днях. спасибо за отзыв

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

    Объясните что за объект возвращает cursor.execute(queqry) ?
    class 'sqlite3.Cursor' - что это за класс и его характеристики ?
    - Почему его можно перебирать один раз после вызова execute? (и даже если сохраним его в переменную, то ее тоже удается перебрать 1 раз);
    - Зачем использовать con.row_factory = dict_factory ?
    или когда целесообразнее это применять ?
    и чем sqlite3.Row object отличается от sqlite3.Cursor ? ( у меня получалось их перебирать и разницы в выводе я особо не заметил ну или не осознал...)

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

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

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

      @@SweetCoder Будем ждать. Хорошие у тебя видео -продолжай!

  • @Andrew-pn8zx
    @Andrew-pn8zx 3 года назад +1

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

    • @SweetCoder
      @SweetCoder  3 года назад

      можно и нужно

  • @aleksandrit4990
    @aleksandrit4990 3 года назад +1

    А если указать дату необходимо в формате "число/месяц/год часы/минуты/секунды"?

    • @SweetCoder
      @SweetCoder  3 года назад

      а какие проблемы? просто учитываешь часы, минуты и секунды в функции конвертирования даты в timestamp и обратно

  • @facehuggerhug
    @facehuggerhug 5 месяцев назад

    За материал большое спасибо, но местами скорость отображения видео это жесть. Пришлось 10 раз пересмотреть ставя паузы, замедляя до 0.25 (и то местами не очень помогает) и т.д. Вроде мелочь, но сильно усложняет восприятие

  • @slavamorozovyoutube
    @slavamorozovyoutube 4 года назад +1

    лайк

  • @mRelby13
    @mRelby13 4 года назад +1

    А зачем создавалось 2 таблицы? Одной тоже самое реализовать не выйдет?
    ps. и еще момент. Не совсем ясно, как осуществлять поиск по таблице. Например:
    Я хочу вывести заголовок, описание и дату какой-то новости. Пусть эта новость называется: Па-па-ра-па-па. Если вписать название собственно в сам запрос - это сработает. Но, как мне подставить переменную: user_input в место названия? Через f'user_input' не катит =/
    Сама переменная будет определена перед выводом:
    user_input = input('what u want? Enter here: ')
    query = """ SELECT title, description, date FROM movieDataBase WHERE title = 'Па-па-ра-па-па' """

    • @SweetCoder
      @SweetCoder  4 года назад

      2 таблицы потому что у нас в приложении две отдельные сущности: статьи расходов и платежи(транзакции). они обладают разными свойствами и предназначением. поэтому 2 таблицы.
      один из возможных примеров подставки данных из переменной начиная с 5:31

    • @mRelby13
      @mRelby13 3 года назад

      @@SweetCoder понял, теперь все стало на свои места :)
      И ещё один вопрос, как мне получить доступ к каждому элемента кортежа из cursor.fetchone()? Если за один запрос можно обратится к cursor.fetch только 1 раз?
      Другими словами, как вытянуть поэлементно содержимое объекта курсор не используя цикл for?
      как это было у тебя в видео:
      cursor.execute(q)
      for i in cursor:
      print(f'firstELem: {i[0]}')
      print(f'secondELem: {i[1]}')
      db.commit()
      Остановился я на этом:
      cursor.execute(q)
      varName = cursor.fetchone()
      print(varName[0])
      print(varName[1])
      но правильно ли это?

  • @АлексПол-с9щ
    @АлексПол-с9щ 2 года назад

    Жаль,что в уроке нет получения I'd из связанной таблицы, интересно было бы посмотреть полный пример внесения данных. Понятно, что I'd можно запросом получить, но вот как это сделать быстрее и проще? Нужно проверить есть ли запись, например, бензин в таблице, затем создать её если её нет и только потом получить I'd. Вроде дело простое,но как это сделать правильно найти проблематично. Может потому, что это программистам кажется слишком простой задачей? Но так ли все просто, особенно при создании нескольких таблиц?

  • @nerves6401
    @nerves6401 3 года назад

    У меня проблема, я пытаюсь добавить строку с спец символами типо пробелов и # но у меня не выходит, ПОМОГИ плиз! тип ячейки куда хочу добавить TEXT

    • @SweetCoder
      @SweetCoder  3 года назад

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

    • @nerves6401
      @nerves6401 3 года назад

      @@SweetCoder не не не, всё норм работает если к примеру добавляю "test", но стоит добавить пробел и всё ломается

    • @SweetCoder
      @SweetCoder  3 года назад

      нужно больше информации. выдаёт ли интерпретатор какую-то ошибку? какую конкретно строку с пробелом не удаётся добавить?

    • @nerves6401
      @nerves6401 3 года назад

      @@SweetCoder К примеру "1005" добавляет а вот "100 5" уже нет

    • @SweetCoder
      @SweetCoder  3 года назад

      нужно больше информации. выдаёт ли интерпретатор какую-то ошибку? приведи часть кода как ты формируешь запрос

  • @speedcuber-diary
    @speedcuber-diary 2 года назад

    2:24 Преднамереная ошибка что-бьі люди думали?

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

    чувак, я все лайки поставил, куда ты пропал????

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

    можно узнать у Вас какая-то супер оригинальная методика преподавания? На прошлом занятии все подробно объяснить и разжевать простой пример, а в этом ролике сумбурно все скинуть в кучу и устроить с кем-то гонку по скорости кодинга? Если аудитория Вашего канала ученики с нуля, то могу заверить Вас, что польза от этого ролика для них минимальна

  • @falongor6836
    @falongor6836 3 года назад +4

    Огромный минус это ускорение

    • @SweetCoder
      @SweetCoder  3 года назад +1

      спасибо за отзыв

    • @falongor6836
      @falongor6836 3 года назад +1

      @@SweetCoder пожалуйста, просто как то не удобно понимать.

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

      @@SweetCoder а вообще ты топ, хороший и молодец

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

    бро, а у тебя зрение нормальное ? Сотка ? Если да, то что ты сделал для того,
    чтобы его сберечь ?

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

    как у автора получилось создать таблицу через IF NOT EXIST ????? ))))))

  • @hasagisosuo0108
    @hasagisosuo0108 3 года назад +1

    А в чем разница между csv и sql

    • @SweetCoder
      @SweetCoder  3 года назад

      csv - это, по сути, текстовый файл. а sql это почти язык программирования, который облегчает и ускоряет доступ к данным и их обработку

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

    автор походу сам мало что знает, раз говорит такую чушь про отсутствие дат в sqllite

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

    Какое-то ZIP-видео получилось

  • @python_developer-d8p
    @python_developer-d8p 9 месяцев назад

    Очень бистра объясняет!?

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

    Привет, дружище!

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

    спасибо за урок