Создаем базу данных в Qt

แชร์
ฝัง
  • เผยแพร่เมื่อ 24 ก.พ. 2021
  • Привет! В этом выпуске мы создадим базу данных в Qt. Для примера сделаем модель телефонной книги и добавим в нее возможность добавлять и удалять данные

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

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

    завидую твоим контактам

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

    Спасибо, чувак! Это походу единственное нормальное видео по Qt + SQL без воды и прочей ерунды. Сходу подписался

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

    Продолжайте выкладывать видео про qt и излагать материалы в том виде, в котором выбрали. Начало интересное!

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

      Как сделать поиск по выпадающему списку в QT?

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

    Спасибо тебе большое !
    Очень круто видеть много полезных уроков по QT !!!!

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

    Спасибо! Очень кратко и по делу!!!

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

    Задали написать ДБ на Qt после первого занятия, не знал что делать, спасибо бро оч выручил

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

      Хорошо, что видео оказалось полезным

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

    Чел, спасибо за то, что ты существуешь

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

    Спасибо, наконец-то без воды и всё понятно!

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

      Как сделать поиск по выпадающему списку в QT?

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

    Даже несмотря на старое знакомство с Qt из прошлого (3.x), забавно смотреть на эту магию. :) Поиск способов вызова API стал заметно проще из Qt... Ммм, а как эту среду разработки теперь зовут?
    Как говорится, всё для людей. Остаётся научить отладке проблем с подключением к различным СУБД. Вот бы там также элегантно получилось ;)
    P.S. И вот ведь казус - с Borland Delphi все это не менее весело и просто собиралось ещё в конце 90-ых прошлого века. Лучшая была технология RAD, пригодная для написания приложений БД для PC.

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

    Какие классные девушки в твоих контактах. 😁😁
    А вообще, спасибо за урок 😊

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

    Благодарю вас за урок! Продолжайте дальше выпускать видео, у вас талант!
    А также, у вас великолепные превью.

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

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

  • @user-rs2me1pt1q
    @user-rs2me1pt1q 3 ปีที่แล้ว +2

    Ух ты! Это именно то, что я хотел найти) спасибо)

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

    Спасибо! Очень полезно

  • @nokia_n-gage
    @nokia_n-gage ปีที่แล้ว

    Супер!

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

    Так на кнопке удалить надо было сделать опен по-новой. Спасибо, было интересно.

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

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

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

      пожалуйста))

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

    от души))

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

    Спасибо за видео! Поясните пжлст новичку, почему объект db создан без динамического распределения памяти, а объект запроса с помощью указателя query. Это конечно вопрос больше по С++, но хотелось бы ваше пояснение. Спасибо!

  • @le0_srv484
    @le0_srv484 3 หลายเดือนก่อน +1

    Могу ошибаться, но запросы к базе надо было делать в блоке if(db.open{ ........}
    А то например после вывода сообщения "No open"
    Мы создаем обьект и делаем запрос 🤭

  • @MrGray-rk9zu
    @MrGray-rk9zu 2 ปีที่แล้ว +14

    Ирония в том, что имена в базе данных принадлежать порноактрисам =)

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

    Спасибо большое за Ваши видео, это супер!
    Подскажите, пожалуйста, как выровнять таблицу по ширине текста?

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

    Народ все дружно помогаем нашему Коту раскрутиться. Репостим лайкаем и комментируем.. Нужный ведь канал..

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

    скажите, а как сделать столбики более широкими , например, я пишу "средний балл FLOAT"(в query->exec()), а в table VIEW выводит только "средний"

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

    Спасибо большое! Уберег от монотонного чтения документации. Подача и голос на хорошем уровне

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

    Отличное видео. Спасибо!
    А контакты у вас интересные

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

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

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

      +
      Как-нибудь решили?

  • @nikiforovpteacher
    @nikiforovpteacher 8 หลายเดือนก่อน +1

    В Qt5 не работает примерно ничего. Не те заголовочные файлы, запрос не создает таблицу в БД и т.д.

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

    Здравствуйте, подскажите, а как сделать маску для номера телефона?

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

    Почему мы создаем таблицу и добавляем БД в конструкторе класса главного окна. Это получается он будет при каждом новом открытии проги создавать новую ДБ и новую таблицу? В QT есть какой-то setup скрипт, который это сделает разово?

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

      Нет, не будет

  • @user-pz7jv4ju1z
    @user-pz7jv4ju1z 2 ปีที่แล้ว +3

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

    • @donsilvio858
      @donsilvio858 7 หลายเดือนก่อน +1

      model->submitAll(); нужно добавить эту строку после команды model->insertRow(model->rowCount());
      тогда изменения сохраняться

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

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

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

      Нажми enter, должно помочь

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

      @@programmcat Спасибо за ответ!) Оказывается все так просто.. а я уже весь инет перерыл хех, теперь правда в моем приложении только одна из двух баз данных работает отлично, со второй так и остались беды..

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

      @@programmcat Все таки обращусь еще раз к вам, как может быть такое что код абсолютно идентичен (не считая что переменные с другими именами), но вот одна база данных работает отлично, а другая ни в какую. Я уже и через DB browser добавил строку чтоб виделась 1 но и это не помогло, создает 2ю строку которая не меняется на 2 ну и не сохраняется. (Пишу курсовую, и вот эти базы данных просто убивают меня пока что хех, но для моего проекта надо именно 2 базы данных, я не могу придумать как все в одну запичкать)

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

      Работа с двумя подключениями одновременно имеет свои нюансы, этот ролик не поможет :) После названия драйвера, вторым аргументом нужно прописать название подключения. Например: ("QSQLITE", "firstConnect").

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

    в файле mainwindow.cpp есть строка (21) query->exec("CREATE TABLE... как я понял она создает таблицу в базе но зачем каждый раз при запуске в базе создавать таблицу ?

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

      Если таблица создана, запрос не будет выполнен

  • @Roman-ms5fw
    @Roman-ms5fw 3 ปีที่แล้ว +2

    Попытался сделать в linux, но что то не работает метод
    model->(model->rowCount())

    • @cpp.h
      @cpp.h ปีที่แล้ว

      model->insertRow(model->rowCount());

  • @user-xy3pm8fo5r
    @user-xy3pm8fo5r 3 ปีที่แล้ว +1

    А как подключиться уже к существующей бд ?

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

      прописать в методе setDatabaseName путь к существующей бд

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

    Я оставлю этот комментарий в 2021, пока на канале ещё не миллион подписчиков

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

    Как обращаться к данным из ячейки?

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

      Через модель, там есть встроенный метод data

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

    Как сделать поиск по выпадающему списку в QT?

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

      использовать QCompleter

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

    вот так всегда. на шикарных уроках просмотров мало. а режу воду 10 часов собирает миллионы
    деградирует народ однако..

  • @mr.kot2342
    @mr.kot2342 3 ปีที่แล้ว +1

    а можно код файлом

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

    у меня не создается, нужны комплекты какие-то, а там их нет при создание, что делать?

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

    Выдает ошибку: QSqlite driver not loaded. Как быть?

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

      загрузить драйвер на компьютер

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

    Привет, ломаю голову. У меня есть текст в LineEdit. Хочу нажать на кнопку и чтобы слово в LineEdit добавилась в базу данных. У меня только создается новый row, и на этом все. Уже не знаю что придумать. Подскажи пожалуйста. Спасибо 🙏

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

      Ладно, видимо вы сами не знаете как это сделать:)))

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

      Используй query.exec()
      query.prepare("INSERT INTO yourTable(Data)"
      "VALUES (:dataValue)");
      query.bindValue(":dataValue", ui->lineEdit->getText());
      query.exec();

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

      @@georgezh1711 спасибо. Безумно доволен:)))

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

    hello, would you be so kind and tell me how to create finding button? please

  • @MartinIden-hn7ld
    @MartinIden-hn7ld 2 หลายเดือนก่อน

    Не планируешь видос по postgresql?
    Выручишь пиздец)

  • @user-tz5sw1sw5r
    @user-tz5sw1sw5r 3 ปีที่แล้ว +1

    А как сделать то же самое, но без графического редактора?

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

      Консольное приложение или создать окно текстом?

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

      @@programmcat создать окно текстом

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

      @@user-tz5sw1sw5r сделаю ролик на эту тему

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

      @@programmcat, благодарю, буду ждать с нетерпением

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

    Можешь пж зделать видео как создать проект .pro пж пж пж

    • @MartinIden-hn7ld
      @MartinIden-hn7ld 2 หลายเดือนก่อน

      Выберите сборку qmake и файл .pro создастся

  • @user-lc5vo2cc7u
    @user-lc5vo2cc7u 3 ปีที่แล้ว

    А как подключить БД MySQL ???)))

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

      Использовать другой драйвер

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

      @@programmcat Почему-то у меня не добавляется следующая строка по нажатию кнопки Добавить. Одна добавляется строка, остальные нет и не сохраняется данные.

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

      @@user-lc5vo2cc7u нужно enter нажать после добавления записи, чтобы номер строки появился. Тогда строчка считается добавленной, и можно создавать новую.

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

      @@Dovmial Спасибо. Попробую.

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

    Одинаковый код. База данных не сохраняется после перезапуска...

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

      отвечали выше. сам не проверял, но наверно сработает:
      model->submitAll(); нужно добавить эту строку после команды model->insertRow(model->rowCount());
      тогда изменения сохраняться

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

    Я мог просто посмотреть видос в 7 минут, а не читать документацию и чужой код всю ночь...

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

      ради этого я и создавал канал, спасибо, приятно ))

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

    Сори, но звук видео настроен ужасно. Твой голос идёт только в левый наушник...

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

      все, нашел где можно балансировать звук, в новом ролике все ровно

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

      @@programmcat уииии

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

    у меня не появилась ДБ. а програмист из меня плохой. ПОМОГИТЕ

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

      сборку нажми

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

      @@programmcat я уже сдал курсач , мне это уже нахуй ненадо

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

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

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

      а давай ты просто пойдешь на ***