powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Ошибка преобразования даты или времени из символьной строки
25 сообщений из 50, страница 2 из 2
Ошибка преобразования даты или времени из символьной строки
    #39963842
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fkthat
Сон Веры Павловны,

Да, попробовал, по ходу дела, на вьюхах это не срабатывает - для каждого литерального значения план в кеше другой.

Unsafe plan. Нашел, где всё это подробно разжевывается - вот здесь (раздел Ad hoc in action), ну, и в оф. документации . На сервере, где гонялись вышеприведенные примеры, optimize for ad hoc workload=0, у базы Parametrization = Simple.
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39963852
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сон Веры Павловны
fkthat
Сон Веры Павловны,

Да, попробовал, по ходу дела, на вьюхах это не срабатывает - для каждого литерального значения план в кеше другой.

Unsafe plan. Нашел, где всё это подробно разжевывается - вот здесь (раздел Ad hoc in action), ну, и в оф. документации . На сервере, где гонялись вышеприведенные примеры, optimize for ad hoc workload=0, у базы Parametrization = Simple.

Да, все это конечно любопытно, но малоактуально - никто в здравом уме не станет в приложении собирать запрос для сервера конкатенацией строк вместо передачи параметров.
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39963857
Фотография AngelOKES
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fkthat
Да, все это конечно любопытно, но малоактуально - никто в здравом уме не станет в приложении собирать запрос для сервера конкатенацией строк вместо передачи параметров.


И что плохого вы видите в том чтобы собрать строку самому без добавления параметров? Мне лично проще и быстрее собрать строку, чем прописывать и добавлять все нужные параметры, кода километр и выхлопа никакого
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39963873
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AngelOKES
И что плохого вы видите в том чтобы собрать строку самому без добавления параметров? Мне лично проще и быстрее собрать строку, чем прописывать и добавлять все нужные параметры, кода километр и выхлопа никакого

Мда... Века пройдут, а сиквел инжекшен все еще будет живее всех живых :))
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39963874
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AngelOKES
И что плохого вы видите в том чтобы собрать строку самому без добавления параметров? Мне лично проще и быстрее собрать строку, чем прописывать и добавлять все нужные параметры, кода километр и выхлопа никакого
Например, всё хорошо, пока формат даты на сервере и на клиенте совпадает. Даже сейчас попробуй через панель управления выставить американскую локализацию и убедиться, что твой код в принципе продолжает работать и не путает месяц с годом в датах типа 02/03/2020.
Про строки - нужно будет думать об экранировании ограничителей (кавычек или апострофов)
Про числа, нужно думать про правильную интерпретацию десятичного разделителя и разделителей тысяч
Про время - правильную интерпретацию времени суток при формате am/pm
....
В общем, тебя сразу предупреждают о граблях, но ты предпочитаешь на все сначала наступить, видимо
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39963879
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro
Например, всё хорошо, пока формат даты на сервере и на клиенте совпадает. Даже сейчас попробуй через панель управления выставить американскую локализацию и убедиться, что твой код в принципе продолжает работать и не путает месяц с годом в датах типа 02/03/2020.
Кстати, обязательно должно перестать работать, так как в запросе принудительная конвертация из формата 104. То есть программа рассчитана на работу только у пользователей с русской локализацией.
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39963892
Фотография AngelOKES
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro
AngelOKES
И что плохого вы видите в том чтобы собрать строку самому без добавления параметров? Мне лично проще и быстрее собрать строку, чем прописывать и добавлять все нужные параметры, кода километр и выхлопа никакого
Например, всё хорошо, пока формат даты на сервере и на клиенте совпадает. Даже сейчас попробуй через панель управления выставить американскую локализацию и убедиться, что твой код в принципе продолжает работать и не путает месяц с годом в датах типа 02/03/2020.
Про строки - нужно будет думать об экранировании ограничителей (кавычек или апострофов)
Про числа, нужно думать про правильную интерпретацию десятичного разделителя и разделителей тысяч
Про время - правильную интерпретацию времени суток при формате am/pm
....
В общем, тебя сразу предупреждают о граблях, но ты предпочитаешь на все сначала наступить, видимо


