C# и ACCESS. Пример работы с ACCESS на Windows Forms C#.
Вставка
- Опубліковано 27 лют 2020
- В этом видео найдете руководство как работать с базой из Microsoft Access в Microsoft Visual Studio Windows Forms приложении на c#.
=== Исходники и поддержать канал: ===
boosty.to/fps.fireplanetstudio
=== Отзывы на наши проекты: ===
• VK: topic-146160167_49433477
=== Контакты для заказа проекта: ===
• VK: vladimir_repp
• VK: fps_vladimir
• Telegram: @Vladimir_Repp
• Телефон (смс, WhatsApp, Telegram): 89994402751
• Почта: fireplanetstudio@mail.ru
=== Контакты для партнерства: ===
(В том числе если ищите интересные проекты и дружную команду разработки, см. тему сообщения)
• Тема: Партнерство / В команду Student Dev / В команду Software Dev / В команду Game Dev
• Телефон (смс, WhatsApp, Telegram): 89994402751
• Почта: vladimir_repp97@mail.ru
=== Социальные сети, там будут новые и актуальные новости: ===
• UA-cam: / @fps.fireplanetstudio
• Группа в VK: fps_fireplanetstudio
• Яндекс Дзен: dzen.ru/id/622f7bfd76344e6a51...
• Rutube: rutube.ru/channel/24737236/
• Instagram: @fps.fireplanetstudio
• Boosty: boosty.to/fps.fireplanetstudio
Как вам видео и материал в целом? Есть что изменить, добавить, поправить в подаче материала?
*** Реализованы следующие действия:
1. Загрузка данных
2. Добавление данных
3. Обновление данных
4. Удаление данных
*** Есть такой же пример на языке программирования C++: • C++ и ACCESS. Пример р...
Большое спасибо!!! Отличное урок! Продолжай в том же духе. Желаю много подписчиков
Большое спасибо! Отличный урок! Мне понравился очень!
Спасибо за гайды❤️
Спасибо очень сильно помог с выгрузкой данных, перед этим делал по другому видео, оно выводило только при запуске, а в последствие не обновлялось, но ты очень помог удачи тебе!
Благодарю, выручил)
спасибо огромное, я очень благодарен ❤
Чтобы не париться с плюсами в запросе можно перед двойными кавычками поставить $, а сами переменные писать в { }.
Пример:
query = $"UPDATE table_name set Name = '{name}' , Cost={cost} , Quantity={quantity} WHERE id={id}";
Заебись!
Классно получилось , пасиб за музыку на фоне + комментарии в самом коде //
Спасибо.
спасибо!
Всё работает отлично,но обнаружил исключение,которое не обрабатывается,в котором сначала нажимаю на кнопку "Обновить" и после ввожу данные,а когда выделяю строку и нажимаю "Добавить" выскакивает это
System.ArgumentOutOfRangeException: "Индекс за пределами диапазона. Индекс должен быть положительным числом, а его размер не должен превышать размер коллекции.
Имя параметра: index"
Кто может помочь?
Было бы неплохо если ты сделал бы кнопки формирования отчета и вывода на печать, по каждому ID чего то там(аля товар, ну крч 1 строки в таблице)
Как сделать чтобы при нажатии добавить текст писался на русском и цифры правильно введённые появлялись в ассеss
АИС на диплом кто поможет сделать?
А если у меня связанные таблицы? И допустим при добавлении данных в таблицу мне должно подставляться в ячейку другое данное из другой таблице
Имеется ввиду, что я вписываю данные, потом на другую ячейку нажимаю и в Accese допустим там был бы выпадающий список, а как это сделать в Grid?
Как тогда быть?
Вроде запрос надо поменять чтобы там были join
в grid - изменить тип столбца на выпадающий список и туда подгружать данные
запросом "Inner Join *таблица_откуда_данные_берем* IN *таблица_откуда_данные_берем*.id = *ваша таблица*.*нужное поле*"
Как вносить дату, какой формат должен быть? у текстового string, у чисел int, сделал окном отдельным добавление данных в бд, но не получается вносить дату, подскажите пожалуйста
или как обозначается по примеру у вас в видео, если текстовый ' " " ', числовой " ", c датой как быть?
а как узнать поставщика, у меня ошибка на этот момент выскакивает, "Поставщик "Microsoft.Jet.OLED6.4.0" не зарегистрирован на локальном компьютере."
что делать
Разобрался, неправильно написал версию)
Где это узнать подскажи, и если разобрался что такое OleDb?
здесь выбивает ошибку:
OleDbDataReader dbReader = dbCommand.ExecuteReader();
вот она:
System.Data.OleDb.OleDbException: "Ошибка синтаксиса в предложении FROM."
что делать?
Возможно не правильно сформирована строка запроса
Нужно смотреть в коде, возможны разные причины
Подскажите пожалуйста из-за чего может выдавать ошибку в добавлении строки, ошибку пишет в этой строке if (dbCommand.ExecuteNonQuery() !=1) ?
Возможно у тебя не создан объект Connection. Попробуй создать объект dbCommand.Connection = (имя строки подключения); перед проверкой If на подключение БД.
Хотя без текста ошибки точно сказать не могу, поможет ли это.
@@amrishatin ,System.Data.OleDb.OleDbException: "Отсутствует значение для одного или нескольких требуемых параметров."
Вряд ли уже вам это нужно, но пусть хоть другие посмотрят если столкнутся. Дело в скобках. В видео автор сказал, что если в переменной число, то мы ставим просто двойные кавычки (" "). Если не число, а какая-либо строка, то одинарные + двойные ('" "'). Сам над этим час просидел, теперь сижу на кнопке update)
К примеру, cost ограничивается просто двумя кавычками, потому что там будет число, name в свою очередь ограничивается и одинарными и двойными, потому что там будет храниться текст.
@@user-np2vr1mi4n а как решили пробелему с UPDATE
Подскажите, после нажатия "Добавить" всё выполняется, но данные не записываются.
нашел решение ?
А если у меня в базе несколько таблиц, как сделать чтобы я выбирал название таблицы из ComboBox, и оно подставлялось в запрос?
mr. DraKONkIn, в строке запроса указать название файла
Например, можно сделать так:
string tablename = comboBox.SelectedItems; //если не ошибаюсь, так считать выбранный элемент
if(tablename != “”)
string request = “здесь формируем запрос, название таблицы = ” + tablename;
И применяем запрос с выбранной таблицей.
@@FPS.FirePlanetStudio, большое спасибо, попробую
@@FPS.FirePlanetStudio , я выбрал SelectedItem, преобразовал его к строковому типу. предположим это хранится в переменной name. подскажите пожалуйста как написать запрос чтобы выбрать все поля из таблицы, чтобы у меня вместо имени таблицы стояла переменная name; "SELECT * FROM ..........". не понимаю этого. заранее спасибо
@@mr.drakonkin9452, в видео есть несколько примеров, когда в строку запроса добавляются разные переменные (например при вставки, удалении, обновлении)
Принцип будет тот же:
string tablename;
string query = "SELECT * FROM " + tablename;//строка запроса c названием таблицы хранящимся в переменной
Обратите внимание, что после FROM стоит пробел
FPS FirePlanetStudio, большое спасибо! Буду пробовать!!!
А можно еще скорости прибавить, желательно до скорости света (300.000 км/с), а то довольно медленное видео?
После написания методов идёт их разбор, где можно спокойно все переписать 👌
представляете сколько бы длилось видео, если бы скорость была обычного печатанья на клавиатуре?))
вообще тут есть функция замедления и ускорения видео, можете попробовать)
Что делать, ЕСЛИ у меня после того как я переставил таблицу Access в нужную папку, то все ровно пишет что "не удается найти..." ПОМОГИТЕ СРОЧНО. ЗАРАНЕЕ СПАСИБО!.
+
4:09
И выдает ошибку Необработанное исключение типа : System.Data.OleDb.OleDbException в System.Data.dll
Нужно смотреть, что за ошибка
у выходит обработчик исключений
Что делать если не появляется Oledbconnection?
Проверьте подключение ссылок
OleDB разве не устаревшая технология?
ссылка не работает
Есть на С++ ?
Да
@@FPS.FirePlanetStudio можете показать или скинуть ссылку ?
Есть в описании под видео
@@FPS.FirePlanetStudio спасибо нашел
А можно отправить тебе файл что бы ты посмотрел что там не так?
Просто мы по твоим видео делали, и на С++, и на С# пробовали. И там разные ошибки, в интернете ничего нет, может ты хоть глянешь и поможешь
зачем так утруждаться добавляя новую строку, когда есть созданный в аксесе
Смотря какой функционал нужен
Вот это говнокодер 80 левела . Я человек с ПТУшным образованием и то бы ни когда не написал такой говно код, не говоря уже чтоб его кому, то показывать.
Почему сразу говнокод?
@@user-ws5vc5ex2c Потому что не стоит заниматься механическим копипастом. Все, что он показывает дурно влияет на новичков в программировании. На худой конец мог бы два метода написать в место того, чтоб раздувать код.
Если добавить в столбик ID повторяющиеся число то выдаст ошибку, как сделать что б показало сообщение ?
drive.google.com/file/d/1SXb8K-1BPuttLw2WkM9LNNAYGLq9_mi1/view?usp=sharing