ΠŸΠΎΠ½ΡΡ‚ΠΈΠ΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ являСтся Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ для любой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅ΠΉ с хронологичСскими Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ Π½Π΅ являСтся ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ. Для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‰ΠΈΡ…ΡΡ с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π² 1Π‘, критичСски Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Ρ€Π°Π·Π½ΠΈΡ†Ρƒ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ°Π»Π΅Π½Π΄Π°Ρ€Π½ΠΎΠΉ Π΄Π°Ρ‚ΠΎΠΉ ΠΈ Ρ‚ΠΎΡ‡Π½Ρ‹ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ срСзом. Ошибки Π² ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ†ΠΈΠΈ этого Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠΎΠ³ΡƒΡ‚ привСсти ΠΊ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΌΡƒ расчСту остатков, Π½Π΅Π²Π΅Ρ€Π½ΠΎΠΌΡƒ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² ΠΈΠ»ΠΈ сбою Π² Π»ΠΎΠ³ΠΈΠΊΠ΅ провСдСния Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ².

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ калСндаря, Π³Π΄Π΅ ΠΌΡ‹ ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌ сутками, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ высокоточноС прСдставлСниС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π΅ Π΄Π°Ρ‚Ρƒ ΠΈ врСмя с Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ Π΄ΠΎ сСкунды ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ миллисСкунды. ΠœΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² 1Π‘ β€” это Π½Π΅ просто числовоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π° слоТный ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ систСма ΡƒΠΌΠ΅Π΅Ρ‚ ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ, ΡΠΊΠ»Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ ΠΈ Π²Ρ‹Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ. ПониманиС Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ структуры этого Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ… позволяСт ΠΏΠΈΡΠ°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ эффСктивный ΠΊΠΎΠ΄ ΠΈ ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Ρ… Π»ΠΎΠ²ΡƒΡˆΠ΅ΠΊ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π°ΠΌΠΈ Π² Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ….

Рассмотрим Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ, ΠΊΠ°ΠΊ устроСна эта ΡΡƒΡ‰Π½ΠΎΡΡ‚ΡŒ ΠΈΠ·Π½ΡƒΡ‚Ρ€ΠΈ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π½ΡŽΠ°Π½ΡΡ‹ ΠΏΡ€ΠΈ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠΈ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… SQL ΠΈ ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ встроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ для манипуляций со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ. ΠœΡ‹ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ практичСскиС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠ΄Π°, Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ соотвСтствия Ρ‚ΠΈΠΏΠΎΠ² ΠΈ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΠΌ Π½Π° частыС вопросы, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΠ΅ Ρƒ спСциалистов ΠΏΡ€ΠΈ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠΈ ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ΅ систСм.

Π‘ΡƒΡ‰Π½ΠΎΡΡ‚ΡŒ Ρ‚ΠΈΠΏΠ° Β«Π”Π°Ρ‚Π°Β» ΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ прСдставлСниС

Π’ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΠΎΠ½ΡΡ‚ΠΈΡŽ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, называСтся Π”Π°Ρ‚Π°. Однако Π·Π° этим простым Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ скрываСтся слоТная структура. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ° Date хранится ΠΊΠ°ΠΊ количСство сСкунд (ΠΈΠ»ΠΈ Ρ‚ΠΈΠΊΠΎΠ²), ΠΏΡ€ΠΎΡˆΠ΅Π΄ΡˆΠΈΡ… с Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ отсчСта. Π­Ρ‚ΠΎ позволяСт систСмС Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ арифмСтичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π°Π΄ Π΄Π°Ρ‚Π°ΠΌΠΈ с высокой ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ ΠΏΡ€ΠΎΡ‰Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с числами, Ρ‡Π΅ΠΌ с ΠΊΠ°Π»Π΅Π½Π΄Π°Ρ€Π½Ρ‹ΠΌΠΈ сущностями.

