Π’ экосистСмС 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Π° с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… часто Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ структуры Π΄Π°Π½Π½Ρ‹Ρ… Π² тСкстовый Ρ„ΠΎΡ€ΠΌΠ°Ρ‚. Бсылка β€” это основной Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ для адрСсации Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², справочников ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π±Π°Π·Ρ‹. Однако ΠΏΡ€ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ с внСшними систСмами, Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠ΅ Π² Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ»ΠΈ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈΠΌΠ΅Π½Π½ΠΎ строковоС прСдставлСниС этой ссылки.

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ Π½Π΅ являСтся Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ сущСствуСт нСсколько способов прСдставлСния ΠΎΠ΄Π½ΠΎΠΉ ΠΈ Ρ‚ΠΎΠΉ ΠΆΠ΅ ссылки Π² Π²ΠΈΠ΄Π΅ тСкста. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ часто ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с Π΄ΠΈΠ»Π΅ΠΌΠΌΠΎΠΉ: ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π»ΠΈ GUID, тСкстовоС прСдставлСниС ΠΈΠ»ΠΈ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€. ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ошибкам ΠΏΡ€ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ восстановлСнии ссылки ΠΈΠ· строки ΠΈΠ»ΠΈ Π΄ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Π΄Π°Π½Π½Ρ‹Ρ… Π²ΠΎ Π²Π½Π΅ΡˆΠ½ΠΈΡ… систСмах.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ прСобразования, тСхничСскиС особСнности Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² ΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ практичСскиС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠ΄Π° Π½Π° встроСнном языкС ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. ПониманиС этих нюансов критичСски Π²Π°ΠΆΠ½ΠΎ для построСния Π½Π°Π΄Π΅ΠΆΠ½Ρ‹Ρ… ΠΎΠ±ΠΌΠ΅Π½ΠΎΠ² Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

ВнутрСнняя структура ссылки Π² ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ 1Π‘

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

Когда Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ Π² ΠΊΠΎΠ΄Π΅, систСма автоматичСски управляСт Π΅Π³ΠΎ адрСсациСй. Однако, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎΠΊΠΈΠ΄Π°ΡŽΡ‚ контСкст выполнСния ΠΈ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ΡΡ Π² тСкст, эта магия исчСзаСт.

БущСствуСт Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ тСхничСским ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ для ΠΌΠ°ΡˆΠΈΠ½Ρ‹. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠΈ ΠΊΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Π°), Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ Π΅Π³ΠΎ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ остаСтся Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½Ρ‹ΠΌ Π½Π° протяТСнии всСго ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π° записи. Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ этого Ρ„Π°ΠΊΡ‚Π° β€” частая ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° логичСских ошибок Π² ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΡ….

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ прСобразования ссылки Π² строку

ВстроСнный язык 1Π‘ прСдоставляСт нСсколько встроСнных ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² для получСния строки ΠΈΠ· ссылки. Π’Ρ‹Π±ΠΎΡ€ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° зависит ΠΎΡ‚ Π·Π°Π΄Π°Ρ‡ΠΈ: Π½ΡƒΠΆΠ½ΠΎ Π»ΠΈ Π²Π°ΠΌ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ прСобразования ΠΈΠ»ΠΈ достаточно просто вывСсти Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΉ тСкст для ΠΎΡ‚Ρ‡Π΅Ρ‚Π°.

Π‘Π°ΠΌΡ‹ΠΉ распространСнный сцСнарий β€” использованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π‘Ρ‚Ρ€ΠΎΠΊΠ°. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ строковоС прСдставлСниС ссылки Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² ссылку Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π˜Π·Π‘Ρ‚Ρ€ΠΎΠΊΠΈΠ’Π½ΡƒΡ‚Ρ€. Π€ΠΎΡ€ΠΌΠ°Ρ‚ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ выглядит ΠΊΠ°ΠΊ Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ.НомСнклатура.aa123456-7890-1234-5678-90abcdef1234.

ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ β€” ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ свойства .Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ‚ΠΈΠΏΠ° Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ (UUID), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°Ρ‚Π΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ привСсти ΠΊ строкС. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ прСдставлСния, здСсь Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ 16-Π±Π°ΠΉΡ‚ΠΎΠ²Ρ‹ΠΉ Ρ…Π΅Ρˆ, Π±Π΅Π· указания Ρ‚ΠΈΠΏΠ° ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…. Π­Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ коллСкциями Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

  • πŸ“Œ Π‘Ρ‚Ρ€ΠΎΠΊΠ°(Бсылка) β€” Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΠΎΠ»Π½ΠΎΠ΅ прСдставлСниС с Ρ‚ΠΈΠΏΠΎΠΌ, ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для сСриализации ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π°.
  • πŸ”‘ Бсылка.Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ β€” Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ GUID, ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½ΠΎ, Π½ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ знания Ρ‚ΠΈΠΏΠ° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ.
  • πŸ‘οΈ Бсылка.ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠ΅ β€” Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎ-Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΠ΅ имя (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€,"Иванов И.И."), Π½Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ использования.

ИспользованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠ΅ катСгоричСски Π½Π΅ рСкомСндуСтся для Π·Π°Π΄Π°Ρ‡, Π³Π΄Π΅ трСбуСтся программная ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°. Π”Π²Π° Ρ€Π°Π·Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅ прСдставлСниС, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ коллизиям. ВсСгда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π‘Ρ‚Ρ€ΠΎΠΊΠ° ΠΈΠ»ΠΈ Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ для Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ.

πŸ“Š Какой способ получСния строки ΠΈΠ· ссылки Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ‡Π°Ρ‰Π΅ всСго?
Π‘Ρ‚Ρ€ΠΎΠΊΠ°(Бсылка)
Бсылка.Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€
Бсылка.ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠ΅
Π§Π΅Ρ€Π΅Π· запись Π² рСгистр

Π€ΠΎΡ€ΠΌΠ°Ρ‚ GUID ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° с Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ

Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ (GUID) являСтся стандартом Π΄Π΅-Ρ„Π°ΠΊΡ‚ΠΎ для ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ записСй Π² рСляционных Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ SQL-сСрвСр, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ часто Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ 1Π‘. Π’ контСкстС ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Π° с GUID Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ понимания спСцифики хранСния Π±Π°ΠΉΡ‚ΠΎΠ².

ΠŸΡ€ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠΈ свойства Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ со ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ Ρ‚ΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ…. Если привСсти Π΅Π³ΠΎ ΠΊ строкС стандартным способом, Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ каноничСскоС прСдставлСниС UUID Π²ΠΈΠ΄Π° xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx. Однако ΠΏΡ€ΠΈ прямой Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠ΅ Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… SQL (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‡Π΅Ρ€Π΅Π· запросы) порядок Π±Π°ΠΉΡ‚ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ ΠΈΠ·-Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠΉ Π² Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ процСссоров (Little Endian vs Big Endian).

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

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ хранСния GUID Π² SQL

Π’ Π‘Π£Π‘Π” Microsoft SQL Server Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… uniqueidentifier Ρ…Ρ€Π°Π½ΠΈΡ‚ GUID Π² спСцифичСском порядкС Π±Π°ΠΉΡ‚ΠΎΠ². ΠŸΠ΅Ρ€Π²Ρ‹Π΅ Ρ‚Ρ€ΠΈ поля (4+2+2 Π±Π°ΠΉΡ‚Π°) ΠΈΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ со строковым прСдставлСниСм 1Π‘. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ GUID AA112233-4455-6677-8899-AABBCCDDEEFF Π² 1Π‘ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΊΠ°ΠΊ 332211AA-5544-7766-8899-AABBCCDDEEFF Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ чистого SQL Π±Π΅Π· ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ.

Для бСзопасной Ρ€Π°Π±ΠΎΡ‚Ρ‹ с GUID Π² строковом Π²ΠΈΠ΄Π΅ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘ достаточно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ стандартноС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ². БистСма автоматичСски Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° стыкС с внСшним ΠΌΠΈΡ€ΠΎΠΌ, Π³Π΄Π΅ 1Π‘ Π½Π΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ†ΠΈΡŽ Π±Π°ΠΉΡ‚ΠΎΠ².

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠ΄Π° ΠΈ сцСнарии использования

Рассмотрим Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ ситуации, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ. Π§Π°Ρ‰Π΅ всСго трСбуСтся ΡΡ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ строку для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π²ΠΎ внСшнюю систСму Ρ‡Π΅Ρ€Π΅Π· HTTP-запрос ΠΈΠ»ΠΈ для записи Π² тСкстовый Ρ„Π°ΠΉΠ» Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠΈ.

Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ продСмонстрируСм бСзопасный способ сСриализации ссылки для ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ восстановлСния. Π­Ρ‚ΠΎ стандартный ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½ для ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ двумя Π±Π°Π·Π°ΠΌΠΈ 1Π‘ ΠΈΠ»ΠΈ для сохранСния состояния Π² рСгистрС свСдСний.


// ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ссылку Π½Π° элСмСнт справочника

БсылкаНаЭлСмСнт = Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠΈ.НомСнклатура.ΠΠ°ΠΉΡ‚ΠΈΠŸΠΎΠΠ°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡŽ("Π’ΠΎΠ²Π°Ρ€ А");

// ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅ΠΌ Π² строку для хранСния

БтрокаБсылки = Π‘Ρ‚Ρ€ΠΎΠΊΠ°(БсылкаНаЭлСмСнт);

//.. сохранСниС БтрокаБсылки Π² Ρ„Π°ΠΉΠ» ΠΈΠ»ΠΈ Π±Π°Π·Ρƒ..

// ВосстановлСниС ссылки ΠΈΠ· строки

ВосстановлСннаяБсылка = Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π˜Π·Π‘Ρ‚Ρ€ΠΎΠΊΠΈΠ’Π½ΡƒΡ‚Ρ€(БтрокаБсылки);

Π’Ρ‚ΠΎΡ€ΠΎΠΉ сцСнарий β€” Ρ€Π°Π±ΠΎΡ‚Π° с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, ΠΊΠΎΠ³Π΄Π° Ρ‚ΠΈΠΏ ссылки Π·Π°Ρ€Π°Π½Π΅Π΅ нСизвСстСн (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ списка Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²). Π’ этом случаС использованиС свойства Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ позволяСт ΡƒΠ½ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ.


// Ѐункция получСния ΠΊΠ»ΡŽΡ‡Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°

Ѐункция ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΠšΠ»ΡŽΡ‡ΠžΠ±ΡŠΠ΅ΠΊΡ‚Π°(ΠžΠ±ΡŠΠ΅ΠΊΡ‚)

Если Π’ΠΈΠΏΠ—Π½Ρ‡(ΠžΠ±ΡŠΠ΅ΠΊΡ‚) = Π’ΠΈΠΏ("Бсылка") Π’ΠΎΠ³Π΄Π°

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ Π‘Ρ‚Ρ€ΠΎΠΊΠ°(ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€);

Π˜Π½Π°Ρ‡Π΅Π•ΡΠ»ΠΈ Π’ΠΈΠΏΠ—Π½Ρ‡(ΠžΠ±ΡŠΠ΅ΠΊΡ‚) = Π’ΠΈΠΏ("Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠžΠ±ΡŠΠ΅ΠΊΡ‚") Π’ΠΎΠ³Π΄Π°

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ Π‘Ρ‚Ρ€ΠΎΠΊΠ°(ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Бсылка.Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€);

ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

Π’ΠΎΠ·Π²Ρ€Π°Ρ‚"";

ΠšΠΎΠ½Π΅Ρ†Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ

Π’Π°ΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π½ΠΎΠ²Ρ‹ΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΅Ρ‰Π΅ Π½Π΅ записаны Π² Π±Π°Π·Ρƒ, свойство Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ null-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ пустой GUID Π² зависимости ΠΎΡ‚ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. ВсСгда провСряйтС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π½Π° запись ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΎΠΉ извлСчСния ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°.

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠ΅Ρ€Π΅Π΄ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ ссылки

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

Π‘Ρ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π°Π½Π°Π»ΠΈΠ· ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Π° Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ²

Π’Ρ‹Π±ΠΎΡ€ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° прСобразования Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ влияСт Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ ΠΈΡ‚ΠΎΠ³ΠΎΠ²Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° сводная Ρ‚Π°Π±Π»ΠΈΡ†Π°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ быстро ΡΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² различиях ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ².

ΠœΠ΅Ρ‚ΠΎΠ΄ Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠžΠ±Ρ€Π°Ρ‚ΠΈΠΌΠΎΡΡ‚ΡŒ Π§ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ
Π‘Ρ‚Ρ€ΠΎΠΊΠ°(Бсылка) ΠŸΠΎΠ»Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ (Π’ΠΈΠΏ.UUID) Полная (Ρ‡Π΅Ρ€Π΅Π· Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π˜Π·Π‘Ρ‚Ρ€ΠΎΠΊΠΈΠ’Π½ΡƒΡ‚Ρ€) БрСдняя (тСхничСский)
Бсылка.Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Волько UUID (GUID) Частичная (Π½ΡƒΠΆΠ΅Π½ Ρ‚ΠΈΠΏ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°) Низкая (Π½Π°Π±ΠΎΡ€ символов)
Бсылка.ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠ΅ НаимСнованиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° НСвозмоТна (Π½Π΅ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎ) Высокая (понятно Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΡƒ)
Π‘Ρ‚Ρ€ΠΎΠΊΠ°(Бсылка.Код) Артикул/Код справочника Зависит ΠΎΡ‚ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΊΠΎΠ΄Π° Высокая

Как Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, для Π·Π°Π΄Π°Ρ‡ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ ΠΈ ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π±Π΅Π·Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ Π»ΠΈΠ΄Π΅Ρ€ΠΎΠΌ являСтся ΠΌΠ΅Ρ‚ΠΎΠ΄ Π‘Ρ‚Ρ€ΠΎΠΊΠ°(Бсылка). Он обСспСчиваСт ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ. ИспользованиС ΠΊΠΎΠ΄Π° справочника допустимо Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚Π΅Ρ… случаях, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄ΠΎΠ² Π²ΠΎ всСй систСмС ΠΈ отсутствиС ΠΈΡ… измСнСния со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ использовании ΠΊΠΎΠ΄Π° вмСсто UUID ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΊΠΎΠ΄Ρ‹ справочников Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ. Если ваш внСшний ΠΊΠ»ΡŽΡ‡ зависит ΠΎΡ‚ ΠΊΠΎΠ΄Π°, связь с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ разорвСтся сразу послС рСдактирования ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠΈ Π² 1Π‘.

ΠœΠ΅Ρ‚ΠΎΠ΄ ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠ΅ стоит ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ для формирования ΠΏΠ΅Ρ‡Π°Ρ‚Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌ, ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² для руководства ΠΈΠ»ΠΈ Π»ΠΎΠ³ΠΎΠ², ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Ρ… для ΠΆΠΈΠ²ΠΎΠ³ΠΎ чтСния ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ. Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠ΅ ΠΎΠ½ нСсСт лишь риски.

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок ΠΈ восстановлСниС ссылок

Одной ΠΈΠ· самых частых ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ со строковыми прСдставлСниями ссылок являСтся ситуация, ΠΊΠΎΠ³Π΄Π° строка ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π° ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ, Π° восстанавливаСтся Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ. Если Π² ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‰Π΅ΠΉ Π±Π°Π·Π΅ отсутствуСт ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Ρ‚ΠΈΠΏ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ сам ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ с Ρ‚Π°ΠΊΠΈΠΌ UUID, функция Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π˜Π·Π‘Ρ‚Ρ€ΠΎΠΊΠΈΠ’Π½ΡƒΡ‚Ρ€ Π²Π΅Ρ€Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ НСопрСдСлСно.

ΠšΡ€ΠΈΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈ Π²Π°ΠΆΠ½ΠΎ всСгда ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ восстановлСния. Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ этой ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ситуациям ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ свойствам Π½Π΅ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Алгоритм Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ устойчивым ΠΊ Π±ΠΈΡ‚Ρ‹ΠΌ ссылкам.


ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ°

ВосстановлСннаяБсылка = Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π˜Π·Π‘Ρ‚Ρ€ΠΎΠΊΠΈΠ’Π½ΡƒΡ‚Ρ€(Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π˜Π·Π€Π°ΠΉΠ»Π°);

Если ВосстановлСннаяБсылка = НСопрСдСлСно Π’ΠΎΠ³Π΄Π°

// Π›ΠΎΠ³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ошибки ΠΈΠ»ΠΈ пропуск записи

ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ;

ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

// Π”Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠ°Ρ Ρ€Π°Π±ΠΎΡ‚Π° с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ

НазваниС = ВосстановлСннаяБсылка.НаимСнованиС;

Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

ОписаниСОшибки = ОписаниСОшибки;

// ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° строки

ΠšΠΎΠ½Π΅Ρ†ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠΈ;

Π’Π°ΠΊΠΆΠ΅ стоит ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ"Π±ΠΈΡ‚Ρ‹Ρ… ссылок" Π²Π½ΡƒΡ‚Ρ€ΠΈ самой Π±Π°Π·Ρ‹. Если ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π±Ρ‹Π» ΡƒΠ΄Π°Π»Π΅Π½, Π½ΠΎ ссылка Π½Π° Π½Π΅Π³ΠΎ ΡΠΎΡ…Ρ€Π°Π½ΠΈΠ»Π°ΡΡŒ Π² ΠΊΠ°ΠΊΠΎΠΌ-Π»ΠΈΠ±ΠΎ рСгистрС ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΅Π³ΠΎ строковоС прСдставлСниС ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΉΡ‚ΠΈ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ (Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ UUID остался), Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π° с Π½ΠΈΠΌ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π°. ΠœΠ΅Ρ‚ΠΎΠ΄ Π‘Ρ‚Ρ€ΠΎΠΊΠ° Π½Π΅ провСряСт сущСствованиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, ΠΎΠ½ лишь Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ Π΄Π°Π½Π½Ρ‹Π΅.

πŸ’‘

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ Бсылка.ΠŸΡƒΡΡ‚Π°Ρ ΠΏΠ΅Ρ€Π΅Π΄ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π΅ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. Π­Ρ‚ΠΎ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ лишниС Ρ†ΠΈΠΊΠ»Ρ‹ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Π½Π° НСопрСдСлСно.

Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² управляСмых Ρ„ΠΎΡ€ΠΌΠ°Ρ… ΠΈ Π²Π΅Π±-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅

Π’ соврСмСнной ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ 1Π‘, особСнно Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Π²Π΅Π±-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈΠ»ΠΈ Ρ‚ΠΎΠ½ΠΊΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π½ΡŽΠ°Π½ΡΡ‹ отобраТСния ссылок. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс часто скрываСт Ρ‚Π΅Ρ…Π½ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΡΡƒΡ‚ΡŒ ссылок, показывая лишь гипСрссылки ΠΈΠ»ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π²Ρ‹Π±ΠΎΡ€Π°.

ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Ρ„ΠΎΡ€ΠΌΡ‹ Π² ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈΠ»ΠΈ сСрвСрный контСкст, ссылки автоматичСски ΡΠ΅Ρ€ΠΈΠ°Π»ΠΈΠ·ΡƒΡŽΡ‚ΡΡ. Однако, Ссли Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈΠ»ΠΈ внСшниС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ явноС ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅. Π’ Π²Π΅Π±-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ строковоС прСдставлСниС GUID ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для Π³Π»ΡƒΠ±ΠΎΠΊΠΈΡ… ссылок (Deep Links), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ прямо ΠΈΠ· Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°.

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ слСдуСт ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π² Π²Π΅Π±-срСдС Π΄Π»ΠΈΠ½Π° строки URL ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π°. Π₯отя GUID сам ΠΏΠΎ сСбС ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π΅Π½, ΠΏΠΎΠ»Π½ΠΎΠ΅ прСдставлСниС ссылки Π² составС Π΄Π»ΠΈΠ½Π½ΠΎΠ³ΠΎ HTTP-запроса ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π²Ρ‹ΡΠΈΡ‚ΡŒ Π»ΠΈΠΌΠΈΡ‚Ρ‹ сСрвСра. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях цСлСсообразно ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€, Π° Ρ‚ΠΈΠΏ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ ΠΏΠΎ контСксту ΠΈΠ»ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΈ возмоТности Ρ€Π°Π±ΠΎΡ‚Ρ‹ с URL Π² Π²Π΅Π±-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ с Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠΌ Π½ΠΎΠ²Ρ‹Ρ… Ρ€Π΅Π»ΠΈΠ·ΠΎΠ² ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅. ВсСгда тСстируйтС ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ Π³Π»ΡƒΠ±ΠΎΠΊΠΈΡ… ссылок Π½Π° Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π΄ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ΠΌ Π² ΠΏΡ€ΠΎΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΡƒΡŽ ΡΠΊΡΠΏΠ»ΡƒΠ°Ρ‚Π°Ρ†ΠΈΡŽ.

Для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π² Π²Π΅Π±-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ панСль ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ, Π³Π΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ прСдставлСниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. Π­Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ строку Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ выполнСния ΠΊΠΎΠ΄Π°.

πŸ’‘

Π—ΠΎΠ»ΠΎΡ‚ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ: для ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΠΎΠ»Π½Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π‘Ρ‚Ρ€ΠΎΠΊΠ°(Бсылка), для Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅ΠΉ Π² ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… β€” Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€.

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

МоТно Π»ΠΈ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΡΡ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ строку ссылки, зная Ρ‚ΠΎΠ»ΡŒΠΊΠΎ GUID?

ВСхничСски ΠΌΠΎΠΆΠ½ΠΎ, Ссли Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅ Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ имя Ρ‚ΠΈΠΏΠ° ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€,"Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊ.ΠšΠ»ΠΈΠ΅Π½Ρ‚Ρ‹"). Π€ΠΎΡ€ΠΌΠ°Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ Π’ΠΈΠΏ. GUID. Однако ΠΊΡ€Π°ΠΉΠ½Π΅ Π½Π΅ рСкомСндуСтся, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π»Π΅Π³ΠΊΠΎ ΠΎΡˆΠΈΠ±ΠΈΡ‚ΡŒΡΡ Π² написании Ρ‚ΠΈΠΏΠ°, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ошибкС ΠΏΡ€ΠΈ восстановлСнии. НадСТнСС сначала ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΏΠΎ GUID Ρ‡Π΅Ρ€Π΅Π· запрос, Π° Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π‘Ρ‚Ρ€ΠΎΠΊΠ°.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π˜Π·Π‘Ρ‚Ρ€ΠΎΠΊΠΈΠ’Π½ΡƒΡ‚Ρ€ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ НСопрСдСлСно?

Π­Ρ‚ΠΎ происходит Π² Ρ‚Ρ€Π΅Ρ… случаях: 1) Π‘Ρ‚Ρ€ΠΎΠΊΠ° ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π΅Π²Π΅Ρ€Π½Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ синтаксиса. 2) Π£ΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ сущСствуСт Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. 3) ΠžΠ±ΡŠΠ΅ΠΊΡ‚ с Ρ‚Π°ΠΊΠΈΠΌ UUID Π±Ρ‹Π» ΡƒΠ΄Π°Π»Π΅Π½ ΠΈΠ· Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… (физичСски ΠΈΠ»ΠΈ логичСски с очисткой ΠΈΡ‚ΠΎΠ³ΠΎΠ²).

Как ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ссылку ΠΈΠ· строки Π² запросС ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…?

Π’ языкС запросов 1Π‘ Π½Π΅Ρ‚ прямой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ строки Π² ссылку Π²Π½ΡƒΡ‚Ρ€ΠΈ тСкста запроса. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ это дСлаСтся Π² ΠΊΠΎΠ΄Π΅: Π²Ρ‹ Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚Π΅ Π΄Π°Π½Π½Ρ‹Π΅, Π° Π·Π°Ρ‚Π΅ΠΌ Π² Ρ†ΠΈΠΊΠ»Π΅ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚Π΅ строковыС поля. Если Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΏΠΎ строковому GUID, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ с ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΎΠΉ Ρ‚ΠΈΠΏΠ° Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΈ соСдиняйтС ΠΏΠΎ Π½Π΅ΠΉ.

ВлияСт Π»ΠΈ смСна ΠΈΠΌΠ΅Π½ΠΈ справочника Π½Π° строковоС прСдставлСниС ссылки?

НСт, Π½Π΅ влияСт. ΠœΠ΅Ρ‚ΠΎΠ΄ Π‘Ρ‚Ρ€ΠΎΠΊΠ°(Бсылка) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ систСмноС имя Ρ‚ΠΈΠΏΠ° ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… (английскоС синонимичСскоС имя, Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅), Π° Π½Π΅ Ρ‚ΠΎ, ΠΊΠ°ΠΊ справочник называСтся Π² интСрфСйсС. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅"ΠšΠ»ΠΈΠ΅Π½Ρ‚Ρ‹" Π²"ΠŸΠΎΠΊΡƒΠΏΠ°Ρ‚Π΅Π»ΠΈ" Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅ сломаСт старыС строки, Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ синонима Π² интСрфСйсС β€” Π½Π΅Ρ‚.

БСзопасно Π»ΠΈ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ссылки Π² ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ Π²ΠΈΠ΄Π΅ Π² Π»ΠΎΠ³Π°Ρ…?

Π‘ Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния бСзопасности Π΄Π°Π½Π½Ρ‹Ρ…, GUID сам ΠΏΠΎ сСбС Π½Π΅ являСтся сСкрСтной ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ, Π½ΠΎ ΠΎΠ½ Π΄Π°Π΅Ρ‚ прямой доступ ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ Ρ‚Π΅ΠΌ, Ρƒ ΠΊΠΎΠ³ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΡ€Π°Π²Π° Π² Π±Π°Π·Π΅. Π’ Π»ΠΎΠ³Π°Ρ… Π°ΡƒΠ΄ΠΈΡ‚Π° это допустимо. Однако Π½Π΅ стоит Π²Ρ‹Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ссылки вмСстС с ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π² общСдоступныС Ρ„Π°ΠΉΠ»Ρ‹ Π±Π΅Π· ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ.