MS Access и C# - работаем с базой данных из программы Windows Forms

Поділитися
Вставка
  • Опубліковано 11 бер 2018
  • В видео рассказывается про работу с базой данных Microsoft Access с помощью языка программирования C#. Демонстрируется выполнение запросов выборки SELECT, вставки INSERT, обновления UPDATE и удаления DELETE из проекта Windows Forms C# в среде разработки Visual Studio.
    Исходный код из урока: vscode.ru/prog-lessons/ms-acce...

КОМЕНТАРІ • 106

  • @vladiumcvet1053
    @vladiumcvet1053 11 місяців тому +1

    Огромное Вам спасибо, автор! Спустя 5 лет, Ваши видео несут пользу людям!

  • @helldream2447
    @helldream2447 3 роки тому +4

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

  • @barselen9902
    @barselen9902 5 років тому +1

    Огромное спасибо за все ваши видеоуроки!

  • @user-dz4pn2lb2y
    @user-dz4pn2lb2y 6 років тому +40

    Вы ЧЕЛОВЕЧИЩЕ!!!

    • @IgorShapkinChannel
      @IgorShapkinChannel  6 років тому +1

      Виктор Петров спасибо большое!

    • @user-dz4pn2lb2y
      @user-dz4pn2lb2y 6 років тому +4

      Очень нравится то что вы описываете каждый шаг разъясняя каждую команду!

    • @IgorShapkinChannel
      @IgorShapkinChannel  6 років тому +1

      Виктор Петров стараюсь)

    • @arsenshmid
      @arsenshmid 4 роки тому

      Ахах, хотел написать точно так же))

  • @arsenshmid
    @arsenshmid 4 роки тому +2

    Огромное спасибо! Очень грамотно объясняете материал.

  • @nagetaa-p5584
    @nagetaa-p5584 2 роки тому

    Хоть и старое, но самое лучшее объяснение, которое только смог найти. Огромное спасибо Автору!

  • @liudmylazgurovska2240
    @liudmylazgurovska2240 4 роки тому +1

    Огромная благодарность за урок!

  • @user-bu3kr8vb9r
    @user-bu3kr8vb9r 5 років тому +2

    Потрясающе! СПАСИБО!!!

  • @felex4521
    @felex4521 4 роки тому +1

    Спасибо, благодаря твоим видео сделал курсовую по базам данных)

  • @maksacool
    @maksacool 4 роки тому +1

    Вы мой новый супер-герой, аля Кодмэн. Спасибо вам))))

  • @nicegame1252
    @nicegame1252 4 роки тому +4

    Спасибо из 2019, помогли!!!

  • @konvaliiya
    @konvaliiya 6 років тому +3

    Большое спасибо за видео! Отдельное спасибо за текстовую часть урока, т.к. на видео не все команды видны.

  • @Аскорбинка_малинка

    Спасибо огромное. Лучший урок с базами данных на C#.

  • @Danila369
    @Danila369 4 роки тому +4

    ОГромное спасибо
    дали задание на практику "Сделать оконное приложение которое работает с базами данных"
    Ни баз данных ни оконных приложений мы не проходили )

    • @VitaliyN92
      @VitaliyN92 3 роки тому +1

      :D "жизненно так жизненно " :D

  • @MrNikolka001
    @MrNikolka001 3 роки тому +1

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

  • @yourmuse3234
    @yourmuse3234 3 роки тому

    спасибо большое! все внятно и без воды))

  • @developer7707
    @developer7707 6 років тому +3

    Круто! Делай побольше таких видео!

  • @user-yf4xp1fm2z
    @user-yf4xp1fm2z 3 роки тому

    просто лучший спасибо большое за твои видосы очень помогают с учебой и очень интересно создавать

  • @kurousagl
    @kurousagl 6 років тому +1

    Отлично показал и рассказал. Спасибо огромное, а то на форумах я не сильно понял.

  • @vlad1956
    @vlad1956 6 років тому +7

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

    • @IgorShapkinChannel
      @IgorShapkinChannel  6 років тому

      Спасибо! Кстати хорошая идея. Сделаю)

    • @Vlad-em1bx
      @Vlad-em1bx 5 років тому

      про поиск отличная идея!

  • @owlscatcher
    @owlscatcher 6 років тому +2

    Как всегда полезно!
    Если не лень будет, разберите вопрос автоматического обновления данных в приложении на С# при изменениях в ms sql server, только не по таймеру, а через service broker.

    • @IgorShapkinChannel
      @IgorShapkinChannel  6 років тому

      Спасибо за отзыв! Посмотрим, может позже сделаю.

  • @Alikas2142
    @Alikas2142 6 років тому +1

    крутое видео, помогло на 100%

  • @mrnagibator7385
    @mrnagibator7385 3 роки тому +1

    Однозначно лайк

  • @gulzinatzheenbaeva1511
    @gulzinatzheenbaeva1511 5 років тому +1

    все хорошо

  • @user-tf7xg6de8b
    @user-tf7xg6de8b 4 роки тому

    Добрый вечер, в конце вы рассказали про удаление строк из таблиц. Однако в access есть такая погрешность, что значение поля счётчика не удаляется вместе со строкой (итого- счётчик не "уплотняется", а записывается под числом, идущим после номера счётчика удалённой строки). Решение этому- сжатие бд. Как можно сделать сжатие в c#?

  • @Lyurasti
    @Lyurasti 4 роки тому

    Здравствуйте!
    Благодарю вас за видео-урок.
    Меня заинтересовало, почему вы в запросах использовали не вводимые значение, а фиксированные, которые прописали в коде. Было бы поучительно наглядно увидеть как sql-запросы работают с текстовыми данными, введенными пользователем.

    • @Lyurasti
      @Lyurasti 4 роки тому +1

      Я решила свой вопрос, немного изменив запрос на такой
      String firstquerty = "SELECT w_name FROM Workers WHERE w_id = " + textBox2.Text;
      //Если кто-то возьмёт это и у него не заработает код - у меня имя запроса firstquerty, в видео querty, так же имя таблицы у меня с окончанием s.

  • @lanasan5227
    @lanasan5227 6 років тому

    Подскажите, пожалуйста, как в коде прописать возврат к прежнему отображению данных после их фильтрации 😥

  • @artem6764
    @artem6764 5 років тому +1

    Большое спасибо за видео!
    Не могли бы вы прояснить еще один момент:
    SELECT COUNT(*) as count FROM Понедельник WHERE Время LIKE '12:30' - этот запрос в access работает верно,возвращает число одинаковых записей,но С# мне выдает ошибку "Ошибочное или пропущенное зарезервированное слово или аргумент в инструкции SELECT или неверная пунктуация."

    • @IgorShapkinChannel
      @IgorShapkinChannel  5 років тому

      Тут нужно поэкспериментировать. Попробуйте без as count или возьмите в кавычки "Понедельник" или, возможно, время указано в неверном формате, может нужно добавить секунды. Еще вместо LIKE можно попробовать =. "Время" взять в кавычки или в одинарные кавычки 'Время'.

  • @Georgiy964
    @Georgiy964 4 роки тому +2

    у меня OleDbException Не удаётся найти выходную таблицу

  • @user-dq4tk7wn5v
    @user-dq4tk7wn5v 4 роки тому

    Возможно ли через text.box добавлять в бд данные которые я буду вписывать? А то ваша схема идет именно на работу из самого кода

  • @user-lr2ls1ix3z
    @user-lr2ls1ix3z 3 роки тому

    Подскажите, пожалуйста, как в команде "INSERT", или в той же "UPDATE" в поля БД занести не данные, которые я написал от руки прямо в коде, а переменную или результат выполнения функции? Как это можно сделать?

  • @maximch4557
    @maximch4557 3 роки тому

    какую команду писать, если бд находиться не в папке VS, а на локальном сервере, путь к которому известен?

  • @Heheitan
    @Heheitan Рік тому

    А можете написать то же самое, только функции кнопок провести через отдельный класс? Это для универсальности, чтобы можно было редактировать разные по числу полей таблицы.

  • @user-gy4wj5lm6y
    @user-gy4wj5lm6y 5 років тому

    Какая удача на такой свежак нарваться. Только начал интересоваться как это сделать и такой хороший пример.
    Igor Shapkin
    , а как нибудь изменится это приложение если речь будет идти о WPF-реализации? И ещё немного не по теме: В случае WPF- приложения у нас будет приложение одним исполняемым файлом или россыпь файлов. Просто думаю как поступать мне. Есть у меня СУБД Access и надо клиент к нему замонстрить. Работодатель неуверенно заикается про Питон а предполагаю что лучше на C#. У работодателя требование. СУДБ - одним файликом и приложение-клиент тоже одним файликом. Я то до этого только WinForm делал и ихний вид меня не устраивает.

    • @IgorShapkinChannel
      @IgorShapkinChannel  5 років тому +1

      На WPF не сильно изменится. И скорее всего россыпь.

  • @ragaf4534
    @ragaf4534 4 роки тому

    Здравствуйте, попытался использовать Ваш код для базы данных, в которой несколько таблиц, и выдает ошибку (несуществующий экземпляр). Подскажите, пожалуйста, какие особенности появляются, если работать с несколькими таблицами?

  • @user-nk5qt1vz1e
    @user-nk5qt1vz1e 6 років тому

    Не подскажите как в pictureBox загрузить изображение(типа OLE) из базы данных(Access)?

    • @IgorShapkinChannel
      @IgorShapkinChannel  6 років тому

      С OLE никогда не работал, но идея должна быть следующей: переконвертировать данные из БД в объект с изображением Bitmap, а его уже не составит труда вывести в PictureBox.

  • @user-qv9dk9xx8d
    @user-qv9dk9xx8d 6 років тому

    Почему изменения (вставка новой строки, обновления и удаления строк ) не сохраняются после завершения работы программы в бд access?

  • @aleksey9562
    @aleksey9562 6 років тому

    Не подскажете как сравнить данные из 2-ух combobox -ов по определенному параметру? Каждые данные из combobox взяты из Бд access.

    • @IgorShapkinChannel
      @IgorShapkinChannel  6 років тому

      Если вы имеете в виду, как получить данные из комбобоксов, чтобы потом их сравнить, так это combobox1.SelectedItem - если интересует выбранное значение. Или можно получить всю коллекцию элементов combobox1.Items. К конкретному элементу можно обратиться как к элементу массива [0].
      Получаете таким образом нужные элементы и сравниваете их по принципу, который требуется.

    • @aleksey9562
      @aleksey9562 6 років тому

      Спасибо

  • @user-jf5bi3pz5k
    @user-jf5bi3pz5k Рік тому

    Норм

  • @monkey1033
    @monkey1033 3 роки тому

    Я долго не понимал, почему у меня ошибка в INSERT INTO. Помогло заключение всех объектов и атрибутов БД в квадратные скобки [ ]. Мало ли, кому поможет...

  • @user-proger88
    @user-proger88 3 роки тому +1

    А теперь внимание вопрос: как работать с форматом accdb?

    • @vlad178rus
      @vlad178rus Рік тому

      Вместо Worker.mdb, пишешь Worker.accdb. Строку подключения берешь Microsoft.ACE.OLEDB.12.0

  • @caucasussoldier_500
    @caucasussoldier_500 2 роки тому

    Здравствуйте, у меня в БД 2 таблицы, первую добавил, а для второй необходимо заново создавать классы?

  • @viktorivanov8672
    @viktorivanov8672 Рік тому

    Почему запись с Id=4 выходила первой в запросе Order By Id?

  • @Naddys0n
    @Naddys0n 4 роки тому

    Здравствуйте, подскажите пожалуйста! Что если база данных уже в mdb формате, но названия колонок у неё на русском языке. Как мне сделать выборку по названиям этих столбцов, если они на русском

  • @antongrachev852
    @antongrachev852 5 років тому +1

    System.Data.OleDb.OleDbException: "Ошибка синтаксиса в инструкции INSERT INTO."

    • @IgorShapkinChannel
      @IgorShapkinChannel  5 років тому

      Проверьте получше. На видео всё работает.

  • @user-us2lg5vd6m
    @user-us2lg5vd6m 4 роки тому

    А какого года у вас аксесс, или туда любую можно ?

  • @maverick_pl
    @maverick_pl 3 роки тому

    не совсем понял тему проекта, зарплаты рабочих?

  • @escaperoomelectronics2147
    @escaperoomelectronics2147 3 місяці тому

    Здравствуйте! Скачал исходник с сайте и попробовал запустить скомпилированное приложение. Сразу вылетело с ошибкой. Попробовал запустить исходник и тоже самое.. ошибка. В чем может быть проблема?

  • @Ker4ik777
    @Ker4ik777 6 років тому

    А с DataGridView , будут проводится такие же действия ?

    • @IgorShapkinChannel
      @IgorShapkinChannel  6 років тому

      такие же как здесь ua-cam.com/video/W2av_JTn5TU/v-deo.html

    • @Ker4ik777
      @Ker4ik777 6 років тому +1

      Спасибо)

    • @Ker4ik777
      @Ker4ik777 6 років тому

      А там получается без разницы какая версия SQL Express?

    • @IgorShapkinChannel
      @IgorShapkinChannel  6 років тому

      Без разницы

  • @uralfansoft
    @uralfansoft 2 роки тому

    этот способ требует какого либо локального сервера на компьютере?

  • @developer7707
    @developer7707 6 років тому

    Ещё один вопрос к вам, как к программисту, можно ли таким способом сделать информационно-аналитическую систему? :)

    • @IgorShapkinChannel
      @IgorShapkinChannel  6 років тому +1

      Конечно. Почему нет)

    • @developer7707
      @developer7707 6 років тому

      просто мне тут люди подсказывают, что только с sql server это делается, хотел узнать ещё ваше мнение)

    • @IgorShapkinChannel
      @IgorShapkinChannel  6 років тому +1

      В принципе можно сделать с любой. Но лучше, конечно, работать с полноценными СУБД: MSSQL, Oracle, MySQL. Бесспорно, Access - это по большому счету игрушка. В серьезных разработках ее не используют.

    • @developer7707
      @developer7707 6 років тому

      Понял, спасибо за ответ)

  • @user-bu3kr8vb9r
    @user-bu3kr8vb9r 5 років тому

    А почему при обновлении и добавлении у меня не читается command.ExecuteNonQuery(); ? Поэтому запрос не выполняется:(

    • @IgorShapkinChannel
      @IgorShapkinChannel  5 років тому

      Пересмотрите, пожалуйста, внимательнее видео и сделайте все в точности - все заработает

    • @user-bu3kr8vb9r
      @user-bu3kr8vb9r 5 років тому +1

      @@IgorShapkinChannel мне нужно было поставить имя столбца в квадратные кавычки, поэтому не читалось. Столбец назывался Password. Спасибо за ответ

  • @user-bw2ih7hz7o
    @user-bw2ih7hz7o 5 років тому

    А у меня такая ошибка выходит:
    System.Data.OleDb.OleDbException: "Невозможно найти устанавливаемый ISAM."

    • @IgorShapkinChannel
      @IgorShapkinChannel  5 років тому

      Возможно строка подключения неправильная

    • @user-bw2ih7hz7o
      @user-bw2ih7hz7o 5 років тому

      @@IgorShapkinChannel Да, вы правы. А теперь другая ошибка выходит

    • @user-bw2ih7hz7o
      @user-bw2ih7hz7o 5 років тому

      По всем кнопкам норм, а по первой "Ссылка на объект не указывает на экземпляр объекта"

  • @user-fr9oz8bh1t
    @user-fr9oz8bh1t 4 роки тому

    Здравстуйте, ошибка: System.Data.OleDb.OleDbException: "Отсутствует значение для одного или нескольких требуемых параметров." Уже 2 часа мучаюсь

    • @user-vo1fg1vl7c
      @user-vo1fg1vl7c 4 роки тому

      Попробуйте параметры в квадратные скобки взять. Вот так: string query = "SELECT [customer_name], [e-mail], [phone] FROM [customer] ORDER BY [e-mail]";

    • @user-fr9oz8bh1t
      @user-fr9oz8bh1t 4 роки тому

      ​@@user-vo1fg1vl7c​, спасибо уже все работает.

  • @developer7707
    @developer7707 6 років тому

    Какая версия sql server?

    • @IgorShapkinChannel
      @IgorShapkinChannel  6 років тому

      Тут не SQL Server, а MS Access.

    • @developer7707
      @developer7707 6 років тому

      Только вникаю в это всё, хотелось бы узнать, как работать с sql server:)

    • @IgorShapkinChannel
      @IgorShapkinChannel  6 років тому +1

      Хорошо, скоро запишу видео)

  • @yurimo8366
    @yurimo8366 Рік тому

    В строке myConnection.Open(); не происходит соединение с базой данных, пишет System.Data.OleDb.OleDbException: "Невозможно найти устанавливаемый ISAM." Проверял обе строки подключения. Результат одинаков. Что надо сделать?

    • @yurimo8366
      @yurimo8366 Рік тому

      Ошибка найдена! У меня было записано Data Sourse вместо Data Source.

  • @moxyrobisper6720
    @moxyrobisper6720 2 роки тому

    выдаёт ошибку System.InvalidOperationException: "The 'Microsoft.Jet.OLEDB.4.0' provider is not registered on the local machine."

    • @Heheitan
      @Heheitan Рік тому

      Было такое же, просто скачал microsoft database, установил и перезапустил компьютер. Помогло. Самое интересное на версии 2019 года не появлялось.

  • @deverloperfantom1372
    @deverloperfantom1372 5 років тому

    не возлагайте на аксес великих надежд ломается легче легкого

  • @user-cw6lc5bn7u
    @user-cw6lc5bn7u 2 роки тому

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

    • @lisasavi3913
      @lisasavi3913 2 роки тому

      Вы как-то решили данную проблему?

    • @Heheitan
      @Heheitan Рік тому

      А писали сверху using system.data.oledb?

  • @WhatCookies
    @WhatCookies 6 років тому

    Disposable? Не, не слышал

  • @user-qv9dk9xx8d
    @user-qv9dk9xx8d 6 років тому

    Почему изменения (вставка новой строки, обновления и удаления строк ) не сохраняются после завершения работы программы в бд access?