powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Английский SSMS + региональные настройки
43 сообщений из 43, показаны все 2 страниц
Английский SSMS + региональные настройки
    #39913659
Vladlmlr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, всем.

Много раз где встречалось, что SSMS должен для отображения даты использовать локальные настройки винды. Так ли это?
С десятичным разделителем прекрасно дружит, достаточно перезапросить запрос после смены в винде.

Менял в обоих английиских SSMS(у меня 12 и 14 стоят) в options->environment->international settings->language с английского на same as windows. Других вариантов там нет (языковых пакетов студии не стоит), винда русская. Без результата.

Если для отображения dd.mm.yyyy нужно ставить русский SSMS, то чем майкрософт это объясняет?

ЗЫ. Конверт просьба не советовать, с ним понятно. Нужно просто для удобства отладки хранимок, порой тяжело читать дату по англицки ;-)
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39913768
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vladlmlr,

дата 2006-03-26 00:00:00 не устраивает, что ли?
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39913778
Vladlmlr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет. Не устраивает. От слова совсем.

А вас устраивает?

Ну кроме: просто привык к формату dmy по жизни.
Крайне "удобно" к примеру скопипастить ее и подать на вход хранимке при дефолтном русском языке и dmy формате.
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39913783
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vladlmlr,

Кто передает дату в формате, отличном от yyyymmdd, рано или поздно начинает страдать.
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39913790
Vladlmlr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Простите, но забудьте про строки. Где у меня написано, что я с датами работаю как со сроками? У меня везде на входе и выходе хранимок дата именно ДАТА.

Люди, простой вопрос: SSMS должен для ОТОБРАЖЕНИЯ ДАТЫ использовать локальные настройки винды или зависит от языка SSMS и не лечится?
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39913818
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VladlmlrА вас устраивает?
Вполне, т.к. это стандарт. Вы программист или бухгалтер, стесняюсь спросить?
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39913832
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vladlmlr,

VladlmlrГде у меня написано, что я с датами работаю как со сроками?

вот тут написано:

Vladlmlr"удобно" к примеру скопипастить ее и подать на вход хранимке

Скопипащенное значение как раз будет строковым литералом.
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39913835
Vladlmlr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гавриленко Сергей Алексеевич, я думал понятно:

Крайне "удобно" к примеру скопипастить ее (ДАТУ) и подать на вход хранимке В SSMS при дефолтном русском языке и dmy формате и ВХОДНОМ ПАРАМЕТРЕ ХРАНИМКИ ТИПА ДАТА.
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39913842
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vladlmlr,

Vladlmlrпримеру скопипастить ее (ДАТУ) и подать на вход хранимкеВы мне пытаетесь доказать, что литерал в кавычках -- это не строка? Типа если написать '20200101' -- то это строка, а если написать @date = '20200101', то '20200101' перестанет быть строкой?

Vladlmlrри дефолтном русском языке и dmy форматеА страдать вы начнете тогда, когда дефотный язык окажется не русским. При этом для строки формата yyyymmdd пофиг, какой установлен язык: этот формат всегда интерпретируется однозначно. Но охота себе усложнять жизнь и расладывать грабельки - на здоровье.
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914133
Vladlmlr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гавриленко Сергей Алексеевич
Vladlmlr,

А страдать вы начнете тогда, когда дефотный язык окажется не русским. При этом для строки формата yyyymmdd пофиг, какой установлен язык: этот формат всегда интерпретируется однозначно. Но охота себе усложнять жизнь и расладывать грабельки - на здоровье.

Вы сильно удивитесь, но не страдаю и не буду страдать, т.к. дататайму=флоату сильно пофиг какой у вас язык. Представляете, там целая часть за дату отвечает, дробная за время ;-) Для этого собственно типы и придуманы, как правильно трактовать байтики.
Мне искренне жаль, людей которые извращают это понятие и любой тип загоняют в строку. В последний раз: в хранимках входной параметр типа дата, выходные поля типа дата.

Весь вопрос только удобства работы в SSMS. Любое уважающее себя приложение должно показывать данные в соответствии с региональными настройками пользователя. Дробный же разделитель соизволили корректно показать (не остались на своей точке и не кричат, что это стандарт). Чем дата хуже?