больше 20 лет запросы пишу в строке и никаких траблов, про параметизированный запрос я почитал, преимуществ как-то не особо увидел, наоборот только разрастается код, хотя это наверное просто как стиль программирования, кому то нравится так, кому этак, а в целом-то разницы никакой.
А про формат даты я как-то в самом начале проектирования думаю и принудительно ставлю нужный мне формат, вообще никогда проблем не было, ну и как я понял сам проект мне сразу скажет если что-то я не то поставлю (уж черезчур умная машина стала, только вот черезчур слишком, не верит она программисту что тут всё будет хорошо, ан нет, убеди его в этом ))))
Спасибо конечно за советы, но пока практического улучшения я не вижу, не очень люблю когда код раздут в разы, очень нравится минимизировать и не усложнять без надобности, чем прощё, тем лучше
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39963899
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AngelOKES
больше 20 лет запросы пишу в строке и никаких траблов

Это пока кто-нибудь не догадался на 1 апреля тебе какой-нибудь ";delete from blablabla --" в текстбоксе вбить.
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39963904
Фотография AngelOKES
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fkthat
AngelOKES
больше 20 лет запросы пишу в строке и никаких траблов

Это пока кто-нибудь не догадался на 1 апреля тебе какой-нибудь ";delete from blablabla --" в текстбоксе вбить.


Ну что-то вы совсем какую-то дичь пишите ))) такого текстбокса никто делать точно не будет ))))
Или вы буквально поняли, что на форме один текстбокс и пользователь вручную пишет запрос )))) смешной

В целом я ещё разбираюсь, жаль конечно инфы или примеров нормальных нет, или полный примитив или ручное заполнение, приходится каждое свойство и метод просматривать и читать про него
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39963911
Фотография AngelOKES
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите лучше, мне чтобы элемент связывать с БД, на каждый элемент надо создавать отдельное подключение?
Самый упрощённый вариант, это ComboBox и Grid, оба элемента используют одну и ту же таблицу, только для ComboBox надо использовать только одну колонку и она же будет являться фильтром для отображения данных, можно ли это всё завязать в конструкторе с одним подключением или на каждый элемент нужен свой запрос, просто никак не могу найти где мне можно изменить запрос или хотя бы фильтр отображения
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39963918
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
AngelOKES
больше 20 лет запросы пишу в строке
Вероятно тут ошибка. Не 20 лет, а 20 дней
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39963922
Фотография AngelOKES
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Весёлые тут ребята и очень отзывчивые
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39963962
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AngelOKES
В целом я ещё разбираюсь

Заметно.
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39963975
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fkthat
Да, все это конечно любопытно, но малоактуально - никто в здравом уме не станет в приложении собирать запрос для сервера конкатенацией строк вместо передачи параметров.

Там есть интересная информация между строк. Из неё следуют любопытные и не совсем навскидку очевидные выводы - например, о том, что для строковых параметров в общем случае не нужно использовать метод AddWithValue, т.к. он для параметра устанавливает размер, равный размеру строки параметра. Если один и тот же запрос вызывается много раз, и длины параметров разные, то для каждого вызова с не встречавшейся ранее длиной параметра будет новая запись в кэше планов. Параметризованная (prepared), но отдельная.
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39964050
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
удивительное рядом, человек 20 лет программирует и не сталкивался с проблемами преобразования типов в строку и обратно, особенно дату и время, пишет о том как замечательно колхозить запросы и т.д.
после 20 лет программирования, это вы должны нас учить, как и что делать. А по факту, я бы даже года не дал.
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39964069
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сон Веры Павловны
Из неё следуют любопытные и не совсем навскидку очевидные выводы - например, о том, что для строковых параметров в общем случае не нужно использовать метод AddWithValue, т.к. он для параметра устанавливает размер, равный размеру строки параметра. Если один и тот же запрос вызывается много раз, и длины параметров разные, то для каждого вызова с не встречавшейся ранее длиной параметра будет новая запись в кэше планов. Параметризованная (prepared), но отдельная.

А вот это вот реально интересно. Надо будет обязательно на выходных отресерчить, как себя EF ведет в этом плане (ADO.NET меня слабо интересует). Записал себе в TODO :)
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39964071
Фотография AngelOKES
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtes
удивительное рядом, человек 20 лет программирует и не сталкивался с проблемами преобразования типов в строку и обратно, особенно дату и время, пишет о том как замечательно колхозить запросы и т.д.
после 20 лет программирования, это вы должны нас учить, как и что делать. А по факту, я бы даже года не дал.


На Visual Studio второй день сижу, до этого просто в других языках писал, там гораздо всё проще и в построении запросов и в отображении данных и в привязках и в обновлении, ну или просто надо перестроить свои мозги, вспоминаю сразу чистый assembler, вот там реально надо мыслить совсем по-другому. Мне бы сейчас просто понять принцип как всё тут устроено, а дальше я уже сам...
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39964083
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AngelOKES
Мне бы сейчас просто понять принцип как всё тут устроено
Принцип, как тут всё устроено уже сказали - делать через параметры.
Тут, скорее, отсутствует желание слушать.

Ну и тащить внутрь контрола прямое взаимодействие с СУБД - это, конечно, тоже из 20-летнего опыта проистекает.
SOLID, Layers - не, не слышали. ЯВУ? Ассемблеровские подходы - наше всё!
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39964220
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В топку WinForms, как вспомню. сердце кровью обливается, а до недавнего времени были еще легаси проекты, с WinForms, формочки хрен знает каких годов, не открывающиеся в дизайнере по причине того, что использую плаформенные компоненты из говна и палок, каждый по 2-4к строк кода. при этом, всё это вынуждает говнякать точно так же, ведь сделать "по хорошему" в ентерпрайз легаси будет еще большей тупостью.

на счет 20 лет, вы бы так и писали, что 20 лет вы занимались чем то другим, тут экстрасенсов нет и такие заявления выглядят сомнительно. Программирование имеет очень прикладной характер, начиная от языков, заканчивая парадигмами и прочим.
Советую прислушаться к мнению тех, кто вам подсказал. Такой подход, который вы используйте в данный момент хорош для того. чтоб сделать макет приложения из говна и палок за максимально быстрый срок, или сделать пример для начинающего и т.д.,
этот метод рабочий, но он создан, чтоб говнякать код, по типу: "И так сойдет".
+ в 2020 году, не стоит разрабатывать проект с нуля на технологии 20 летней давности, есть куча других технологий, если нужно чистый фреймфорк есть WPF, но он не блещет молодостью, но явно поновее (+ теперь есть net.core). Но боюсь вам будет в тройне сложнее, перейти к парадигме декларативного программирования, но попробовать точно стоит.
через еще 20 лет, вы окажитесь в прошлом на 40 лет.
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39964874
Фотография AngelOKES
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtes
Советую прислушаться к мнению тех, кто вам подсказал.


Да особых подсказок-то и не было, кроме как делать строку параметизированной, в своё время как только появился Visual Studio уже ознакомился с этой технологией, 2006 год кажется (хотя могу немного ошибиться), преимуществ я как не видел, так и не вижу, но не в этом дело. Во-основном тут просто срач идёт, впрочем как на любом русско-язычном сайте, можно пойти на пиндосовские форумы или немецкие, но сложно грамотно перевести свой вопрос, чтобы меня действительно поняли. Примеров жаль вообще нет, то что предлагают различные самоучители очень примитивные и практически не решают никаких задач. Основные задачи это организовать работу с БД, чтение, отобображение, взаимодействие с офисными программами и есть проекты связанные с графикой, если есть где хорошая книга или ресурс, где кроме как выводить "Hello World", будет что-то по-серьёзнее
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39964911
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AngelOKES
Да особых подсказок-то и не было
Подсказка о чём?
При 20-летнем опыте ты не смог поставить точку останова и увидеть, чему у тебя равна переменная query? При 20-летнем опыте ты не смог нормально привести код, надергав куски из разных контекстов, и описать кейс возникновения проблемы? При 20-летнем опыте ты не можешь отличить ошибку компиляции от ошибки рантайма? Ну тут сложно подсказывать, остается обсуждать околокодовые вопросы и ждать, когда соизволишь добавить подробностей.
AngelOKES
но сложно грамотно перевести свой вопрос, чтобы меня действительно поняли.
вот-вот. Сложно даже на русском оказалось сформулировать.
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39964928
Фотография AngelOKES
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro
чему у тебя равна переменная query?

