С Новым годом! Форум программистов, компьютерный форум, киберфорум
C#: Web, ASP.NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.76/29: Рейтинг темы: голосов - 29, средняя оценка - 4.76
0 / 0 / 0
Регистрация: 17.01.2018
Сообщений: 13
1

Изменение значений в таблицах с DateTimePicker

26.04.2021, 18:38. Показов 5988. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
На форме есть две связанные таблицы. При попытке изменить записи, в любой из них, выскакивает ошибка связанная с DateTimePicker
При загрузке формы для изменения договора появляется ошибка про DateTime
А при загрузке формы изменения работы в договоре появляется ошибка про индекс 0
Миниатюры
Изменение значений в таблицах с DateTimePicker   Изменение значений в таблицах с DateTimePicker   Изменение значений в таблицах с DateTimePicker  

Изменение значений в таблицах с DateTimePicker  
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.04.2021, 18:38
Ответы с готовыми решениями:

Изменение значений dateTimePicker
Может это покажется смешным, но как можно изменить значения даты, месяца и года для dateTimePicker?...

Изменение значений dateTimePicker
Ребята, а не могли бы вы мне помочь с проблеомой на такую тему??? У меня есть datetimepicker я...

Изменение значений полей в 2х таблицах ADO
Доброе время суток, подскажите пожалуйста как можно выполнить задачу - имеются 2 таблицы, в первой...

Автоматическое изменение в таблицах
Нужно создать процедуру, с помощью который, при заказе автомобиля и указанном количестве в заказе,...

11
0 / 0 / 0
Регистрация: 17.01.2018
Сообщений: 13
26.04.2021, 18:47  [ТС] 2
Ранее, для изменения, я делал все по точно такой же схеме. Переменные, которые отвечают за Дату, у меня в string. Я использую их для свойства CellClick
0
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
26.04.2021, 18:56 3
Шарп не может преобразовать то, что Вы ему подсовываете как строковую дату, в datetime.
Зачем Вы пытаетесь работать с датами как со строками ?

Добавлено через 1 минуту
Цитата Сообщение от Lakrica Посмотреть сообщение
Ранее, для изменения, я делал все по точно такой же схеме.
Это, конечно, очень мощный аргумент

Добавлено через 2 минуты
Цитата Сообщение от Lakrica Посмотреть сообщение
выскакивает ошибка связанная с DateTimePicker
Ошибка связана не с пикером, а с корявыми попытками работы с датами как со строками с невинной уверенностью в том, что шарп сам разберется что куда
0
0 / 0 / 0
Регистрация: 17.01.2018
Сообщений: 13
26.04.2021, 19:00  [ТС] 4
После того как я переношу данные на форму для изменения, на кнопку вызова метода изменения у меня прописано следующее - dateTimePicker1.Value.ToString("yyyy-MM-dd")
Так или иначе, я повторюсь, что сталкиваюсь с этой проблемой впервые и мне интересно было бы найти решение

Добавлено через 3 минуты
Цитата Сообщение от MsGuns Посмотреть сообщение
Ошибка связана не с пикером, а с корявыми попытками работы с датами как со строками с невинной уверенностью в том, что шарп сам разберется что куда
Вы хотите сказать, что в обоих случаях ошибки берутся только из-за моей работы с датой в string формате?
Они пишут об одном и том же разными словами?
0
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
26.04.2021, 19:04 5
Lakrica,
Вы видите разницу между преобразованием datetime в строку указанного формата и наоборот ?
А если видите, то почему Ваши строки содержат дату совсем в другом формате ?

Дата-время вообще интересный тип данных. Он очень многолик и зависит от множества факторов, например, от локалей.

Именно поэтому не рекомендуется держать в базе даты в строковом формате. Хотя бы потому, что такие данные правильно не сортируются.

Добавлено через 39 секунд
Цитата Сообщение от Lakrica Посмотреть сообщение
Вы хотите сказать, что в обоих случаях ошибки берутся только из-за моей работы с датой в string формате?
Они пишут об одном и том же разными словами?
Да, именно это я и хотел сказать