Поэтому и простой вопрос: SSMS может показать дату не в формате языка интерфеса и у меня глюк требующий лечения?
ИЛИ этот вопрос останется без ответа?

ЗЫ. Ну простите, что привык к английскому интерфейсу и к русской дате.
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914158
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vladlmlr
т.к. дататайму=флоату сильно пофиг какой у вас язык. Представляете, там целая часть за дату отвечает, дробная за время ;-)
Vladlmlr
В последний раз: в хранимках входной параметр типа дата, выходные поля типа дата.
Ага. Особенно для типов date, datetime2 и т.п.

Вы что, всерьез считаете, что клиент транслирует дату во внутренний формат и только потом передет серверу?
Если нет, то каким боком формат отображения даты у клиента может влиять на формат даты, воспринимаемый сервером?
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914174
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vladlmlr,

VladlmlrВы сильно удивитесь, но не страдаю и не буду страдать, т.к. дататайму=флоату сильно пофиг какой у вас язык. Представляете, там целая часть за дату отвечает, дробная за время ;-) Для этого собственно типы и придуманы, как правильно трактовать байтики.
Мне искренне жаль, людей которые извращают это понятие и любой тип загоняют в строку. В последний раз: в хранимках входной параметр типа дата, выходные поля типа дата.Ага, дата = флоат, а еще корабли бороздят космическое пространство, бла-бла-бла. Вы вообще не одупляете, о чем вам пишут.

Когда вы копируте якобы дату из вашего рекордсета, то вы копируете строку. Когда вы подставляете значение даты в значение параметра, вы подставляете строку.

В вызове

Код: sql
1.
exec proc @date = 'то, что вы накопировали из рекордсета'



параметру присваивается именно строка, и именно в этот момент происходит неявная конвертация из строки в тип параметра. И именно в этом месте если в строке задан формат, отличный от yyyymmdd, то при конвертации применяются текущие региональные настройки сессии.

В mssql нет возможности задать литерал типа дата-время, как, например задаются бинарные значения через префикс 0x. И обычно входная дата передается серверу строкой. Я очень удивлюсь, если вы найдете хотя бы одну клиентскую библиотеку, которая сделает такой вызов на сервере, после которого в профайлере будет написано

Код: sql
1.
exec proc @date = 234234.23455666

(т.к. якобы дататайму=флоату)
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914189
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гавриленко Сергей Алексеевич,

да, дата во флоат формате говорит о многом...
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914231
Vladlmlr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гавриленко Сергей Алексеевич

Когда вы копируте якобы дату из вашего рекордсета, то вы копируете строку. Когда вы подставляете значение даты в значение параметра, вы подставляете строку.

В вызове

Код: sql
1.
exec proc @date = 'то, что вы накопировали из рекордсета'



параметру присваивается именно строка, и именно в этот момент происходит неявная конвертация из строки в тип параметра. И именно в этом месте если в строке задан формат, отличный от yyyymmdd, то при конвертации применяются текущие региональные настройки сессии.

Если вы думаете, что это кому то не понятно, жаль. Каждый думает в меру своей испорченности.
Я сталкиваюсь со датой, как со строкой только в SSMS. Ладно бы хоть действительно выдавал в дефолте yyyymmdd, а то или дефисы убирай после копипаста или приводи полностью к русской сессии.
В mssql нет возможности задать литерал типа дата-время, как, например задаются бинарные значения через префикс 0x. И обычно входная дата передается серверу строкой. Я очень удивлюсь, если вы найдете хотя бы одну клиентскую библиотеку, которая сделает такой вызов на сервере, после которого в профайлере будет написано

Код: sql
1.
exec proc @date = 234234.23455666

(т.к. якобы дататайму=флоату)
declare @dt datetime = 1.5
select '1', @dt
select @dt = @dt - 0.5
select '2', @dt
go

CREATE PROCEDURE test @t datetime AS SELECT @t
go

exec test 1.5
exec test '19000102 12:00:00.000'
exec test '1900-01-02 12:00:00.000'

