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

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

Π—Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ ошибка "ΠšΠ»ΡŽΡ‡ связи" маскируСтся ΠΏΠΎΠ΄ ΠΎΠ±Ρ‰ΠΈΠ΅ сбои Ρ€Π°Π±ΠΎΡ‚Ρ‹ прилоТСния, Π½ΠΎ Π½Π° самом Π΄Π΅Π»Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Ρ€Π°ΡΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° ΠΈ Π΅Π³ΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠΌ, Π»ΠΈΠ±ΠΎ Π½Π° ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ индСксов Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Microsoft SQL Server ΠΈΠ»ΠΈ PostgreSQL. Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° 1Π‘ выступаСт Π² Ρ€ΠΎΠ»ΠΈ посрСдника, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ бизнСс-Π»ΠΎΠ³ΠΈΠΊΡƒ Π² Π½Π°Π±ΠΎΡ€ SQL-ΠΊΠΎΠΌΠ°Π½Π΄, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ связи ΠΈΠ³Ρ€Π°Π΅Ρ‚ Ρ€ΠΎΠ»ΡŒ Π³Π°Ρ€Π°Π½Ρ‚Π° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ строка Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π½Π΅ останСтся "сиротой" Π±Π΅Π· Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ записи.

ВСхничСская ΡΡƒΡ‚ΡŒ понятия ΠΈ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° хранСния

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

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

Π‘Ρ‚ΠΎΠΈΡ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ физичСским Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΈ логичСским прСдставлСниСм. Π’ Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… (_Document, _InfoRg) связи хранятся ΠΊΠ°ΠΊ числовыС ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ (Ref). Однако для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ программиста 1Π‘ это ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ со своими свойствами ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ. ΠΠ°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ связи Π½Π° физичСском ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ логичСский ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ становится Π½Π΅Π²Π°Π»ΠΈΠ΄Π½Ρ‹ΠΌ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Никогда Π½Π΅ удаляйтС записи ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ† Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… 1Π‘ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Ρ‡Π΅Ρ€Π΅Π· SQL-запросы (DELETE FROM), Ссли Π²Ρ‹ Π½Π΅ ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹ Π² каскадных удалСниях. Π­Ρ‚ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΡŽ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ связи ΠΈ ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½ΠΈΡŽ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

БущСствуСт Ρ‚Π°ΠΊΠΆΠ΅ понятиС составного ΠΊΠ»ΡŽΡ‡Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ записСй Π² рСгистрах свСдСний ΠΈ накоплСния. Π—Π΄Π΅ΡΡŒ связь обСспСчиваСтся ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠ΅ΠΉ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΠΎΠ»Π΅ΠΉ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠ΅ ΠΈ рСсурс. Ошибки Π² Ρ‚Π°ΠΊΠΈΡ… структурах Π΄ΠΈΠ°Π³Π½ΠΎΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ слоТнСС, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ часто ΠΏΡ€ΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ спСцифичСских Π²Ρ‹Π±ΠΎΡ€ΠΊΠ°Ρ… Π΄Π°Π½Π½Ρ‹Ρ….

Как 1Π‘ Ρ…Ρ€Π°Π½ΠΈΡ‚ ссылки Π²Π½ΡƒΡ‚Ρ€ΠΈ?

Π’Π½ΡƒΡ‚Ρ€ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ссылок (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, _Reference104) каТдая запись ΠΈΠΌΠ΅Π΅Ρ‚ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ числовой ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ (_IDRRef). Когда Π²Ρ‹ создаСтС ссылку Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅, Π² ΠΏΠΎΠ»Π΅ записи сохраняСтся ΠΈΠΌΠ΅Π½Π½ΠΎ это число. ΠšΠ»ΡŽΡ‡ связи провСряСт, сущСствуСт Π»ΠΈ запись с Ρ‚Π°ΠΊΠΈΠΌ _IDRRef Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ справочника. Если запись ΡƒΠ΄Π°Π»Π΅Π½Π°, Π° ссылка ΠΎΡΡ‚Π°Π»Π°ΡΡŒ β€” Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ошибка цСлостности.

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ сцСнарии возникновСния ошибок цСлостности

На ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ администраторы ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с нСсколькими стандартными ситуациями, приводящими ΠΊ ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½ΠΈΡŽ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ связи. Π§Π°Ρ‰Π΅ всСго Π²ΠΈΠ½ΠΎΠ²Π½ΠΈΠΊΠΎΠΌ становится Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ΅ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ сСрвСра ΠΈΠ»ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Π²ΠΎ врСмя Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ записи. Если процСсс записи Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° Π±Ρ‹Π» ΠΏΡ€Π΅Ρ€Π²Π°Π½ Π½Π° этапС фиксации ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΎΠ΄Π½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅, Π½ΠΎ Π΄ΠΎ обновлСния Π΄Ρ€ΡƒΠ³ΠΎΠΉ, Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ рассогласованиС.

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

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

  • πŸ›‘ АварийноС ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ элСктропитания сСрвСра 1Π‘ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ провСдСния слоТного Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° с большим количСством Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎ рСгистрам.
  • πŸ›‘ Ошибки Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΈ написании ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΎΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠ΄Π°Π»ΡΡŽΡ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹-Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΠΈ, Π½Π΅ удаляя ΠΏΡ€ΠΈ этом ΠΏΠΎΠ΄Ρ‡ΠΈΠ½Π΅Π½Π½Ρ‹Π΅ элСмСнты Π² Ρ†ΠΈΠΊΠ»Π΅.
  • πŸ›‘ Π‘Π±ΠΎΠΈ дисковой подсистСмы Π‘Π£Π‘Π”, приводящиС ΠΊ ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½ΠΈΡŽ страниц Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΏΠΎΡ‚Π΅Ρ€Π΅ индСксных записСй ΠΊΠ»ΡŽΡ‡Π΅ΠΉ.

Π’Π°ΠΆΠ½ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π°Ρ‚ΡŒ логичСскиС ошибки ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈ физичСскиС поврСТдСния Π±Π°Π·Ρ‹. Если ошибка Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅, скорСС всСго, ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Π΄Π°Π½Π½Ρ‹Ρ…. Если ΠΆΠ΅ ошибки сыпятся ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΈ Π»ΡŽΠ±Ρ‹Ρ… Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², вСроятно, ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½Π° структура Ρ‚Π°Π±Π»ΠΈΡ† ΠΈΠ»ΠΈ систСмныС Π»ΠΎΠ³ΠΈ Π‘Π£Π‘Π”.

πŸ’‘

ΠŸΠ΅Ρ€Π΅Π΄ Π»ΡŽΠ±Ρ‹ΠΌΠΈ манипуляциями ΠΏΠΎ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡŽ цСлостности Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ создайтС ΠΏΠΎΠ»Π½ΡƒΡŽ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΡƒΡŽ копию Π±Π°Π·Ρ‹ (backup) Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ Π‘Π£Π‘Π”. ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° лСчСния "Π½Π° ΠΆΠΈΠ²ΡƒΡŽ" Π±Π΅Π· бэкапа ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΎΡˆΠΈΠ±ΠΊΡƒ Π² ΠΏΠΎΠ»Π½ΡƒΡŽ ΠΏΠΎΡ‚Π΅Ρ€ΡŽ Π±Π°Π·Ρ‹.

Диагностика ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ SQL-запросов

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

Основной ΠΌΠ΅Ρ‚ΠΎΠ΄ диагностики β€” поиск записСй, ΡΡΡ‹Π»Π°ΡŽΡ‰ΠΈΡ…ΡΡ Π½Π° Π½Π΅ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹. Π­Ρ‚ΠΎ дСлаСтся Ρ‡Π΅Ρ€Π΅Π· запрос с объСдинСниСм Ρ‚Π°Π±Π»ΠΈΡ† (JOIN) ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ сущСствования записСй. НапримСр, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ всС Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹, Ρƒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… потСрялся ΠΊΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚.

