|
|
|
Пребразование из строки в дату и стиль преобразования
|
|||
|---|---|---|---|
|
#18+
Наблюдаю вот такую картину: Код: sql 1. 2. 3. Код: plaintext 1. 2. 3. Код: sql 1. Код: plaintext 1. Код: sql 1. Код: plaintext 1. 2. Вопрос по первым трем селектам: согласно хелпу , стиль 103 - это маска вида дд/мм/гггг. Почему сервер спокойно переваривает разделители, которых в этой маске нет (дефис и точка)? Вопрос по второму селекту: в стиле 103 год - последние 4 символа. Однако сервер вытащил год из первых 4 символов, а остальные разбирал в порядке, определенном стилем (сначала день, потом месяц) - почему? Третий селект, видимо, ведет себя так же, как и второй, и при попытке преобразовать 31 в месяц выдает ошибку. Здесь вопрос тот же, что и ко второму селекту. По вышеприведенной ссылке, да и вообще в гугле ответов на эти вопросы не нашел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2017, 04:19:20 |
|
||
|
Пребразование из строки в дату и стиль преобразования
|
|||
|---|---|---|---|
|
#18+
Стиль даты, давно замечено, что CONVERT() очень лояльно относится ко многим формальным несоответствиям заявленным форматам. С моей точки зрения это нечестно и неправильно. Но могут быть и другие точки зрения... Однако, используя стили и соответствующие им форматы, всегда получите правильный результат. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2017, 12:09:29 |
|
||
|
Пребразование из строки в дату и стиль преобразования
|
|||
|---|---|---|---|
|
#18+
Стиль даты, Потому что эти стили относятся только к преобразованию datetime -> varchar, а вы преобразуете в противоположном направлении. В вашем случае сиквел пробует несколько форматов - сначала указанный в параметре, потом вроде бы еще какие-то, наиболее ходовые - из-за чего иногда трактует части даты не так, как ожидает программист. Если же ничего не подходит, то выкидывает ошибку, да. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2017, 17:45:30 |
|
||
|
|

start [/forum/topic.php?fid=46&fpage=175&tid=1690715]: |
0ms |
get settings: |
6ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
63ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
48ms |
get tp. blocked users: |
2ms |
| others: | 227ms |
| total: | 380ms |

| 0 / 0 |