Резалт:
1 1900-01-02 12:00:00.000
2 1900-01-02 00:00:00.000
1900-01-02 12:00:00.000
1900-01-02 12:00:00.000
1900-02-01 12:00:00.000

Наслаждайтесь (отдельно во вложении снимок трейса, где как раз exec test 1.5)
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914241
Vladlmlr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Владислав Колосов
Гавриленко Сергей Алексеевич,

да, дата во флоат формате говорит о многом...

Да. Очень люблю работать с датойтаймом именно как флоат.
Просто прибавить/отнять любое количество дней (целое), любое время накинуть (дробное), откунуть дробную часть(время), получить дату или наоборот откунуть целое и получить время.

Доктор, я болен?
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914435
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vladlmlr
Владислав Колосов
Гавриленко Сергей Алексеевич,

да, дата во флоат формате говорит о многом...

Да. Очень люблю работать с датойтаймом именно как флоат.
Просто прибавить/отнять любое количество дней (целое), любое время накинуть (дробное), откунуть дробную часть(время), получить дату или наоборот откунуть целое и получить время.

Доктор, я болен?
Однозначно. Но каждый обладает правом учиться на своих ошибках, поэтому не смею больше вам мешать приобретать драгоценный опыт.
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914455
Vladlmlr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да признаться в своей пурге тяжело. Но хоть без хамства про оддупляю.
Если бы на ошибку указали конкретно, понял и простил бы.

Может для кого-то будет полезно, а то с такими "гуру": дататайм 8 байтов хранит 4 байта целое - сутки от 1.1.1900, и 4 дробная время,
смолдатайм тоже самое, но 2 + 2. Прекрасно кастится с флоатом и позволяет проводить любые операции над датой, как над флоат и обратно флоат трактовать как дату:

declare @dt datetime = 1
declare @f float = cast(@dt as float)
select 'раз', @dt, @f, cast(@f as datetime), cast(@dt as varbinary(8)), cast(@f as varbinary(8))

select @f = @f + 1.0/24/60/60/300, @dt = @f
select 'два', @dt, @f, cast(@f as datetime), cast(@dt as varbinary(8)), cast(@f as varbinary(8))

резалты:
раз 1900-01-02 00:00:00.000 1 1900-01-02 00:00:00.000 0x0000000100000000 0x3FF0000000000000
два 1900-01-02 00:00:00.003 1,00000003857961 1900-01-02 00:00:00.003 0x0000000100000001 0x3FF000000A5B2BAD

Пальчиком поводите по предпоследнему полю, поймите как хранится дататайм.

Что характерно по теме вопроса НИ СЛОВА ;-(
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914460
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сообщение специально для всех, кто ведется на то, как классно работать с датой через float.

Для работы с датой-временем уже давно сделан необходимый набор функций. На сдачу этот набор функци работает с новыми типами datetime2 и далее по списку.

Товарищ Vladlmlr несет чушь, не слушайте его.
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914462
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vladlmlr

Люди, простой вопрос: SSMS должен для ОТОБРАЖЕНИЯ ДАТЫ использовать локальные настройки винды или зависит от языка SSMS и не лечится?


Он не просто должен, а использует настройки Windows. А вообще - поле даты числовое. Как и в Excel.

Он не просто должен, а использует настройки Windows. Русский SSMS для этого совершенно не нужен. А вообще - поле даты числовое. Как и в Excel.

Вполне себе использую русские региональные настройки. Даты из поля таблицы в строку запроса не копирую - оно мне не сильно-то надо...
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914469
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vladlmlr
Да признаться в своей пурге тяжело.

Если что, напоминаю, что особенно яростное оппонирование началось вот с этого:
Гавриленко Сергей Алексеевич
В mssql нет возможности задать литерал типа дата-время, как, например задаются бинарные значения через префикс 0x. И обычно входная дата передается серверу строкой. Я очень удивлюсь, если вы найдете хотя бы одну клиентскую библиотеку, которая сделает такой вызов на сервере, после которого в профайлере будет написано

Код: sql
1.
exec proc @date = 234234.23455666

(т.к. якобы дататайму=флоату)

Так вот, попробуйте-таки привести пример клиентской библиотеки, у которой в клиентском вызове передается именно datetime, а профайлер показывает передачу числового типа. Мне было бы интересно с такой библиотекой ознакомиться.
Ну, а самому в T-SQL можно делать многое, не являющееся общепринятым, кто ж с этим спорит.
Vladlmlr
Нужно просто для удобства отладки хранимок, порой тяжело читать дату по англицки ;-)