SELECT T1._IDRRef, T1._DocNum

FROM _Document123 T1

LEFT JOIN _Reference456 T2 ON T1._Fld1234RRef = T2._IDRRef

WHERE T2._IDRRef IS NULL

Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ _Document123 β€” это Ρ‚Π°Π±Π»ΠΈΡ†Π° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², Π° _Reference456 β€” Ρ‚Π°Π±Π»ΠΈΡ†Π° справочника. ПолС _Fld1234RRef содСрТит ссылку. Если Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ запроса Π½Π΅ пуст, Π·Π½Π°Ρ‡ΠΈΡ‚, Π² Π±Π°Π·Π΅ Π΅ΡΡ‚ΡŒ "Π±ΠΈΡ‚Ρ‹Π΅" ссылки. Аналогичный ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌ ΠΈ для поиска Π΄ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚ΠΎΠ² ΠΊΠ»ΡŽΡ‡Π΅ΠΉ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ являСтся Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ΠΌ цСлостности.

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с PostgreSQL стоит ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ особСнности хранСния ΠΈΠΌΠ΅Π½ Ρ‚Π°Π±Π»ΠΈΡ† ΠΈ ΠΏΠΎΠ»Π΅ΠΉ. Π’ 1Π‘ ΠΎΠ½ΠΈ часто хранятся Π² Π½ΠΈΠΆΠ½Π΅ΠΌ рСгистрС ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒ экранирования ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ°ΠΌΠΈ, Ссли ΠΈΠΌΠ΅Π½Π° содСрТат ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ символы ΠΈΠ»ΠΈ Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ слова Π‘Π£Π‘Π”.

πŸ“Š Какая Π‘Π£Π‘Π” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² вашСй Π±Π°Π·Π΅ 1Π‘?
Microsoft SQL Server
PostgreSQL
Π€Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ (Π½Π΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠΎ)
Oracle
НС знаю

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ восстановлСния ΠΈ лСчСния Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…

ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ½Ρ‹Π΅ записи ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹, встаСт вопрос ΠΎΠ± ΠΈΡ… устранСнии. БущСствуСт нСсколько ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ², ΠΎΡ‚ мягких Π΄ΠΎ Ρ€Π°Π΄ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ…. Π‘Π°ΠΌΡ‹ΠΉ бСзопасный способ β€” использованиС встроСнных ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ "ВСстированиС ΠΈ исправлСниС" (типовая ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° chdb ΠΈΠ»ΠΈ Π°Π½Π°Π»ΠΎΠ³ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ прСдприятия).

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

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

ΠœΠ΅Ρ‚ΠΎΠ΄ восстановлСния Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ риска Π’Ρ€Π΅Π±ΡƒΠ΅Ρ‚ остановки Π±Π°Π·Ρ‹ Когда ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ
ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° "ВСстированиС ΠΈ исправлСниС" Низкий Π–Π΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ (ΠΌΠΎΠ½ΠΎΠΏΠΎΠ»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ) ΠŸΡ€ΠΈ Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ… ссылок
ΠŸΠ΅Ρ€Π΅ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² Π‘Ρ€Π΅Π΄Π½ΠΈΠΉ НСт ΠŸΡ€ΠΈ ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ… Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎ рСгистрам
SQL-ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ записСй Высокий Π”Π° (ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ) ΠŸΡ€ΠΈ массовом ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠΈ структуры
ВосстановлСниС ΠΈΠ· бэкапа Низкий (для Π΄Π°Π½Π½Ρ‹Ρ…) Π”Π° ΠŸΡ€ΠΈ критичСском ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² Π‘Π”