Добавлено через 1 минуту
Цитата Сообщение от MsGuns Посмотреть сообщение
из-за моей работы с датой в string формате
Неверная формулировка. Это Вы думаете, что дата у вас в стринге, а на самом деле там то, что шарп не воспринимает как дату.
0
0 / 0 / 0
Регистрация: 17.01.2018
Сообщений: 13
26.04.2021, 19:05  [ТС] 6
Цитата Сообщение от MsGuns Посмотреть сообщение
Именно поэтому не рекомендуется держать в базе даты в строковом формате.
В MySQL Даты записаны в формате DATE
0
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
26.04.2021, 19:17 7
Если уж Вам припечатало работать со строковыми датами, то потрудитесь написать методы, которые будут преобразовывать Ваши "даты-строки" в datetime им обратно. И делайте обращения к этим методам для присвоения тому же пикеру значения либо наоборот, присвоения значений пикера к Вашим "дата-строкам".
Но, повторюсь, от граблей, связанных со строковым хранения дат в БД, это не спасет.

Добавлено через 7 минут
Если Data_sdachi у Вас - поле, извлеченное из НД, полученнного из мускула и не кастовое (сам запрос Вы показать не удосужились), то оно явно не стринг. И с какой же радости Вы пытаетесь его запихнуть в стринговое свойство пикера ?

ЗЫ. Тип сервера абсолютно не играет рояли - нативные типы данных провайдер сконвертит в те, которые понимает "клиент", в данном случае ADO. Хоть Oracle, хоть MySQL, хоть MS SQL, хоть PostgreSQL, хоть баба Яга - Ваш код получит datetime.

Добавлено через 1 минуту
Цитата Сообщение от Lakrica Посмотреть сообщение
В MySQL Даты записаны в формате DATE
А если так, а это грамотно, то и работайте с датами как с datetime/date. Зачем Вы лепите сюда строки ?
0
0 / 0 / 0
Регистрация: 17.01.2018
Сообщений: 13
26.04.2021, 19:37  [ТС] 8
Получается всё нужно менять с самого начала?
Конвертировать дату на форму изменения не вышло, ошибка такая же
dateTimePicker1.Value =Convert.ToDateTime(Dog2.Data_sdachi);

Добавлено через 2 минуты
Просто, для меня это в новинку, ибо в этой же программе, все остальные формы редактирования с датой - работают без проблем
Нет никаких вариантов не менять string формат для даты?
0
Почтальон
26.04.2021, 19:53
  #9

Не по теме:

Цитата Сообщение от Lakrica Посмотреть сообщение
Нет никаких вариантов не менять string формат для даты?
Если вы работаете с датой, то и работать должны с датой. Строки это для удобства отображения.

0
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
26.04.2021, 20:06 10
Цитата Сообщение от Lakrica Посмотреть сообщение
dateTimePicker1.Value =Convert.ToDateTime(Dog2.Data_sdachi);
Что у Вас в Data_sdachi ? Вы покажете, наконец, что у Вас за Dog2 ?

Добавлено через 5 минут
Цитата Сообщение от Lakrica Посмотреть сообщение
Просто, для меня это в новинку, ибо в этой же программе, все остальные формы редактирования с датой - работают без проблем
Откуда известно, что у Вас в "остальных формах" ? Вы ведь, как выпускница института благородных девиц, посещая гинеколога, показываете ему лишь ноги до колена ? Ни кода, ни структуры БД - ничегошеньки !
Вы серьезно полагаете, что по цвету Ваших глаз и форме ушей доктор сможет определить диагноз Вашего фаренгита/отита/бронхита/стоматита и т.д. ?
0
0 / 0 / 0
Регистрация: 17.01.2018
Сообщений: 13
26.04.2021, 20:21  [ТС] 11
Выше я скидывал эти таблицы, расположенные на форме
Dog2 - это название формы, Data_sdachi - это название string переменной, в которую я заношу данные через свойство CellClick, компонента Datagridview
Миниатюры
Изменение значений в таблицах с DateTimePicker  
0
0 / 0 / 0
Регистрация: 17.01.2018
Сообщений: 13
26.04.2021, 20:38  [ТС] 12
На остальных подобных формах всё также
Есть переменная для даты и она стринг и используется она в целлклик, а после подгружается через datetimepicker.Text на форму, где я её редактирую, в дальнейшем

Добавлено через 13 минут
Так, ладно, спасибо большое за обсуждение этой проблемы
Ошибку я нашёл сам
Нужно было быть внимательнее мне и тщательное проверить метод вывода таблицы
0
26.04.2021, 20:38
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.04.2021, 20:38
Помогаю со студенческими работами здесь