А по-флоатски не тяжело?
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914472
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrF,
AndrFОн не просто должен, а использует настройки Windows
Где написано, что должен именно для дат? Если бы не использовал, то у всех с русской локалью getdate() рисовал бы 15.01.2020. А на машинах с английской локалью - 01/15/2020. Очевидно, что SSMS не рисует тип datetime таким образом.

AndrFА вообще - поле даты числовое.Поле даты -- это набор байт, который сервер интерпретирует как дату. Поле int -- это набор байт, которые сервер интерпретирует как int. Строка -- это набор байт, которые сервер интерпретирует как строку. Так что все поля числовые.
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914482
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гавриленко Сергей Алексеевич
AndrF,
AndrFОн не просто должен, а использует настройки Windows

Где написано, что должен именно для дат? Если бы не использовал, то у всех с русской локалью getdate() возвращал бы 15.01.2020. А на машинах с английской локалью - 01/15/2020. Очевидно, что SSMS не рисует тип datetime таким образом.

Верно. А я что-то стормозил. Рисует 2020-01-16 05:47:16.073. Но видимо так привык, что уже и не замечаю...

Гавриленко Сергей Алексеевич

AndrFА вообще - поле даты числовое.
Поле даты -- это набор байт, который сервер интерпретирует как дату. Поле int -- это набор байт, которые сервер интерпретирует как int. Строка -- это набор байт, которые сервер интерпретирует как строку. Так что все поля числовые.

Число. Вы вполне можете сделать, к примеру PRINT GETDATE()+0.5. Ну можете считать набором байт, если удобно. Который является числом и обрабатывается в соответствии с настройками локали для данного типа поля.

P.S
Можно ведь и побайтно сравнить...
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914496
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrF,

AndrFВы вполне можете сделать, к примеру PRINT GETDATE()+0.5

А в плане (Scalar Operator(getdate()+'1900-01-01 12:00:00.000'))

Еще, к примеру, я могу пнуть ежика, после чего он полетит, но было бы странно после это считать ежика птицей.
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914500
Фотография Shakill
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrF

Число. Вы вполне можете сделать, к примеру PRINT GETDATE()+0.5. Ну можете считать набором байт, если удобно. Который является числом и обрабатывается в соответствии с настройками локали для данного типа поля.

P.S
Можно ведь и побайтно сравнить...


можно ещё написать PRINT '0.5' + 0.5 , вы забыли про неявные преобразования

насчёт побайтно - отличная идея
какой числовой тип соответствует типу datetime? так чтоб хранилось один в один
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914639
Vladlmlr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Наконец-то и до темы вопроса добрались ;-)
Огромное спасибо за это всем не тролям.

AndrF

Верно. А я что-то стормозил. Рисует 2020-01-16 05:47:16.073. Но видимо так привык, что уже и не замечаю...

AndrF, я так и не понял и Вас в двух местах по разному. У вас зависит отображение от региональных настроек? или всегда yyyy-mm-dd?
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914642
Vladlmlr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сон Веры Павловны

Vladlmlr
Нужно просто для удобства отладки хранимок, порой тяжело читать дату по англицки ;-)

А по-флоатски не тяжело?

Ну была бы возможность скопипастить значение дататайма, как флоат, чтобы подать на вход хранимке, пользовался бы вместо стирания дефисов (см. выше).
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914648
Vladlmlr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shakill

какой числовой тип соответствует типу datetime? так чтоб хранилось один в один