Когда Π²Ρ‹ создаСтС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Π² ΠΊΠΎΠ΄Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ Новый Π”Π°Ρ‚Π°(), систСма фиксируСт Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы сСрвСра ΠΈΠ»ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ всСгда Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π³ΠΎΠ΄, мСсяц ΠΈ дСнь, Π½ΠΎ ΠΈ часы, ΠΌΠΈΠ½ΡƒΡ‚Ρ‹, сСкунды. Π”Π°ΠΆΠ΅ Ссли Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ Π² интСрфСйсС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ отобраТаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π°Ρ‚Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Β«01.01.2026Β»), Π²ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ памяти систСмы это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΊΠ°ΠΊ Β«01.01.2026 00:00:00Β» ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΡƒΡŽ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΡƒΡŽ Π² зависимости ΠΎΡ‚ контСкста создания.

ОсобоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ слСдуСт ΡƒΠ΄Π΅Π»ΠΈΡ‚ΡŒ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρƒ допустимых Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π΄Π°Ρ‚Ρ‹ Π² ΡˆΠΈΡ€ΠΎΠΊΠΎΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅, Ρ‡Ρ‚ΠΎ позволяСт Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ историчСскиС Π΄Π°Π½Π½Ρ‹Π΅ Π·Π° дСсятки Π»Π΅Ρ‚ ΠΈ ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ события Π½Π° ΠΎΡ‚Π΄Π°Π»Π΅Π½Π½ΠΎΠ΅ Π±ΡƒΠ΄ΡƒΡ‰Π΅Π΅. Однако ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ тСхничСскиС ограничСния, связанныС с Ρ‚ΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ… Π² Π‘Π£Π‘Π” (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, SQL Server ΠΈΠ»ΠΈ PostgreSQL), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡΡƒΠΆΠ°Ρ‚ΡŒ этот Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…. Если ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π΄Π°Ρ‚Ρƒ, Π²Ρ‹Ρ…ΠΎΠ΄ΡΡ‰ΡƒΡŽ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ допустимого Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° Π‘Π£Π‘Π”, систСма выдаст ΠΎΡˆΠΈΠ±ΠΊΡƒ выполнСния.

πŸ’‘

ΠŸΡ€ΠΈ создании ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π΄Π°Ρ‚Ρ‹ Π² ΠΊΠΎΠ΄Π΅ всСгда явно ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΠΉΡ‚Π΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ, Ссли ΠΎΠ½Π° ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½Π° для Π»ΠΎΠ³ΠΈΠΊΠΈ. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠ³ΠΎ Π² Ρ€Π°Π·Π½Ρ‹Ρ… вСрсиях ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

Для программиста Если ΠΎΠ΄ΠΈΠ½ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Ρ€Π°Π²Π΅Π½ Β«10:00:00Β», Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ Β«10:00:01Β», Ρ‚ΠΎ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ строго мСньшС Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ, нСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ для чСловСчСского восприятия это ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ час. Вакая Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° для обСспСчСния ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠΉ Π² рСгистрах накоплСния.

Различия ΠΌΠ΅ΠΆΠ΄Ρƒ Π”Π°Ρ‚ΠΎΠΉ ΠΈ ΠœΠΎΠΌΠ΅Π½Ρ‚ΠΎΠΌ Π’Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² контСкстС запросов

Π’ языкС запросов 1Π‘ понятиС ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈΠ³Ρ€Π°Π΅Ρ‚ ΠΊΠ»ΡŽΡ‡Π΅Π²ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€ΠΊΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· рСгистров. Часто Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΈ ΠΏΡƒΡ‚Π°ΡŽΡ‚ Π΄Π°Ρ‚Ρƒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° ΠΈ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ рСгистрации записи Π² рСгистрС. ΠœΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² запросС β€” это Ρ‚ΠΎΡ‡ΠΊΠ° Π½Π° Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ оси, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ Β«Ρ„ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ€ΡƒΠ΅ΠΌΒ» состояниС систСмы. Π­Ρ‚ΠΎ особСнно Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΈ использовании Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ‚Π°Π±Π»ΠΈΡ† остатков ΠΈ ΠΎΠ±ΠΎΡ€ΠΎΡ‚ΠΎΠ².

Рассмотрим ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ остатки Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ² Π½Π° складС. ΠœΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ просто ΡΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ «сколько Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ² Π±Ρ‹Π»ΠΎ Π² январС», Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ мСсяца остатки мСнялись ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ. Нам Π½ΡƒΠΆΠ΅Π½ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ срСз β€” ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ это ΠΊΠΎΠ½Π΅Ρ† дня 31.01.2026 23:59:59. БистСма рассчитаСт сумму всСх поступлСний ΠΈ списаний, ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ΅Π΄ΡˆΠΈΡ… strictly Π΄ΠΎ этого ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°, игнорируя события, ΡΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠΈΠ΅ΡΡ Π΄Π°ΠΆΠ΅ Π½Π° сСкунду ΠΏΠΎΠ·ΠΆΠ΅.

  • πŸ•’ Π’ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ Π΄ΠΎ сСкунды ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½Π° для рСгистров накоплСния, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² ΠΎΠ΄Π½Ρƒ ΠΈ Ρ‚Ρƒ ΠΆΠ΅ Π΄Π°Ρ‚Ρƒ, Π½ΠΎ Π² Ρ€Π°Π·Π½ΠΎΠ΅ врСмя.
  • πŸ“‰ ИспользованиС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ Π² запросС автоматичСски Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ Π½ΡƒΠΆΠ½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ для срСза остатков.
  • βš™οΈ Π’ запросах ΠΌΠΎΠΆΠ½ΠΎ явно ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΠΠ§ΠΠ›ΠžΠ”ΠΠ―() ΠΈΠ»ΠΈ ΠšΠžΠΠ•Π¦Π”ΠΠ―() для Π½ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

БущСствуСт распространСнная ошибка, ΠΊΠΎΠ³Π΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ΠœΠ•Π–Π”Π£ для Π²Ρ‹Π±Ρ€ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π·Π° ΠΏΠ΅Ρ€ΠΈΠΎΠ΄, забывая ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Π³Ρ€Π°Π½ΠΈΡ†. Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½Ρ‹ Π΄Π°Π½Π½Ρ‹Π΅ Π·Π° вСсь дСнь 10 января, Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚ 10.01.2026 00:00:00 Π΄ΠΎ 10.01.2026 23:59:59. Если ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ просто 10.01.2026 ΠΊΠ°ΠΊ ΠΊΠΎΠ½Π΅Ρ† ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π°, систСма ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ это ΠΊΠ°ΠΊ Π½Π°Ρ‡Π°Π»ΠΎ дня, ΠΈ всС события, ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ΅Π΄ΡˆΠΈΠ΅ послС 00:00, Π±ΡƒΠ΄ΡƒΡ‚ отсСчСны.

πŸ“Š Как Π²Ρ‹ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π·Π°Π΄Π°Π΅Ρ‚Π΅ ΠΊΠΎΠ½Π΅Ρ† ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π° Π² запросах 1Π‘?
Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ ΠšΠžΠΠ•Π¦Π”ΠΠ―()
ΠŸΠΈΡˆΡƒ 23:59:59 Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ
Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°Ρ…
НС Π·Π°Π΄ΡƒΠΌΡ‹Π²Π°ΡŽΡΡŒ ΠΎΠ± этом

ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° прСдоставляСт ΠΌΠΎΡ‰Π½Ρ‹Π΅ инструмСнты для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π°ΠΌΠΈ прямо Π² тСкстС запроса. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ, получая Ρ€Π°Π·Π½ΠΈΡ†Ρƒ Π² сСкундах, днях ΠΈΠ»ΠΈ мСсяцах. Π­Ρ‚ΠΎ позволяСт ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ динамичСскиС ΠΎΡ‚Ρ‡Π΅Ρ‚Ρ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Β«ΠΏΡ€ΠΎΠ΄Π°ΠΆΠΈ Π·Π° послСдниС 30 Π΄Π½Π΅ΠΉ ΠΎΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°Β», Π±Π΅Π· нСобходимости ТСсткой привязки ΠΊ ΠΊΠ°Π»Π΅Π½Π΄Π°Ρ€Π½Ρ‹ΠΌ Π΄Π°Ρ‚Π°ΠΌ Π² ΠΊΠΎΠ΄Π΅.

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ хранСния Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… SQL

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠΌ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… 1Π‘ Π΄Π΅Ρ‚Π°Π»ΠΈ хранСния ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠ² Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ скрыты ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ самой ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ. Однако Π² ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрном Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅, Π³Π΄Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ внСшняя Π‘Π£Π‘Π” (MS SQL, PostgreSQL, Oracle), ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ Π±Π°Π·Ρ‹ становится Π²Π°ΠΆΠ½Ρ‹ΠΌ для администрирования ΠΈ Ρ‚ΠΎΠ½ΠΊΠΎΠΉ настройки ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв ΠΏΠΎΠ»Π΅ Ρ‚ΠΈΠΏΠ° Date ΠΈΠ· 1Π‘ мапится Π½Π° Ρ‚ΠΈΠΏ datetime ΠΈΠ»ΠΈ datetime2 Π² SQL Server. Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ этими Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² точности ΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅. Π‘Ρ‚Π°Ρ€Ρ‹ΠΉ Ρ‚ΠΈΠΏ datetime ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ Π΄ΠΎ 3.33 миллисСкунды, Ρ‡Ρ‚ΠΎ Π² Ρ€Π΅Π΄ΠΊΠΈΡ… случаях ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ Β«ΡΠΌΠ°Π·Ρ‹Π²Π°Π½ΠΈΡŽΒ» ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠ² Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΏΡ€ΠΈ массовой Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…. Π‘ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ datetime2 обСспСчиваСт Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ Π΄ΠΎ 100 наносСкунд, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ соотвСтствуСт возмоТностям ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘.

Π’ΠΈΠΏ Π² 1Π‘ Π’ΠΈΠΏ Π² MS SQL Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π’ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ
Π”Π°Ρ‚Π° (врСмя Π΅ΡΡ‚ΡŒ) datetime2 0001-2099 Π³Π³. 100 наносСкунд
Π”Π°Ρ‚Π° (врСмя Π΅ΡΡ‚ΡŒ) datetime 1753-9999 Π³Π³. 3.33 мс
Π”Π°Ρ‚Π° (Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π°Ρ‚Π°) date 0001-9999 Π³Π³. 1 дСнь
ВрСмя time 00:00:00-23:59:59 100 наносСкунд

Π’Π°ΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ Π±Π°Π·Ρ‹ ΠΈΠ»ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ смСна Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… SQL. Π­Ρ‚ΠΎ Π΄ΠΎΠ»Π³ΠΈΠΉ процСсс, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΠΉ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ Π±Π°Π·Ρ‹. Администраторам слСдуСт ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Π·Π° Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Ρ‚ΠΈΠΏΡ‹ Π² Π‘Π£Π‘Π” соотвСтствовали трСбованиям ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, особСнно Π² высоконагруТСнных систСмах, Π³Π΄Π΅ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Ρ‹ записСй ΡΠΎΡ€Ρ‚ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ прямом ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ ΠΊ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌ SQL Π² ΠΎΠ±Ρ…ΠΎΠ΄ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‡Π΅Ρ€Π΅Π· SQL-ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€) ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅ ΠΎ часовых поясах. Π‘Π΅Ρ€Π²Π΅Ρ€ 1Π‘ ΠΈ сСрвСр Π‘Π£Π‘Π” ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² Ρ€Π°Π·Π½Ρ‹Ρ… Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π·ΠΎΠ½Π°Ρ…, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ΡΠΌΠ΅Ρ‰Π΅Π½ΠΈΡŽ ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠ² Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€ΠΊΠ΅.

Π’Π°ΠΊΠΆΠ΅ стоит ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ индСксация ΠΏΠΎΠ»Π΅ΠΉ с Ρ‚ΠΈΠΏΠΎΠΌ Β«Π”Π°Ρ‚Π°Β» Π² SQL ΠΈΠΌΠ΅Π΅Ρ‚ свои особСнности. БоставныС индСксы, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠ΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ эффСктивно, Ссли врСмя являСтся младшим ΠΊΠ»ΡŽΡ‡ΠΎΠΌ сортировки. Π­Ρ‚ΠΎ позволяСт Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… быстро ΠΎΡ‚ΡΠ΅ΠΊΠ°Ρ‚ΡŒ Π½Π΅Π½ΡƒΠΆΠ½Ρ‹Π΅ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ‹ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ запросов с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π°.

Π Π°Π±ΠΎΡ‚Π° с часовыми поясами ΠΈ Ρ€Π΅Π³ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ настройками

Одной ΠΈΠ· самых ΠΊΠΎΠ²Π°Ρ€Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² распрСдСлСнных систСмах ΡΠ²Π»ΡΡŽΡ‚ΡΡ часовыС пояса. ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° 1Π‘ Ρ…Ρ€Π°Π½ΠΈΡ‚ всС ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Π² ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠΌ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (UTC). Π­Ρ‚ΠΎ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ стандарт, Π½Π΅ зависящий ΠΎΡ‚ гСографичСского полоТСния сСрвСра.

Когда ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ Ρ„ΠΎΡ€ΠΌΡƒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°, систСма автоматичСски ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ…Ρ€Π°Π½ΠΈΠΌΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ UTC Π² локальноС врСмя ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°, исходя ΠΈΠ· настроСк ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы ΠΈΠ»ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π² 1Π‘. Π­Ρ‚ΠΎ создаСт иллюзию, Ρ‡Ρ‚ΠΎ врСмя хранится Β«ΠΊΠ°ΠΊ Π΅ΡΡ‚ΡŒΒ», Π½ΠΎ Π½Π° самом Π΄Π΅Π»Π΅ происходит динамичСскоС ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Β«Π½Π° Π»Π΅Ρ‚ΡƒΒ». Если сСрвСр находится Π² МосквС, Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π² Π₯абаровскС, ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ физичСский ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Ρƒ Π½ΠΈΡ… ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ.

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ ΠΏΡ€ΠΈ написании ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅Ρ‚ этот ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ. НапримСр, Ссли Π²Ρ‹ ТСстко Π·Π°ΠΏΠΈΡˆΠ΅Ρ‚Π΅ Π² Π±Π°Π·Ρƒ Π΄Π°Ρ‚Ρƒ с использованиСм Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Π±Π΅Π· ΡƒΡ‡Π΅Ρ‚Π° прСобразования Π² UTC, ΠΏΡ€ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ этого Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° с Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° врСмя ΠΌΠΎΠΆΠ΅Ρ‚ Β«ΡƒΠΏΠ»Ρ‹Ρ‚ΡŒΒ». Для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ встроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ БСанс.ЧасовойПояс() ΠΈΠ»ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π”Π°Ρ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ автоматичСски ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ смСщСния.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ врСмя Π² ΠΎΡ‚Ρ‡Π΅Ρ‚Π°Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ Π½Π° 1 час?

Π­Ρ‚ΠΎ часто происходит ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ Π½Π° Π»Π΅Ρ‚Π½Π΅Π΅/Π·ΠΈΠΌΠ½Π΅Π΅ врСмя ΠΈΠ»ΠΈ Ссли сСрвСр ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ находятся Π² Ρ€Π°Π·Π½Ρ‹Ρ… часовых поясах, Π° Π² ΠΊΠΎΠ΄Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² Π±Π΅Π· ΡƒΡ‡Π΅Ρ‚Π° смСщСния UTC.

ΠŸΡ€ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ с внСшними систСмами (ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΠΌΠ°Π³Π°Π·ΠΈΠ½Ρ‹, Π±Π°Π½ΠΊΠΈ, ΠΌΠ°Ρ€ΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°) Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‡Π΅Ρ‚ΠΊΠΎ Π΄ΠΎΠ³ΠΎΠ²Π°Ρ€ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. РСкомСндуСтся всСгда ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ врСмя Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ UTC с явным ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ смСщСния (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ISO 8601), Π° ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π² локальноС врСмя Π΄Π΅Π»Π°Ρ‚ΡŒ ΡƒΠΆΠ΅ Π²Π½ΡƒΡ‚Ρ€ΠΈ 1Π‘ ΠΏΠ΅Ρ€Π΅Π΄ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ. Π­Ρ‚ΠΎ ΠΈΠ·Π±Π°Π²ΠΈΡ‚ ΠΎΡ‚ ошибок ΠΏΡ€ΠΈ синхронизации Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ Ρ€Π΅Π³ΠΈΠΎΠ½Π°ΠΌΠΈ.

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ использованиС Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

