Я уже прилично на ютубе, но впервые оставляю комментарий. Огромное Вам спасибо за данное видео, все понятно, все получилось по вашему примеру и оперативно). Большое спасибо за Вашу работу!
Спасибо что используешь разные элементы и некоторые их свойства в программах, много чего нового благодаря тебе узнал. Было бы конечно еще лучше с формой для добавления новых данных.
Что делать если при загрузке выходит такая ошибка System.InvalidOperationException: "Поставщик "Microsoft.Jet.OLEDB.4.0" не зарегистрирован на локальном компьютере."
Подскажите, пытался сделать фильтр по запросу: "SELECT * FROM [table_name] WHERE comp LIKE '*" + textBox1->Text + "*'", в конечном итоге он не находит ни одного совпадения, какую бы я строку не писал, возможно вместо dbComand->ExecuteReader(); нужно использовать что-то другое?
OleDbDataReader^ dbReader = dbCommand->ExecuteReader(); в этой строке выдает ошибку, что не хватает одного или нескольких параметров, что не так? еще я хочу выводить ячейки не в dataGridView, а просто в label, подойдет ли следующий код label1->Text = dbReader.ToString(); ??
: "Ошибка синтаксиса в инструкции UPDATE." Постоянно выскакивает такая ошибка, в кнопке ИЗМЕНИТЬ String^ qwerty_S = "UPDATE [TableStudents] SET Name='"+ Name +"', Surname='"+ Surname +"', Number="+ Number +" WHERE id=" + ID ; В чём может быть проблема? Пишет, что проблема в синтаксисе...
Почему-то при добавлении записей в таблицу они передаются как DataGridViewTextBoxCell { ColumnIndex=1, RowIndex=7 } кто-нибудь знает как это исправить?
У меня возникла ошибка на запрос по обновлению данных. Пишу ID_MEMBER(Такое название у меня в таблице Access), запрос примерно такой ID_MEMBER=' " +id_member(такое название переменной в которой содержится ID пользователя)+ " ' и другие данные которые параллельно обновляю, но почему то он не обновляет. Убираю запрос на обновление ID пользователя он работает, то есть другие данные обновляет. В чём может ошибка?
Именно ID пользователя не обновляется как поле? Возможно у вас стоят соответствующие настройки в БД, либо в чем то другом ошибка, точнее, к сожалению, не могу подсказать, нужно БД и код смотреть
Очень понятно объяснили, спасибо большое. Но у меня есть вопрос. Мне нужно, что бы я программно (при нажатии на кнопку или как-то по другому) мог варьировать количество столбцов и присваивать им названия (хотя названия не обязательно, можно просто порядковый номер столбца). Вопрос, собственно, как это сделать? Upd. А, всё таки мне нужны названия столбцов и вопрос: можно ли их менять именно в исходном файле через программу?
Можно попробовать это реализовать так, в обработчике нажатия кнопки по созданию столбцов: DataGridViewTextBoxColumn^ column = gcnew DataGridViewTextBoxColumn (); column->Name = “NameColumn”; dataGridView->Columns->Add(column); Тогда добавится один столбец с указанными параметрами. Все что делаем в редакторе, можно сделать через код. Все поля которые указываем, по аналогии с примером Name, можно так же изменить через код.
И так, Господа, возился я пол дня с ошибкой типа System.Data.OleDb.OleDbException (0x80040E10). Её решение в том что если вы используете в таблице символы, например как столбец "name", то его надо взять дополнительно в ординарные кавычки '"name"'. Автор не очень понятно объяснил этот момент на 21:21 .
в таблице Access 15 полей. я хочу добавить новые записи только для 4 полей запрос на добавление написан следующим образом: String^ query = "INSERT INTO [t_personal] VALUES (" + Код + ", " + Фамилия + ", " + Имя + ", " + Отчество + ", " + кодвзв + ")"; Выдаёт ошибку System.Data.OleDb.OleDbException: "Отсутствует значение для одного или нескольких требуемых параметров." Изначально это исключение было создано в этом стеке вызовов: [Внешний код] DBvidbir::MyForm::button_add_Click(System::Object^, System::EventArgs^) в MyForm.cpp [Внешний код] main(array^) в MyForm.cpp -= Помогите правильно написать запрос на добавление с учётом указанных выше условий =-
На сколько я знаю, в данную таблицу нельзя вставить данные по не всем полям, можно только добавить данные для всех полей. По крайней мере в этом примере. Вы можете в нужные поля добавить данные, а в остальные добавить какие нибудь константные значений, например «-», «0» или любое другое, которое будет подразумевать пустой значение.
@@FPS.FirePlanetStudio спасибо за Ваш ответ. У меня получилось сделать так как я хотел (добавлять значения только для 4 полей). Проблема была в написании синтаксиса самого запроса. Так что спасибо, Ваш код работает и для моего частного случая.
@@alexkayful Можешь пожалуйста ответить в чем была проблема? У меня сейчас выдает такую же ошибку, я хочу во все поля таблицы записать информацию. Все точно как на видосе описал, но не работает, ошибка как у тебя.
"О окнах" не рассказал, зато "оБ программе" всё ясно. Я в шоке, сколько такие учителя плодят "программистов", которые после первого урока уже создают каналы по программированию, а потом шарятся по настройкам месяцами с поиском кнопки "монетизация".
Вас никто не заставляет смотреть подобные ролики. Лучше дать конструктивные комментарии, чем быть диванным критиком, которых тоже «расплодилось», раз знаете материал лучше.
Возможно дело в версии базы данных или в неправильном объявлении, или может база пуста, причин может быть несколько. Сложно сказать, из за чего так произошло.
Удивительно, уже 2023 год, а таблицу нужно заполнять данными "ручками". Неужели нет визуального элемента (типа DBGrid в Борланде), в котором это реализовано автоматически? И вообще удивительно, что настолько продуманная концепция организации интерфейса Борланда не получила своего развития и воплощения в современных IDE. Где сейчас этот Борланд?
Спасибо огромное! Долго искала и наконец нашла нужный мне материал для курсовой!
pro tip : you can watch series on flixzone. Me and my gf have been using them for watching all kinds of movies lately.
@Jorge Rene yea, have been watching on Flixzone} for months myself :D
Здравствуйте, а у вас на какую тему курсовая
Я уже прилично на ютубе, но впервые оставляю комментарий. Огромное Вам спасибо за данное видео, все понятно, все получилось по вашему примеру и оперативно). Большое спасибо за Вашу работу!
Спасибо, стараемся)
Спасибо, большое. Долгое время мучался с добавлением данных в БД. А вы всё разъяснили и показали в понятном формате
Видосы топ, без воды все ясно и понятно. Это однозначно лайк
Спасибо, стараемся
Спасибо тебе огромное!
Я долгое время старался подключить БД, но всё было зря. Благодаря тебе наконец получилось.😄
Спасибо за видео! Очень понятно всё объяснено, спасибо большое!
Спасибо что используешь разные элементы и некоторые их свойства в программах, много чего нового благодаря тебе узнал. Было бы конечно еще лучше с формой для добавления новых данных.
Что делать если при загрузке выходит такая ошибка System.InvalidOperationException: "Поставщик "Microsoft.Jet.OLEDB.4.0" не зарегистрирован на локальном компьютере."
У меня получилось исправить, так как у меня access 2016 года нужно было писать "Microsoft.Ace.OLEDB.12.0"
Переведи с х64 на х86
Спасибо большое!
Подскажите, пытался сделать фильтр по запросу: "SELECT * FROM [table_name] WHERE comp LIKE '*" + textBox1->Text + "*'", в конечном итоге он не находит ни одного совпадения, какую бы я строку не писал, возможно вместо dbComand->ExecuteReader(); нужно использовать что-то другое?
Круто! Могли бы вы рассказать про дизайн формы? Как можно менять стандарты дизайна? На с++ не смог найти достойные библиотеки.
OleDbDataReader^ dbReader = dbCommand->ExecuteReader();
в этой строке выдает ошибку, что не хватает одного или нескольких параметров, что не так?
еще я хочу выводить ячейки не в dataGridView, а просто в label, подойдет ли следующий код
label1->Text = dbReader.ToString(); ??
Подскажите, а что делать если выдает ошибку "Поставщик Microsoft.Jet.OLEDB.4.0 не зарегистрирован на локальном компьютере"?
Нашел как исправить?
@@artemmovishartemmovish6011вместо 4.0 пишешь 12.0.0
Или просто переключись на X86 платформу: Build(Сборка) -> Configuration Manager
: "Ошибка синтаксиса в инструкции UPDATE."
Постоянно выскакивает такая ошибка, в кнопке ИЗМЕНИТЬ
String^ qwerty_S = "UPDATE [TableStudents] SET Name='"+ Name +"', Surname='"+ Surname +"', Number="+ Number +" WHERE id=" + ID ;
В чём может быть проблема? Пишет, что проблема в синтаксисе...
решил проблему?
Решиль проблему
Cпасибо
А что если путь соединения с БД ошибку выдаёт? Есть ли какой-то способ подключить всю бд, как в С# допустим?
Почему-то при добавлении записей в таблицу они передаются как DataGridViewTextBoxCell { ColumnIndex=1, RowIndex=7 }
кто-нибудь знает как это исправить?
лучший
Блин новая ошибка, Syntax error in string in query expression 'id = '5'.
Data type mismatch in criteria expression.
Добавление и загрузка работают, а вот обновление и удаление не хотят
@@an4ous7 У меня при загрузки ничего не происходит и ошибок нет, у тебя есть дискорд?
@@academai11 вряд ли я смогу помочь, это было очень давно
Спасибо за объяснение. Но при попытки записи в базу создаётся файл ldb, при этом в базу данные не записываются. В чем может быть проблема?
А можно код?) Не для себя, а для Сашки!
Просто муторно переписывать: String^ connect = "provider=Microsoft.Jet.OLEDB.4.0; Data Source=Data.mdb";
У меня возникла ошибка на запрос по обновлению данных. Пишу ID_MEMBER(Такое название у меня в таблице Access), запрос примерно такой ID_MEMBER=' " +id_member(такое название переменной в которой содержится ID пользователя)+ " ' и другие данные которые параллельно обновляю, но почему то он не обновляет. Убираю запрос на обновление ID пользователя он работает, то есть другие данные обновляет. В чём может ошибка?
Именно ID пользователя не обновляется как поле? Возможно у вас стоят соответствующие настройки в БД, либо в чем то другом ошибка, точнее, к сожалению, не могу подсказать, нужно БД и код смотреть
@@FPS.FirePlanetStudio спасибо большое и правда какая то ерунда была в таблице, может из за того что ID_MEMBERS был связан с другой таблицей?
@@FPS.FirePlanetStudio а нет из за того что связаны ни как не влияет на работоспособность
Исключение не обработано!
System.Data.OleDb.OleDbException: "Недопустимое имя файла."
Как решить проблемку?
Возможно, подключить компонент для работы с данными в ссылках.
Очень понятно объяснили, спасибо большое. Но у меня есть вопрос. Мне нужно, что бы я программно (при нажатии на кнопку или как-то по другому) мог варьировать количество столбцов и присваивать им названия (хотя названия не обязательно, можно просто порядковый номер столбца). Вопрос, собственно, как это сделать?
Upd. А, всё таки мне нужны названия столбцов и вопрос: можно ли их менять именно в исходном файле через программу?
Можно попробовать это реализовать так, в обработчике нажатия кнопки по созданию столбцов:
DataGridViewTextBoxColumn^ column = gcnew DataGridViewTextBoxColumn ();
column->Name = “NameColumn”;
dataGridView->Columns->Add(column);
Тогда добавится один столбец с указанными параметрами.
Все что делаем в редакторе, можно сделать через код. Все поля которые указываем, по аналогии с примером Name, можно так же изменить через код.
А как убрать повторную загрузку если нажать два раза на кнопу загузки то и загрузится два раза тоесть есл в бд 2 строки то в таблице проги уже 4
Нужно очистить данные перед загрузкой. Если вывод из бд идёт напрямую в dataGridView, то просто очистить в ней строки
Скажите, а как подключиться к БД с расширением *accdb? К *mdb всё нормально, а здесь не получается.
Вам нужно саму бд открыть и сохранить заново в нужном формате.
указать более новый провайдер
Ths
И так, Господа, возился я пол дня с ошибкой типа System.Data.OleDb.OleDbException (0x80040E10). Её решение в том что если вы используете в таблице символы, например как столбец "name", то его надо взять дополнительно в ординарные кавычки '"name"'. Автор не очень понятно объяснил этот момент на 21:21 .
Стоит заметить, есть и моя ошибка потому что не досмотрел до 26:00 , но всё же, думаю, такие вещи надо обговаривать сразу же
в таблице Access 15 полей.
я хочу добавить новые записи только для 4 полей
запрос на добавление написан следующим образом:
String^ query = "INSERT INTO [t_personal] VALUES (" + Код + ", " + Фамилия + ", " + Имя + ", " + Отчество + ", " + кодвзв + ")";
Выдаёт ошибку
System.Data.OleDb.OleDbException: "Отсутствует значение для одного или нескольких требуемых параметров."
Изначально это исключение было создано в этом стеке вызовов:
[Внешний код]
DBvidbir::MyForm::button_add_Click(System::Object^, System::EventArgs^) в MyForm.cpp
[Внешний код]
main(array^) в MyForm.cpp
-= Помогите правильно написать запрос на добавление с учётом указанных выше условий =-
На сколько я знаю, в данную таблицу нельзя вставить данные по не всем полям, можно только добавить данные для всех полей. По крайней мере в этом примере. Вы можете в нужные поля добавить данные, а в остальные добавить какие нибудь константные значений, например «-», «0» или любое другое, которое будет подразумевать пустой значение.
@@FPS.FirePlanetStudio спасибо за Ваш ответ. У меня получилось сделать так как я хотел (добавлять значения только для 4 полей). Проблема была в написании синтаксиса самого запроса. Так что спасибо, Ваш код работает и для моего частного случая.
@@alexkayful Можешь пожалуйста ответить в чем была проблема? У меня сейчас выдает такую же ошибку, я хочу во все поля таблицы записать информацию. Все точно как на видосе описал, но не работает, ошибка как у тебя.
"О окнах" не рассказал, зато "оБ программе" всё ясно. Я в шоке, сколько такие учителя плодят "программистов", которые после первого урока уже создают каналы по программированию, а потом шарятся по настройкам месяцами с поиском кнопки "монетизация".
Вас никто не заставляет смотреть подобные ролики. Лучше дать конструктивные комментарии, чем быть диванным критиком, которых тоже «расплодилось», раз знаете материал лучше.
@@FPS.FirePlanetStudio Ну да, ну да... Диз и в Бан, умник.
@@shapelvm, дело ваше
ахахаха, туповатый ты однако@@shapelvm
Что делать, если база не подключается, но ошибки не выдает?
Возможно дело в версии базы данных или в неправильном объявлении, или может база пуста, причин может быть несколько. Сложно сказать, из за чего так произошло.
@@FPS.FirePlanetStudio Хех, привет, подтянул я свои знания, там прикол был в том, что в новых версиях подключение происходит несколько иначе
@@frozehbrian_4166 подскажите, пожалуйста, как решили проблему?
@@Uvarovavarvara убери return void
Удивительно, уже 2023 год, а таблицу нужно заполнять данными "ручками". Неужели нет визуального элемента (типа DBGrid в Борланде), в котором это реализовано автоматически?
И вообще удивительно, что настолько продуманная концепция организации интерфейса Борланда не получила своего развития и воплощения в современных IDE. Где сейчас этот Борланд?
Можно сделать dataSet, тогда не придется вводить все вручную
чи я щось не розумію це ж СИНТАКСИС с#