Почему не могу, могу, вопрос то мой был не в этом, видать совсем читать лень, лишь бы плюнуть на человека "сверху"

Shocker.Pro
надергав куски из разных контекстов, и описать кейс возникновения проблемы?

Да не нашёл откуда дёргать, нет у меня ни одного примера и тут на форуме ничего найти не смог, как будто с базой никто и не работает

Shocker.Pro
не можешь отличить ошибку компиляции от ошибки рантайма?

А это-то тут при чём? Написал неправильный термин и всё можно в морду плевать?

Shocker.Pro
Сложно даже на русском оказалось сформулировать

Да куда уж проще-то? Ну судя по коментарием мало кто себя вообще утруждает полным прочтением

Вопрос-то был очень просто донельзя просто, ещё больше я его упростить не мог, да и решение я нашёл через полчаса, просто надеялся что тут есть хотя бы один-два адекватных человека и прежде чем плеваться, направят или дадут пример и да я уверен, плевки сейчас и дальше полетят, о том какой я косой и хромой и как это я не могу догадаться о том, о чём тут даже писать впадлу, видать свои тут потом заклюют ))))

Удачного вам дня, думаю тему можно закрыть, нет смысла и дальше тут срать, всем добра!!!
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39964946
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AngelOKES
Почему не могу, могу
могу, но писать в изначальном сообщении не буду - ребята умные, сам и догадаются.
AngelOKES
Да не нашёл откуда дёргать
Поэтому привел свой код, не объясняя, что он находится в разных классах. А что тут такого, это же не имеет значения, не правда ли )
AngelOKES
А это-то тут при чём? Написал неправильный термин и всё можно в морду плевать?
действительно, а зачем писать правильные термины. Подумаешь, что это влияет на понимание вопроса, неважно, тут все телепаты. Зато потом можно будет обвинить отвечающих, что вопрос не читали! )
AngelOKES
Да куда уж проще-то?
действительно проще некуда, напишу всякой ерунды, а важную инфу умолчу, а то слишком сложно получится.


AngelOKES
Вопрос-то был очень просто донельзя просто, ещё больше я его упростить не мог, да и решение я нашёл через полчаса, просто надеялся что тут есть хотя бы один-два адекватных человека и прежде чем плеваться, направят или дадут пример и да я уверен, плевки сейчас и дальше полетят, о том какой я косой и хромой и как это я не могу догадаться о том, о чём тут даже писать впадлу, видать свои тут потом заклюют ))))
В общем, все отвечающие тупые, только автор вопроса на коне, сам спросил, сам решил (неверно решил, кстати, нужно не проверку на нулл ставить, а проверять, не находится ли контрол в дизайн-тайме, и уж тем более не коннектиться внутри контрола к БД). Удачи.
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39964969
Фотография AngelOKES
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro, Какой вы умный, молодец!!!!
...
Рейтинг: 0 / 0
Ошибка преобразования даты или времени из символьной строки
    #39964971
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AngelOKES
Shocker.Pro, Какой вы умный, молодец!!!!
Извините! Это моя слабость!
...
Рейтинг: 0 / 0
25 сообщений из 50, страница 2 из 2
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Ошибка преобразования даты или времени из символьной строки
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]