ПослС любого Π²ΠΌΠ΅ΡˆΠ°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π° Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ SQL Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ DBCC CHECKDB (для MS SQL) ΠΈΠ»ΠΈ VACUUM FULL (для PostgreSQL), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ индСксы ΠΈ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ физичСская структура страниц Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΡˆΠ»Π° Π² Π½ΠΎΡ€ΠΌΡƒ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΈ названия ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ² мСню Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ "ВСстированиС ΠΈ исправлСниС" ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ Π² зависимости ΠΎΡ‚ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘ ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. ВсСгда ΡΠ²Π΅Ρ€ΡΠΉΡ‚Π΅ΡΡŒ с Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ ΠΊ вашСй ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ вСрсии Ρ€Π΅Π»ΠΈΠ·Π° ΠΏΠ΅Ρ€Π΅Π΄ запуском массовых ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ.

ΠŸΡ€ΠΎΡ„ΠΈΠ»Π°ΠΊΡ‚ΠΈΠΊΠ° ΠΈ настройка Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚Π½Ρ‹Ρ… Π·Π°Π΄Π°Π½ΠΈΠΉ

Π›ΡƒΡ‡ΡˆΠ΅Π΅ Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ β€” это ΠΏΡ€ΠΎΡ„ΠΈΠ»Π°ΠΊΡ‚ΠΈΠΊΠ°. Π’ соврСмСнных конфигурациях 1Π‘, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ 1Π‘:ERP ΠΈΠ»ΠΈ 1Π‘:КомплСксная автоматизация, прСдусмотрСны ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ автоматичСского контроля цСлостности. Настройка Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚Π½Ρ‹Ρ… Π·Π°Π΄Π°Π½ΠΈΠΉ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Ρ„ΠΎΠ½ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ позволяСт Π²Ρ‹ΡΠ²Π»ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ станут критичСскими для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

РСкомСндуСтся Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ссылок Π² Π½ΠΎΡ‡Π½ΠΎΠ΅ врСмя, ΠΊΠΎΠ³Π΄Π° Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π½Π° систСму минимальна. Π­Ρ‚ΠΎ Π·Π°Π΄Π°Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π»ΠΎΠ³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ всС Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Π΅ нСсоотвСтствия Π² ΠΆΡƒΡ€Π½Π°Π» рСгистрации. Администратору достаточно Ρ€Π°Π· Π² нСдСлю ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ эти Π»ΠΎΠ³ΠΈ.

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

  • βœ… Автоматизация: НастройтС скрипт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ СТСнСдСльно запускаСт ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ цСлостности ΠΈ отправляСт ΠΎΡ‚Ρ‡Π΅Ρ‚ администратору Π½Π° ΠΏΠΎΡ‡Ρ‚Ρƒ.
  • βœ… ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ доступа: ΠžΠ³Ρ€Π°Π½ΠΈΡ‡ΡŒΡ‚Π΅ ΠΏΡ€Π°Π²Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π½Π° прямоС ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² слоТных Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ чСловСчСский Ρ„Π°ΠΊΡ‚ΠΎΡ€.
  • βœ… ОбновлСниС: РСгулярно устанавливайтС Ρ€Π΅Π»ΠΈΠ·Ρ‹ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π² Π½ΠΈΡ… часто ΠΈΡΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ ошибки ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ с курсорами ΠΈ транзакциями.

НС стоит Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ ΠΈ ΠΎ качСствС сСтСвого соСдинСния ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ сСрвСром. ΠŸΠΎΡ‚Π΅Ρ€Ρ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π² сСти ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ ΠΊΠ°ΠΊ Ρ€Π°Π·Ρ€Ρ‹Π² соСдинСния, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π΅Ρ€Π²Π΅Ρ‚ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ записи ΠΊΠ»ΡŽΡ‡Π΅ΠΉ связи Π² самый нСподходящий ΠΌΠΎΠΌΠ΅Π½Ρ‚.

πŸ’‘

