|
1 / 1 / 0
Регистрация: 25.09.2021
Сообщений: 21
|
||||||
Проблема вставки/удаления/редактирования данных в подчиненную таблицу26.09.2021, 00:34. Показов 6609. Ответов 40
Метки нет (Все метки)
Пишу тестовую программу на C# (VisualStudio 2019 Enterprise) для работы с базой Access. Связи с двумя таблицами сделаны на уровне МАСТЕРА при работе с компонентами, то есть без личного написания кода. А вот вставку, редактирование, удаление пишу самостоятельно. Прошу обратить внимание на комментарий в исходнике - "// Работает НЕПРАВИЛЬНО!!!!!!!!!!!!!! Надо исправить. " Если можно и несложно, помогите мне исправить ошибки, не переделывая глобально весь проект. Я по шагам потом себе усложняю все задачи и переделаю код в лучший вариант для серьезных проектов. Что сейчас это для самостоятельного разбора и изучения в программирования баз данных на C#. Другие недостатки такие как повторение строк подключения в разных местах - это можно позже исправить и сократить код. Буду благодарен, если реализуете удаление и обновление(редактирование). Я понял, что в случае в связанных с несколькими таблицами мне не реализовать. Нашел в инете гору примеров, но там имена таблиц, полей, и прочее очень схожие, например, имя таблицы и имя поля совпадают или похожи... В результате я не смог воспользоваться их примерами. Очень неудачные примеры. В моем примере все имена отличаются.... Хотя бы даст толчок, чтобы прояснить что и с чем соединять....
0
|
||||||
| 26.09.2021, 00:34 | |
|
Ответы с готовыми решениями:
40
Программа с типизированным файлом с режимами создания, сортировки, поиска по ключу, редактирования, вставки, удаления Добавление данных в подчиненную таблицу Сортировка данных в подчиненную таблицу |
|
296 / 120 / 33
Регистрация: 06.03.2016
Сообщений: 453
|
||||||||
| 28.09.2021, 21:40 | ||||||||
|
Можно средствами БД: дополнительный столбец , где приведено к одному регистру и ограничение UNIQUEи использованием ХП, которые будут при вставке приводить к тому же регистру наш параметр, и потом INSERTить его, а так как значение в столбце должно быть уникально, то вставки не произойдет. Ниже псевдокод (смесь всего подряд))), главное мысль
0
|
||||||||
|
1 / 1 / 0
Регистрация: 25.09.2021
Сообщений: 21
|
||
| 28.09.2021, 21:51 [ТС] | ||
|
0
|
||
|
1 / 1 / 0
Регистрация: 25.09.2021
Сообщений: 21
|
|||||||||||
| 03.10.2021, 22:17 [ТС] | |||||||||||
|
Взял за основу Вашу библиотеку.... Имя DbWork изменил на MyAccess. Проект реализовал с нуля (новая форма и так далее)... В данный момент не получилось.... На форму бросил 2 dataGrid. Связи пока не делал на уровне манипулиций с компонентами. Самое смешное и противное, что я не знаю куда смотреть, где ошибка или почему возникла....
0
|
|||||||||||
|
296 / 120 / 33
Регистрация: 06.03.2016
Сообщений: 453
|
||||||||
| 03.10.2021, 22:24 | ||||||||
|
Тут просто устанавливается источник данных для гридов, а именно конкретные таблицы из dataset
0
|
||||||||
|
1 / 1 / 0
Регистрация: 25.09.2021
Сообщений: 21
|
||
| 03.10.2021, 22:24 [ТС] | ||
|
0
|
||
|
296 / 120 / 33
Регистрация: 06.03.2016
Сообщений: 453
|
|
| 03.10.2021, 22:33 | |
|
Kotik2021, связь чего с чем? Типо при выборе в комбобоксе группы "Принтеры" показываются в таблице только принтеры, хотя в продуктах кроме id группы нет ничего?
0
|
|
|
1 / 1 / 0
Регистрация: 25.09.2021
Сообщений: 21
|
|||
| 03.10.2021, 22:36 [ТС] | |||
|
Добавлено через 2 минуты
0
|
|||
|
296 / 120 / 33
Регистрация: 06.03.2016
Сообщений: 453
|
||
| 03.10.2021, 22:37 | ||
'. Вот и ответ
0
|
||
|
1 / 1 / 0
Регистрация: 25.09.2021
Сообщений: 21
|
|
| 03.10.2021, 22:38 [ТС] | |
|
и ID вообще нет.
Добавлено через 1 минуту Моя таблица так и называется "MyTable1"... Это было нарочно задано, чтобы потом не путаться с именами полей....
0
|
|
|
296 / 120 / 33
Регистрация: 06.03.2016
Сообщений: 453
|
||
| 03.10.2021, 22:39 | ||
|
0
|
||
|
1 / 1 / 0
Регистрация: 25.09.2021
Сообщений: 21
|
|
| 03.10.2021, 22:40 [ТС] | |
|
В MyTable1 есть одно поле ключевое myObject.
0
|
|
|
1 / 1 / 0
Регистрация: 25.09.2021
Сообщений: 21
|
|
| 03.10.2021, 22:41 [ТС] | |
|
0
|
|
|
296 / 120 / 33
Регистрация: 06.03.2016
Сообщений: 453
|
||
| 03.10.2021, 22:45 | ||
|
Добавлено через 1 минуту Я правда не понимаю, что я должен пояснить еще
0
|
||
|
1 / 1 / 0
Регистрация: 25.09.2021
Сообщений: 21
|
||||||||
| 03.10.2021, 23:09 [ТС] | ||||||||
|
Добавлено через 15 минут
0
|
||||||||
|
296 / 120 / 33
Регистрация: 06.03.2016
Сообщений: 453
|
||||||||||||
| 03.10.2021, 23:23 | ||||||||||||
.Fill(DataSet ds, string tableName)
0
|
||||||||||||
|
14371 / 9478 / 1360
Регистрация: 21.01.2016
Сообщений: 35,752
|
|
| 05.10.2021, 05:27 | |
|
Уже вторая страница заканчивается... Может стоит уже прекратить сношаться с устаревшим двадцать лет назад механизмом DataSet'ов, создать нужные классы, описывающие результаты выборок, и руками их прочитать из DataReader'а в коллекцию нужного типа? Тот же
DataGridView прекрасно умеет строить гриды по List<T>.
0
|
|
|
296 / 120 / 33
Регистрация: 06.03.2016
Сообщений: 453
|
||||||
| 05.10.2021, 08:59 | ||||||
|
Ok
0
|
||||||
|
|
||||||
| 11.10.2021, 11:02 | ||||||
|
ipsorokin, кто вас так научил ридером пользоваться?
Или если пишете для примера кратко, то уж делайте это правильно...
1
|
||||||
|
296 / 120 / 33
Регистрация: 06.03.2016
Сообщений: 453
|
|
| 11.10.2021, 11:10 | |
|
Andrey-MSK, я им не пользуюсь))
Отличия заметил только в использовании using.Как приводить к типу - не столь принципиально. А вот тут dataReader["WorkCode"] as string ?? "", я даже не знаю... Вроде бы значение NULL не будет выводиться как "NULL", а будет "", смысл проверки?
0
|
|
|
14371 / 9478 / 1360
Регистрация: 21.01.2016
Сообщений: 35,752
|
||||||
| 11.10.2021, 11:12 | ||||||
DbNull.Value.
0
|
||||||
| 11.10.2021, 11:12 | |
|
Внесение данных из списка в подчиненную таблицу Ошибка при сохранении данных в подчиненную таблицу Создание базы данных с функциями ввода, вывода, редактирования, удаления или добавления данных Пример добавления, удаления и редактирования данных в БД *.mbd Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Из невошедшего на форум (диалог с ИИ-гугла)
zorxor 29.07.2026
А вот, что интересно, сказал мне ИИ-гугла:
Этот текст — эмоциональный пост пользователя под ником zorxor на интернет-форуме (вероятно, посвященном мистике, непознанному или альтернативной науке). . . .
|
Был праздник вчера, а я и не знал.
kumehtar 28.07.2026
27. 07. 2026г. Intel Core 2 Duo исполнилось 20 лет
Новости компьютерного мира и их обсуждение (4)
Салют, шампанское, овации!
:drink:
|
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр.
Дословно, отклонённая. . .
|
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы
Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
|
|
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
|
Очистка реквизитов и табличных частей документа при копировании (вариант 2)
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2.
Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
|
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
|
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
|