Изменение данных таблицах
Привет ФорумЧани! Подскажите пожалуйста как мне изменить данные не в связанных таблицах: У меня...

Изменение запроса с dateTimePicker
Не могу понять в чем проблема. При изменении dateTimePicker таблица не меняется. Может нужно...

Изменение данных в двух таблицах
Коллеги, добрый день! Есть 2 таблицы: Tab_users и Tab_mailboxes. Нужно: внести изменения в обе...

DataGridView изменение данных в таблицах
Здравствуйте, помоги, начал изучать C# и не могу понять как изменять данные в таблицах из...

Запрос на изменение информации во всех таблицах БД 97
Доброго времени суток! Помогите пожалуйста сделать следующее: БД на Access 97 много разных...

Изменение цены сразу в трех таблицах
Существуют 3 таблицы со следующими полями: Orders: idOrder (ключ), Price, status (новый/выполнен);...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Книги и учебные ресурсы по C#
InfoMaster 08.01.2025
Базовые учебники и руководства Одной из лучших книг для начинающих является "C# 10 и . NET 6 для начинающих" Эндрю Троелсена и Филиппа Джепикса . Книга последовательно раскрывает основные концепции. . .
Что такое NullReferenceEx­­­ception и как исправить?
InfoMaster 08.01.2025
NullReferenceException - одно из самых распространенных исключений, с которым сталкиваются разработчики на C#. Это исключение возникает при попытке обратиться к членам объекта (методам, свойствам или. . .
Что такое Null Pointer Exception (NPE) и как это исправить?
InfoMaster 08.01.2025
Null Pointer Exception (NPE) - это одно из самых распространенных исключений в Java, которое возникает при попытке использовать ссылку на объект, значение которой равно null. Это исключение относится. . .
Русский язык в консоли C++
InfoMaster 08.01.2025
При разработке программ на C++ одной из частых проблем, с которой сталкиваются русскоязычные программисты, является корректное отображение кириллицы в консольных приложениях. Эта проблема особенно. . .
Telegram бот на C#
InfoMaster 08.01.2025
Разработка ботов для Telegram стала неотъемлемой частью современной экосистемы мессенджеров. C# предоставляет мощный и удобный инструментарий для создания разнообразных ботов, от простых. . .
Использование GraphQL в Go (Golang)
InfoMaster 08.01.2025
Go (Golang) является одним из наиболее популярных языков программирования, используемых для создания высокопроизводительных серверных приложений. Его архитектурные особенности и встроенные. . .
Что лучше использовать при создании класса в Java: сеттеры или конструктор?
Alexander-7 08.01.2025
Вопрос подробнее: На вопрос: «Когда одновременно создаются конструктор и сеттеры в классе – это нормально?» куратор уточнил: «Ваш класс может вообще не иметь сеттеров, а только конструктор и геттеры. . .
Как работать с GraphQL на TypeScript
InfoMaster 08.01.2025
Введение в GraphQL и TypeScript В современной разработке веб-приложений GraphQL стал мощным инструментом для создания гибких и эффективных API. В сочетании с TypeScript, эта технология. . .
Счётчик на базе сумматоров + регистров и генератора сигналов согласования.
Hrethgir 07.01.2025
Создан с целью проверки скорости асинхронной логики: ранее описанного сумматора и предополагаемых fast регистров. Регистры созданы на базе ранее описанного, предполагаемого fast триггера. То-есть. . .
Как перейти с Options API на Composition API в Vue.js
BasicMan 06.01.2025
Почему переход на Composition API актуален В мире современной веб-разработки фреймворк Vue. js продолжает эволюционировать, предлагая разработчикам все более совершенные инструменты для создания. . .
Архитектура современных процессоров
inter-admin 06.01.2025
Процессор (центральный процессор, ЦП) является основным вычислительным устройством компьютера, которое выполняет обработку данных и управляет работой всех остальных компонентов системы. Архитектура. . .
История создания реляционной модели баз данных, правила Кодда
Programming 06.01.2025
Предпосылки создания реляционной модели В конце 1960-х годов компьютерная индустрия столкнулась с серьезными проблемами в области управления данными. Существовавшие на тот момент модели данных -. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru