|
25 / 25 / 4
Регистрация: 21.01.2019
Сообщений: 407
|
|||||||||||
Как обработать исключение Duplicate entry(MySql)19.07.2023, 16:33. Показов 3827. Ответов 69
Метки нет (Все метки)
Есть у меня функция для sql запроса в базу, например такая:
Вопрос в том можно ли как-то обработать это исключение без дополнительного проверочного запроса?
0
|
|||||||||||
| 19.07.2023, 16:33 | |
|
Ответы с готовыми решениями:
69
Как в EF пропускать исключения дубликатов MySqlException: Duplicate entry '1-4' for key 'PRIMARY'
MySQL Error! Duplicate entry '1' for key 'user_id_2' |
|
|
|||||||
| 20.07.2023, 17:16 | |||||||
try .. catch
И еще на command Dispose() нужно вызывать в finally
1
|
|||||||
|
14731 / 9505 / 1363
Регистрация: 21.01.2016
Сообщений: 35,855
|
|
| 20.07.2023, 17:35 | |
|
Andrey-MSK, а зачем так заморочено? Почему не
TransactionScope?
1
|
|
|
25 / 25 / 4
Регистрация: 21.01.2019
Сообщений: 407
|
||||||
| 20.07.2023, 17:39 [ТС] | ||||||
|
Andrey-MSK, Понял, я пробовал command.Dispose() вызывать в finally, но там command просто не видно, ну только, если их вот так объявлять глобально с пустым констркутором в начале:
0
|
||||||
|
14731 / 9505 / 1363
Регистрация: 21.01.2016
Сообщений: 35,855
|
||||||
| 20.07.2023, 17:49 | ||||||
|
firnen_dragon, что-то ты переусложнил всё.
firnen_dragon, только я настоятельно рекомендую использовать параметрические запросы, а не конкатенацию.
2
|
||||||
|
25 / 25 / 4
Регистрация: 21.01.2019
Сообщений: 407
|
|
| 20.07.2023, 17:56 [ТС] | |
|
Usaga, Понял, принял посмотрю, учту, спасибо
0
|
|
|
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
|
|
| 20.07.2023, 18:20 | |
|
0
|
|
|
25 / 25 / 4
Регистрация: 21.01.2019
Сообщений: 407
|
|
| 21.07.2023, 09:19 [ТС] | |
|
kolorotur, name - берется из OpenFileDialog(тобеж это просто название файла без расширения), а description - да тоже вводится пользователем
0
|
|
|
|
|
| 21.07.2023, 09:29 | |
|
Нашел статейку по TransactionScope - Инфраструктура System.Transactions в мире .NET
1
|
|
|
25 / 25 / 4
Регистрация: 21.01.2019
Сообщений: 407
|
||||||
| 21.07.2023, 10:17 [ТС] | ||||||
|
Andrey-MSK, кстати, чтоб command.Dispose() не вызывать в finaly можно в принципе команды в юзинг обернуть и убрать catch (MySqlException mysqlEx), потомоу что Exception вроде как все исключения отлавливает в том числе и связанные с MySql:
0
|
||||||
|
14731 / 9505 / 1363
Регистрация: 21.01.2016
Сообщений: 35,855
|
|
| 21.07.2023, 10:26 | |
|
firnen_dragon, я вроде бы пример привёл более лаконичный) Где портянка catch'ей с finally в конце не нужны)
1
|
|
|
|
||||
| 21.07.2023, 10:29 | ||||
![]()
1
|
||||
|
25 / 25 / 4
Регистрация: 21.01.2019
Сообщений: 407
|
|
| 21.07.2023, 10:41 [ТС] | |
|
Usaga, Да у меня просто огромный класс для работы с MySql где куча подобных методов, которые я уже вчера начал переписывать по подобию тех примеров которые привел Andrey-MSK, и я там вроде понял как все работает, ваш пример я тоже разобрал, но в нем мне не все понятно пока, например тоже не понял почему не нужен try-catch и как в таком случае отлавливаются исключения.
0
|
|
|
14731 / 9505 / 1363
Регистрация: 21.01.2016
Сообщений: 35,855
|
||
| 21.07.2023, 11:01 | ||
|
0
|
||
|
|
||||||
| 21.07.2023, 11:14 | ||||||
|
Usaga, Хмммм.... Ну вроде как проще сделать на месте
0
|
||||||
|
14731 / 9505 / 1363
Регистрация: 21.01.2016
Сообщений: 35,855
|
|
| 21.07.2023, 11:21 | |
|
Andrey-MSK, и это надо будет везде, где есть обращения к СУБД?) А если забыли?) Не проще вообще этого не делать нигде, кроме одного места?)
Более того: практическая польза этого кода какая, если он просто перевыбрасывает исключения, теряя при это часть стека вызовов?)
0
|
|
|
|
|
| 21.07.2023, 11:30 | |
|
0
|
|
|
25 / 25 / 4
Регистрация: 21.01.2019
Сообщений: 407
|
|
| 21.07.2023, 11:35 [ТС] | |
|
Usaga, Это получается я могу написать подобным образом как вы показали здесь?https://learn.microsoft.com/en... ew=net-7.0 в APP (если речь о WPF) и все исключения со всего приложения будут попадать туда? звучит как очень мощное заклинание
1
|
|
|
14731 / 9505 / 1363
Регистрация: 21.01.2016
Сообщений: 35,855
|
|
| 21.07.2023, 11:39 | |
|
Andrey-MSK, firnen_dragon, речь об этом: https://learn.microsoft.com/en... ew=net-7.0
Добавлено через 1 минуту Есть ещё такое событие, из той же оперы: тыц
2
|
|
|
25 / 25 / 4
Регистрация: 21.01.2019
Сообщений: 407
|
|
| 21.07.2023, 11:40 [ТС] | |
|
Тут вот во втором ответе для wpf(в APP) перехват глобальный реализован:https://stackoverflow.com/ques... pplication
Интересно конечно
0
|
|
|
|
|
| 21.07.2023, 11:42 | |
|
firnen_dragon, Хмммм, итерееесноооо... Но придется писать несколько вариантов Exception (можно наверное через switch попробовать) в методе перехвата, для SQL, Application ну и что там ещё надо. Что-бы выдавала красивые сообщения, согласно возможностей исключения...
0
|
|
| 21.07.2023, 11:42 | |
|
Duplicate entry SqlExceptionHelper.logExceptions Duplicate entry Duplicate entry '28' for key 'id_u' 'Duplicate entry '0' for key 'PRIMARY'' Ошибка Duplicate entry '10' for key 1 Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства.
Жизнь действительно предъявляет каждому. . .
|
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
|
Лето уходит
kumehtar 17.08.2026
|
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
|
|
Перемещение строк из ТЧ в другой документ с учетом текущего пробега
Maks 17.08.2026
Реализация из решения ниже выполнена на примере нетипового документа "Автозапчасти", с ТЧ "Шины".
За основу взят алгоритм отсюда: https:/ / www. cyberforum. ru/ blogs/ 359708/ 10838. html
Задача: . . .
|
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
|
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет:
1. Использовать системное время и дату,
2. Есть возможность вводить время и дату вручную.
3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
|
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber.
Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
|