Shakill, я уже приводил пример, как реально хранится дататайм. Чтобы хранилось один в один - НЕТ такого типа.
Половина длины байт - дни, половина - время в долях от 24 часов.
Посему и точность 1/300 сек(дататайм) - вес одного битика. См. пример: я прибавил 1/300 и появилась единичка в младших 4 байтах(единичка первого числа в старших 4 осталась ;-).
Там же я и приводил хранение флоата - оно абсолютно другое. НО!!!!!! Так как по факту хранение дататайм это всегда целые дни и дробное время, то ОНО И КАСТИТСЯ КОРРЕКТНО с таким типом ФЛОАТ. И прекрасно и легко работает без вызова функций
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914681
Vladlmlr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Простите не в тему вопроса, но в "тему ветки" дататайм = флоат.
Если понимать это, то можно не только складывать, умножать ;-) даты, но и красиво группировать по временному полю.
Идея проста: в какую часть попадет наше временное поле при умножение его на вес этого интервала в сутках.

declare @TM datetime = '1.1.2020', @dT datetime = 1.0/24/60
declare @T table (TM datetime, V int)

while @TM < '2.1.2020' begin
insert @T values (@TM, 1)
select @TM = @TM + @dT
end

select TM, sum(V) 'S'
from @T
group by TM

declare @r float = 45--интервал в минутах
declare @f float = 60 / @r * 24
select cast(floor(cast(TM as float) * @f) / @f as smalldatetime) [TM], sum(V) 'S'
from @T
group by floor(cast(TM as float) * @f)

select @r= 10, @f = 60 / @r * 24
select cast(cast(cast(TM as float) * @f as int) / @f as smalldatetime) [TM], sum(V) 'S'
from @T
group by cast(cast(TM as float) * @f as int)

Первый резалт ожидаемо даст все 1440 строк с суммой 1.
Второй корректно разобъет по 45 минут и даст 32 строки с суммой по 45.
И если понять как это, то можно для интервалов (5, 10, 15, 20, 30... ) которые дадут "целый" вес можно функцию убрать, а кастить прямо к инту (резалт 3).

И магия не в поминутных исходных данных, если понять.
И конечно не в круглых интервалах, хоть 57 минут поставьте для ВТОРОГО резалта.

ЗЫ. Очень жду ответа от AndrF по теме вопроса.
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914717
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vladlmlr
но и красиво группировать по временному полю.
Всю красоту уже давно придумали, причем не привязанную только к datetime:
Код: sql
1.
2.
3.
select dateadd(minute, (datediff(minute, '1900', TM) / 45) * 45, '1900') [TM], sum(V) 'S'
from @T
group by datediff(minute, '1900', TM) / 45
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914721
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пока с очередной версией сервера MS вашу секту лавочку любителей datetime = float не прикроют. C datetime2 уже прикрыли. Но вы упорно продолжаете раскладывать грабли на все эти случаи для тех, кто будет потом поддерживать ваш чудо-код и не дай бог портировать его под другие типы даты.
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914733
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Профессиональная разработка должна производиться документированными средствами. Дома делайте что хотите, любые "лайфхаки".
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914738
Vladlmlr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
invm
Vladlmlr
но и красиво группировать по временному полю.
Всю красоту уже давно придумали, причем не привязанную только к datetime:
Код: sql
1.
2.
3.
select dateadd(minute, (datediff(minute, '1900', TM) / 45) * 45, '1900') [TM], sum(V) 'S'
from @T
group by datediff(minute, '1900', TM) / 45


Я разве против функций. Каждый кузнец своего счастья. Просто на больших выборках вызов функций даст свою копеечку к нагрузке.
Ну уж и для чистоты: объявите дату тайм переменную, положите в нее НОЛЬ, а то константу 1900 крайне рисковано использовать, вдруг выйдит ужасный СКЛ с другой точкой отсчета? ;-)

invm, ну пожалуйста, у Вас SSMS юзает формат даты винды для отображения даты?
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914744
Vladlmlr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гавриленко Сергей Алексеевич
Пока с очередной версией сервера MS вашу секту лавочку любителей datetime = float не прикроют. C datetime2 уже прикрыли. Но вы упорно продолжаете раскладывать грабли на все эти случаи для тех, кто будет потом поддерживать ваш чудо-код и не дай бог портировать его под другие типы даты.

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

Владислав Колосов
Профессиональная разработка должна производиться документированными средствами. Дома делайте что хотите, любые "лайфхаки".

Простите, стесняющийся бухгалтер, но ваши сообщения крайне полезны и информативны ;-)
Хоть одно бы слово в тему. Например, у вас больной комп, а я ставлю в винде dd/mm/yyyy и даже не перегружая SSMS вижу резалт, потом обратно dd.mm.yyyy и тоже вижу.
От себя я пока только про десятичный разделитель так могу сказать.
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914752
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vladlmlr

Люди, простой вопрос: SSMS должен для ОТОБРАЖЕНИЯ ДАТЫ использовать локальные настройки винды или зависит от языка SSMS и не лечится?

ни от чего это не зависит.
SSMS показывает дату всегда в виде yyyy-mm-dd.
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914754
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vladlmlr,

грид отображает даты в универсальном ISO формате, а не в национальном. Так более информативно?
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914755
Vladlmlr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Yasha123
Vladlmlr

Люди, простой вопрос: SSMS должен для ОТОБРАЖЕНИЯ ДАТЫ использовать локальные настройки винды или зависит от языка SSMS и не лечится?

ни от чего это не зависит.
SSMS показывает дату всегда в виде yyyy-mm-dd.

Спасибо, добрый человек.
Офигеть, в голове не укладывается. Простите, это точно? Может вы, такой же "счастливчик", как я.
Чем это майкрософт может объяснить?
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914762
Vladlmlr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Владислав Колосов
Vladlmlr,

грид отображает даты в универсальном ISO формате, а не в национальном. Так более информативно?

На много информативнее всего предыдущего. Я бы конечно спросил у вас, чем так дата по сравнению с запятой провинилась. Но боюсь, вы так любите стандарты.

У меня предложение для Glory: в топе вопросов №8 там тем более точки нет ;-) можно написать?: SSMS показывает дату всегда в виде yyyy-mm-dd

Люди, а так было всегда? С СКЛ 2000-2005 тоже?
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914767
baracs
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vladlmlr
Владислав Колосов
Vladlmlr,

грид отображает даты в универсальном ISO формате, а не в национальном. Так более информативно?
Я бы конечно спросил у вас, чем так дата по сравнению с запятой провинилась. Но боюсь, вы так любите стандарты.
Он любит общепринятые стандарты, а вы - свои собственные.
Второе гораздо страшнее.
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914770
Фотография PsyMisha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vladlmlr

Да. Очень люблю работать с датойтаймом именно как флоат.
Просто прибавить/отнять любое количество дней (целое), любое время накинуть (дробное), откунуть дробную часть(время), получить дату или наоборот откунуть целое и получить время.

Доктор, я болен?


Уух, вот это жесть, 18+, Explicit Content , давно так не смеялся, спасибо!
Бедные, бедные люди, которые потом в дальнейшем будут все это сопровождать
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914771
iiyama
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vladlmlr,
прошу прощения что влезаю, но когда читаю вопросы на форуме, то невольно пытаюсь понять цель спрашивающего.
Не могу понять, у вас цель дискутировать, получить практическую пользу, иное?
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914774
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VladlmlrЧем это майкрософт может объяснить?Вам сюда: https://support.microsoft.com/en-in
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914831
Vladlmlr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
iiyama
Vladlmlr,
прошу прощения что влезаю, но когда читаю вопросы на форуме, то невольно пытаюсь понять цель спрашивающего.
Не могу понять, у вас цель дискутировать, получить практическую пользу, иное?

У меня постоянно точно такой же вопрос к отвечающим.
Ответ на второй день с горем пополам получил. Ведь это был такой сложный вопрос: использует ли SSMS для отображения даты региональные сеттинги винды? Загните пальцы сколько ответов (и сколько из них правильных) было по теме, а сколько выпадов и увода в сторону? Каких только ежиков не обсудили.
Спасибо.
...
Рейтинг: 0 / 0
Английский SSMS + региональные настройки
    #39914837
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Модератор: Vladlmlr,

Раз у вас вопросов по существу больше не осталось, то закрыто.
...
Рейтинг: 0 / 0
43 сообщений из 43, показаны все 2 страниц
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Английский SSMS + региональные настройки
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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