РСгулярноС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΏΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŽ цСлостности Π΄Π°Π½Π½Ρ‹Ρ… сниТаСт риск возникновСния критичСских ошибок Π² 10 Ρ€Π°Π· эффСктивнСС, Ρ‡Π΅ΠΌ экстрСнноС восстановлСниС послС сбоя.

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΌ ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрном Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅

АрхитСктура хранСния Π΄Π°Π½Π½Ρ‹Ρ… сущСствСнно влияСт Π½Π° ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ связи. Π’ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… (.1CD) всС Π΄Π°Π½Π½Ρ‹Π΅ хранятся Π² ΠΎΠ΄Π½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅, ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ ΠΌΠ΅Π½Π΅Π΅ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹. Риск поврСТдСния ΠΊΠ»ΡŽΡ‡Π΅ΠΉ связи здСсь Π²Ρ‹ΡˆΠ΅ ΠΈΠ·-Π·Π° возмоТности ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ² доступа ΠΏΡ€ΠΈ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ записи Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

Π’ ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрном Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ (MS SQL, PostgreSQL) Π‘Π£Π‘Π” Π±Π΅Ρ€Π΅Ρ‚ Π½Π° сСбя ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ транзакциями ΠΈ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°ΠΌΠΈ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ строк. Π­Ρ‚ΠΎ обСспСчиваСт Π³ΠΎΡ€Π°Π·Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ высокий ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ цСлостности. Однако ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ диагностики Π² этом случаС Π²Ρ‹ΡˆΠ΅, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ трСбуСтся Π·Π½Π°Π½ΠΈΠ΅ языка SQL ΠΈ структуры Ρ‚Π°Π±Π»ΠΈΡ† 1Π‘.

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

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли ошибка Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρƒ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ?

Если ошибка "ΠšΠ»ΡŽΡ‡ связи" появляСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ мСстС ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π° Ρƒ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… всС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°, скорСС всСго, Π½Π΅ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, Π° Π² кэшС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° 1Π‘. ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ кэш ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π’Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π»ΠΈ этот ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ внСшнСй ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ»ΠΈ ΠΎΡ‚Ρ‡Π΅Ρ‚Π°.

МоТно Π»ΠΈ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ прСдупрСТдСния ΠΎ Π±ΠΈΡ‚Ρ‹Ρ… ссылках?

Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… нСльзя. Π‘ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ количСство "мусорных" записСй Π±ΡƒΠ΄Π΅Ρ‚ расти, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ замСдлСнию Ρ€Π°Π±ΠΎΡ‚Ρ‹ запросов ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΡŽ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π±Π°Π·Ρ‹. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΏΡ€ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Ρ‚Π°ΠΊΠΈΠ΅ записи ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ критичСский сбой скрипта ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, остановив ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΠ»ΠΏΡƒΡ‚ΠΈ.

Как Π½Π°ΠΉΡ‚ΠΈ имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…?

ИмСна физичСских Ρ‚Π°Π±Π»ΠΈΡ† Π² 1Π‘ Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Ρ‹. Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ соотвСтствиС, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ "АдминистрированиС Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…" ΠΈΠ»ΠΈ запросом ΠΊ систСмной Ρ‚Π°Π±Π»ΠΈΡ†Π΅ _Version (Π² зависимости ΠΎΡ‚ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹), Π³Π΄Π΅ хранится mapa ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…. Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ простой ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, какая Ρ‚Π°Π±Π»ΠΈΡ†Π° измСнилась Π² Ρ€Π°Π·ΠΌΠ΅Ρ€Π΅.

ВлияСт Π»ΠΈ вСрсия ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘ Π½Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ связи?

Π”Π°, с Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠΌ Π½ΠΎΠ²Ρ‹Ρ… вСрсий ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° Π²Π΅Ρ€ΡΠΈΡŽ 8.3.20+) ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ запросов ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с индСксами. Иногда ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ пСрСстроСния индСксов Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½ΠΎΠ²Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ссылочной цСлостности.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ "каскадноС ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅" ΠΈ опасно Π»ΠΈ ΠΎΠ½ΠΎ?

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