Π’ языкС 1Π‘ сущСствуСт Π±ΠΎΠ³Π°Ρ‚Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для манипуляции ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚Ρƒ часто трСбуСтся Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊ Π΄Π°Ρ‚Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ количСство Π΄Π½Π΅ΠΉ, Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ дСнь мСсяца ΠΈΠ»ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, являСтся Π»ΠΈ Π³ΠΎΠ΄ високосным. ВсС эти ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π±Π΅Π· нСобходимости Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ количСство сСкунд.

Рассмотрим Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΉ сцСнарий: расчСт срока ΠΎΠΏΠ»Π°Ρ‚Ρ‹ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°. Π£ нас Π΅ΡΡ‚ΡŒ Π΄Π°Ρ‚Π° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° ΠΈ количСство Π΄Π½Π΅ΠΉ отсрочки. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ просто ΡΠ»ΠΎΠΆΠΈΡ‚ΡŒ эти значСния, ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠ½Π΅Ρ† мСсяца ΠΈΠ»ΠΈ Π³ΠΎΠ΄Π°. Однако, Ссли Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΄Π°Ρ‚Ρƒ строго Π½Π° ΠΊΠΎΠ½Π΅Ρ† мСсяца, использованиС простого слоТСния ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΌ. Π—Π΄Π΅ΡΡŒ Π½Π° ΠΏΠΎΠΌΠΎΡ‰ΡŒ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ функция ΠšΠžΠΠ•Π¦ΠŸΠ•Π Π˜ΠžΠ”Π().

Π”Π°Ρ‚Π°Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° = ВСкущаяДата();

// ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΊΠΎΠ½Π΅Ρ† Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ мСсяца

ΠšΠΎΠ½Π΅Ρ†ΠœΠ΅ΡΡΡ†Π° = ΠšΠΎΠ½Π΅Ρ†ΠŸΠ΅Ρ€ΠΈΠΎΠ΄Π°(Π”Π°Ρ‚Π°Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°, ΠŸΠ΅Ρ€ΠΈΠΎΠ΄.ΠœΠ΅ΡΡΡ†);

// Π’Ρ‹Ρ‡ΠΈΡ‚Π°Π΅ΠΌ ΠΎΠ΄ΠΈΠ½ дСнь, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ прСдпослСдний дСнь

ΠŸΡ€Π΅Π΄ΠŸΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉΠ”Π΅Π½ΡŒ = ΠšΠΎΠ½Π΅Ρ†ΠœΠ΅ΡΡΡ†Π° - 86400; // 86400 сСкунд Π² сутках

Часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π·Π°Π΄Π°Ρ‡Π° сравнСния Π΄Π°Ρ‚ Π±Π΅Π· ΡƒΡ‡Π΅Ρ‚Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. НапримСр, Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ всС Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹ Π·Π° сСгодня, нСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π² ΠΊΠ°ΠΊΠΎΠ΅ врСмя ΠΎΠ½ΠΈ Π±Ρ‹Π»ΠΈ созданы. ΠŸΡ€ΡΠΌΠΎΠ΅ сравнСниС Π”Π°Ρ‚Π°Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° = ВСкущаяДата() сработаСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли врСмя совпадСт Π΄ΠΎ сСкунды, Ρ‡Ρ‚ΠΎ маловСроятно. ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ β€” привСсти ΠΎΠ±Π΅ Π΄Π°Ρ‚Ρ‹ ΠΊ Π½Π°Ρ‡Π°Π»Ρƒ дня с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΠΠ§ΠΠ›ΠžΠ”ΠΠ―() ΠΈ ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ ΡƒΠΆΠ΅ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ значСния.

β˜‘οΈ Алгоритм бСзопасной Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Π°Ρ‚Π°ΠΌΠΈ

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 4

Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ Π²Π°ΠΆΠ½Ρ‹ΠΉ аспСкт β€” Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Ρ‹Π²ΠΎΠ΄Π°. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π½Π΅ всСгда Π½ΡƒΠΆΠ½ΠΎ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΏΠΎΠ»Π½ΠΎΠ΅ врСмя с сСкундами. Для отобраТСния Π² ΠΏΠ΅Ρ‡Π°Ρ‚Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΠ°Ρ… ΠΈΠ»ΠΈ Π½Π° экранах ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π€ΠΎΡ€ΠΌΠ°Ρ‚. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Π΄Π°Ρ‚ΡŒ строку Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, "Π”Π€=dd.MM.yyyy", Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΊΡ€Ρ‹Ρ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ, оставив Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠ°Π»Π΅Π½Π΄Π°Ρ€Π½ΡƒΡŽ Π΄Π°Ρ‚Ρƒ. Π­Ρ‚ΠΎ Π½Π΅ мСняСт сам ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² памяти, Π° лишь влияСт Π½Π° Π΅Π³ΠΎ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ прСдставлСниС.

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ошибки ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ

ΠŸΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ слоТных ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² Π² 1Π‘ ошибки, связанныС со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ, ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ΄Π½ΠΈΠΌΠΈ ΠΈΠ· самых Ρ‚Ρ€ΡƒΠ΄Π½ΠΎΡƒΠ»ΠΎΠ²ΠΈΠΌΡ‹Ρ…. Они ΠΌΠΎΠ³ΡƒΡ‚ Π½Π΅ ΠΏΡ€ΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ явно Π² Π²ΠΈΠ΄Π΅ сообщСний ΠΎΠ± ошибкС, Π° ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ логичСским искаТСниям: Β«ΠΏΡ€ΠΎΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΌΒ» остаткам, Π΄ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ записСй ΠΈΠ»ΠΈ Π½Π΅Π²Π΅Ρ€Π½Ρ‹ΠΌ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π°ΠΌ Π² ΠΎΡ‚Ρ‡Π΅Ρ‚Π°Ρ….

Одна ΠΈΠ· частых ошибок β€” использованиС «магичСских чисСл» ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ. ВмСсто Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ константы ΠΈΠ»ΠΈ встроСнныС пСрСчислСния, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ТСстко ΠΏΡ€ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ количСство сСкунд (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 3600 для часа). Π­Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ ΠΊΠΎΠ΄ Π½Π΅Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΌ ΠΈ ΠΏΠΎΠ΄Π²Π΅Ρ€ΠΆΠ΅Π½Π½Ρ‹ΠΌ ошибкам ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π»ΠΎΠ³ΠΈΠΊΠΈ. Π›ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ явныС конструкторы Π΄Π°Ρ‚ ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ добавлСния Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Никогда Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΎΠΊΡ€ΡƒΠ³Π»Π΅Π½ΠΈΠ΅ Π΄Π°Ρ‚ для привСдСния ΠΊ Ρ†Π΅Π»Ρ‹ΠΌ дням, Ссли это Π½Π΅ прСдусмотрСно ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ. ΠžΠΊΡ€ΡƒΠ³Π»Π΅Π½ΠΈΠ΅ 12:00:00 ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π°Ρ‚ΡŒ нСпрСдсказуСмый Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π² зависимости ΠΎΡ‚ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ НачалоДня().

Для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ значСния Π² ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ΅ Π² Ρ€Π°Π·Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°Ρ…. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΠΎΠ΅ прСдставлСниС ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ Π΄Π΅Ρ‚Π°Π»ΠΈ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π‘Ρ‚Ρ€ΠΎΠΊΠ°() с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΏΠΎΠ»Π½ΡƒΡŽ структуру Π΄Π°Ρ‚Ρ‹, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ сСкунды ΠΈ миллисСкунды. Π’Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ свойство ΠŸΡƒΡΡ‚Π°Ρ(), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ Π΄Π°Ρ‚Π° Π±Ρ‹Π»Π° ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π°, Π° Π½Π΅ ΠΎΡΡ‚Π°Π»Π°ΡΡŒ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ.

Если Π²Ρ‹ ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΠ»ΠΈΡΡŒ с ситуациСй, ΠΊΠΎΠ³Π΄Π° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ Π½Π΅ проводится ΠΈΠ·-Π·Π° ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, «нСдопустимая Π΄Π°Ρ‚Π°Β»), ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ настройки ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π° закрытия Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°Ρ… систСмы. Часто ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ провСдСния Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ Π² Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ для рСдактирования ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π», ΠΈ систСма Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠ΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ для сохранСния цСлостности ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ….

πŸ’‘

Π“Π»Π°Π²Π½ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ: всСгда провСряйтС Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π°Ρ‚Ρƒ, Π½ΠΎ ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΡƒΡŽ, Π° Ρ‚Π°ΠΊΠΆΠ΅ часовой пояс, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ выполняСтся ΠΊΠΎΠ΄.

Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы (FAQ)

Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚ΠΈΠΏΠΎΠΌ Β«Π”Π°Ρ‚Π°Β» ΠΈ «ВрСмя» Π² 1Π‘?

Π’ΠΈΠΏ Π”Π°Ρ‚Π° Ρ…Ρ€Π°Π½ΠΈΡ‚ ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (Π΄Π°Ρ‚Π° + врСмя), Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ Ρ‚ΠΈΠΏ ВрСмя Ρ…Ρ€Π°Π½ΠΈΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ врСмя суток Π±Π΅Π· привязки ΠΊ ΠΊΠ°Π»Π΅Π½Π΄Π°Ρ€Π½ΠΎΠΌΡƒ дню. Π’ΠΈΠΏ «ВрСмя» ΠΏΠΎΠ»Π΅Π·Π΅Π½ для расписаний ΠΈΠ»ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»ΠΎΠ², ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΡ…ΡΡ Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ, Π½ΠΎ для ΡƒΡ‡Π΅Ρ‚Π° событий Π² истории всСгда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚ΠΈΠΏ Β«Π”Π°Ρ‚Π°Β».

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΏΡ€ΠΈ сравнСнии Π΄Π°Ρ‚ 01.02.2026 ΠΈ 01.02.2026 Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Β«Π›ΠΎΠΆΡŒΒ»?

Π‘ΠΊΠΎΡ€Π΅Π΅ всСго, Ρƒ этих Π΄Π°Ρ‚ разная врСмСнная Ρ‡Π°ΡΡ‚ΡŒ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 10:00:00 ΠΈ 10:00:01). Для сравнСния Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠ°Π»Π΅Π½Π΄Π°Ρ€Π½Ρ‹Ρ… Π΄Π½Π΅ΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ НачалоДня() для ΠΎΠ±ΠΎΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠ΅Ρ€Π΅Π΄ сравнСниСм.

Как ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ Π΄Π°Ρ‚Ρƒ Π±Π΅Π· Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² 1Π‘?

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ: НачалоДня(ВСкущаяДата()). Π­Ρ‚ΠΎ Π²Π΅Ρ€Π½Π΅Ρ‚ Π΄Π°Ρ‚Ρƒ Π½Π° 00:00:00 Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ дня, Ρ‡Ρ‚ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ для Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΏΠΎ суткам.

МоТно Π»ΠΈ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π΄Π°Ρ‚Ρƒ Π΄ΠΎ 1900 Π³ΠΎΠ΄Π° Π² 1Π‘?

Π”Π°, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° 1Π‘ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡˆΠΈΡ€ΠΎΠΊΠΈΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π΄Π°Ρ‚, начиная с 0001 Π³ΠΎΠ΄Π°. Однако ΠΏΡ€ΠΈ использовании Π‘Π£Π‘Π” MS SQL Π² старом Ρ€Π΅ΠΆΠΈΠΌΠ΅ совмСстимости ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ограничСния, связанныС с Ρ‚ΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ… datetime Π² самой Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ….

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ «нулСвая Π΄Π°Ρ‚Π°Β» Π² 1Π‘ ΠΈ ΠΊΠ°ΠΊ Π΅Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ?

НулСвая Π΄Π°Ρ‚Π° β€” это Π½Π΅ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Π”Π°Ρ‚Π°.ΠŸΡƒΡΡ‚Π°Ρ(), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Π΅Ρ€Π½Π΅Ρ‚ Π˜ΡΡ‚ΠΈΠ½Π°, Ссли Π΄Π°Ρ‚Π° Π½Π΅ Π·Π°Π΄Π°Π½Π°. ИспользованиС пустой Π΄Π°Ρ‚Ρ‹ Π² вычислСниях ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ошибкам выполнСния.