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

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

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

Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» «Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎΒ» для чтСния Π΄Π°Π½Π½Ρ‹Ρ…

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

Π­Ρ‚ΠΎΡ‚ Ρ†ΠΈΠΊΠ» автоматичСски управляСт счСтчиком ΠΈ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ каТдая строка Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° Ρ€ΠΎΠ²Π½ΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·. Π˜Π½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ 1Π‘ сам заботится ΠΎ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ элСмСнту, Ρ‡Ρ‚ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ошибки, связанныС с Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ индСкса Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ.

ИспользованиС этого ΠΌΠ΅Ρ‚ΠΎΠ΄Π° рСкомСндуСтся Π²ΠΎ всСх случаях, ΠΊΠΎΠ³Π΄Π° Π½Π΅ планируСтся ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ строк Π² процСссС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Код получаСтся Π»Π°ΠΊΠΎΠ½ΠΈΡ‡Π½Ρ‹ΠΌ ΠΈ Π»Π΅Π³ΠΊΠΎ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΌ, Ρ‡Ρ‚ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΡƒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΈ Π΄ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’Π§ Из Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.РСализацияВоваровУслуг.Π’ΠΎΠ²Π°Ρ€Ρ‹ Π¦ΠΈΠΊΠ»

Π‘ΡƒΠΌΠΌΠ° = Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’Π§.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ * Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’Π§.Π¦Π΅Π½Π°;

Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’Π§.Π‘ΡƒΠΌΠΌΠ° = Π‘ΡƒΠΌΠΌΠ°;

ΠšΠΎΠ½Π΅Ρ†Π¦ΠΈΠΊΠ»Π°;

ИзмСнСниС Π΅Π΅ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ΠΎΠ² Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π° сразу ΠΆΠ΅ отраТаСтся Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ находится Π² памяти.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ использовании Ρ†ΠΈΠΊΠ»Π° «Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎΒ» катСгоричСски Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½ΠΎ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ строку ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ строки Π² ΠΊΠΎΠ½Π΅Ρ† ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ‚Π΅Π»Π° Ρ†ΠΈΠΊΠ»Π°. Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ошибкС выполнСния ΠΈΠ»ΠΈ Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΡŽ Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π°.
πŸ’‘

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с большими Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ частями ΡΡ‚Π°Ρ€Π°ΠΉΡ‚Π΅ΡΡŒ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ количСство ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΉ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π°. ВсС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ справочныС Π΄Π°Π½Π½Ρ‹Π΅ Π»ΡƒΡ‡ΡˆΠ΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π·Π°Ρ€Π°Π½Π΅Π΅ Π² Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΈΠ»ΠΈ структуры.

ИспользованиС Ρ†ΠΈΠΊΠ»Π° «Пока» для Π³ΠΈΠ±ΠΊΠΎΠΉ Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ

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

ΠŸΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ явно ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ курсор Π½Π° ΠΏΠ΅Ρ€Π²ΡƒΡŽ строку с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠŸΠ΅Ρ€Π²Π°Ρ(). Π’Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° условия продолТСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ осущСствляСтся ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ(), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ курсор ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π±ΡƒΠ»Π΅Π²ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

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

Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’Π§ = Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.ΠŸΠ΅Ρ€Π²Π°Ρ();

Пока Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’Π§ <> НСопрСдСлСно Π¦ΠΈΠΊΠ»

Если Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’Π§.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ = 0 Π’ΠΎΠ³Π΄Π°

// ΠŸΡ€ΠΎΠΏΡƒΡΠΊΠ°Π΅ΠΌ пустыС строки

Π˜Π½Π°Ρ‡Π΅

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒΠ‘Ρ‚Ρ€ΠΎΠΊΡƒ(Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’Π§);

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

Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’Π§ = Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ(Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’Π§);

ΠšΠΎΠ½Π΅Ρ†Π¦ΠΈΠΊΠ»Π°;

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

β˜‘οΈ ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΊ Ρ†ΠΈΠΊΠ»Ρƒ Пока

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

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° с ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ строк

Π‘ΠΈΡ‚ΡƒΠ°Ρ†ΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° Π² процСссС Π°Π½Π°Π»ΠΈΠ·Π° Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ нСподходящиС строки ΠΈΠ»ΠΈ Π΄Ρ€ΠΎΠ±ΠΈΡ‚ΡŒ ΠΎΠ΄Π½Ρƒ строку Π½Π° нСсколько, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ особого ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ здСсь Π½Π΅ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚ ΠΈΠ·-Π·Π° риска Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΡ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ Π½ΡƒΠΌΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ.

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

Если ΠΆΠ΅ трСбуСтся Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ строки, ΠΎΡΠ½ΠΎΠ²Ρ‹Π²Π°ΡΡΡŒ Π½Π° Π΄Π°Π½Π½Ρ‹Ρ… Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ, рСкомСндуСтся сначала ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ список ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ структуру, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈΡ… послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ основного Ρ†ΠΈΠΊΠ»Π° ΠΎΠ±Ρ…ΠΎΠ΄Π°.

  • πŸ—‘οΈ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» Для i = ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎΠ‘Ρ‚Ρ€ΠΎΠΊ - 1 По 0 Π¦ΠΈΠΊΠ» для бСзопасного удалСния.
  • βž• Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ строк Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π½ΠΎ новая строка Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ.
  • πŸ”„ ΠŸΡ€ΠΈ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ структуры Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ массив для хранСния ΠΏΠ»Π°Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.

Алгоритм с ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΌ счСтом Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ сдвиг индСксов Π½Π΅ повлияСт Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΎΡΡ‚Π°Π²ΡˆΠΈΡ…ΡΡ элСмСнтов, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ‹ двиТСмся ΠΎΡ‚ ΠΊΠΎΠ½Ρ†Π° ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ ΠΊ Π½Π°Ρ‡Π°Π»Ρƒ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Никогда Π½Π΅ удаляйтС строку ΠΈΠ· ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΈΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ Π² Ρ†ΠΈΠΊΠ»Π΅ «Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎΒ». Π­Ρ‚ΠΎ Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ «НСдопустимоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ индСкса» ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ нСпрСдсказуСмому повлСнию ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.
ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» бСзопасСн?

ΠŸΡ€ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠΈ элСмСнта с индСксом N, элСмСнты с индСксами > N ΡΠ΄Π²ΠΈΠ³Π°ΡŽΡ‚ΡΡ Π²Π»Π΅Π²ΠΎ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΡ‹ ΠΈΠ΄Π΅ΠΌ ΠΎΡ‚ большСго индСкса ΠΊ ΠΌΠ΅Π½ΡŒΡˆΠ΅ΠΌΡƒ, сдвиг Π½Π΅ Π·Π°Ρ‚Ρ€Π°Π³ΠΈΠ²Π°Π΅Ρ‚ Π΅Ρ‰Π΅ Π½Π΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Π΅ элСмСнты (ΠΎΠ½ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ индСксы мСньшС Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ).

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΌΠ°Ρ…

Когда табличная Ρ‡Π°ΡΡ‚ΡŒ содСрТит тысячи строк, ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΠ»Π°Π½. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ лишний Π²Ρ‹Π·ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ свойству Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π° ΠΌΠΎΠΆΠ΅Ρ‚ суммарно Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ сСкунды ΠΊ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ.

ΠšΡ€ΠΈΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈ Π²Π°ΠΆΠ½ΠΎ ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ†ΠΈΠΊΠ»ΠΎΠ², Π³Π΄Π΅ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ Ρ†ΠΈΠΊΠ» Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ±Π΅Π³Π°Π΅Ρ‚ ΠΏΠΎ большой ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° растСт ΡΠΊΡΠΏΠΎΠ½Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Β«ΠΏΠΎΠ΄Π²Π΅ΡΠΈΡ‚ΡŒΒ» клиСнтскоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ сСрвСр.

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

ΠœΠ΅Ρ‚ΠΎΠ΄ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π‘ΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ (1000 строк) Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΠΎΠ΅ использованиС
Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Высокая Бтандартная ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°, Ρ‡Ρ‚Π΅Π½ΠΈΠ΅
Пока (Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ) БрСдняя БлоТная Π»ΠΎΠ³ΠΈΠΊΠ° ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠ²
По индСксу (i) Высокая Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅, вставка, доступ ΠΏΠΎ Π½ΠΎΠΌΠ΅Ρ€Ρƒ
Запрос ΠΊ Π‘Π” ΠžΡ‡Π΅Π½ΡŒ высокая АгрСгация, Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ…

ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π° с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΉ модСлью Π² ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрном Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Π΅ расходы Π½Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…. ΠœΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΡƒΠΉΡ‚Π΅ количСство ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΉ ΠΊ сСрвСру ΠΈΠ· Ρ†ΠΈΠΊΠ»Π°, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰Π΅Π³ΠΎΡΡ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅.

πŸ’‘

Π—ΠΎΠ»ΠΎΡ‚ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ: Ссли Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€ΠΊΡƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ΄Π½ΠΈΠΌ запросом ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… вмСсто Ρ†ΠΈΠΊΠ»Π° ΠΏΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ β€” всСгда Π²Ρ‹Π±ΠΈΡ€Π°ΠΉΡ‚Π΅ запрос.

Π Π°Π±ΠΎΡ‚Π° с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π² управляСмых Ρ„ΠΎΡ€ΠΌΠ°Ρ…

Π’ соврСмСнных прилоТСниях Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ 8.2 ΠΈ Π²Ρ‹ΡˆΠ΅ основная Ρ‡Π°ΡΡ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΠΈ часто выполняСтся Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Π² управляСмых Ρ„ΠΎΡ€ΠΌΠ°Ρ…. Π—Π΄Π΅ΡΡŒ табличная Ρ‡Π°ΡΡ‚ΡŒ прСдставлСна динамичСским списком, ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π½Π΅ΠΉ ΠΈΠΌΠ΅ΡŽΡ‚ свои особСнности.

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π² управляСмой Ρ„ΠΎΡ€ΠΌΠ΅ Π²Ρ‹ ΠΎΠ±Ρ€Π°Ρ‰Π°Π΅Ρ‚Π΅ΡΡŒ ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ Ρ‡Π΅Ρ€Π΅Π· ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π’Π°Π±Π»ΠΈΡ‡Π½Π°ΡΠ§Π°ΡΡ‚ΡŒ. Π’Π°ΠΆΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ измСнСния Π² Ρ„ΠΎΡ€ΠΌΠ΅ Π½Π΅ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Π΄ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° записи ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°.

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ здСсь Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΌΡƒ Ρ€Π΅ΠΆΠΈΠΌΡƒ, Π½ΠΎ стоит ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΎ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°Ρ… ΠΈ ΠΏΡ€Π°Π²Π°Ρ… доступа. Если Ρ„ΠΎΡ€ΠΌΠ° ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Π° Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ просмотра, ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ строку Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ.

// ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ Ρ„ΠΎΡ€ΠΌΡ‹

Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Π‘Ρ‚Ρ€ΠΎΠΊΠΈ Из ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹ Π¦ΠΈΠΊΠ»

Если Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Π‘Ρ‚Ρ€ΠΎΠΊΠΈ.НомСнклатура.ВидНомСнклатуры = ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡ.ВидыНомСнклатуры.Услуга Π’ΠΎΠ³Π΄Π°

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Π‘Ρ‚Ρ€ΠΎΠΊΠΈ.БтавкаНДБ = ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡ.БтавкиНДБ.БСзНДБ;

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

ΠšΠΎΠ½Π΅Ρ†Π¦ΠΈΠΊΠ»Π°;

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ события Ρ„ΠΎΡ€ΠΌΡ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΈΠ»ΠΈ ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΎΠ±Ρ…ΠΎΠ΄ строк Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° это Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ.

πŸ“Š Какой Ρ€Π΅ΠΆΠΈΠΌ 1Π‘ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ‡Π°Ρ‰Π΅?
Π’ΠΎΠ½ΠΊΠΈΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚
Π’Π΅Π±-ΠΊΠ»ΠΈΠ΅Π½Ρ‚
Волстый ΠΊΠ»ΠΈΠ΅Π½Ρ‚
МобильноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ошибки ΠΈ способы ΠΈΡ… устранСния

Π”Π°ΠΆΠ΅ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈΠ½ΠΎΠ³Π΄Π° Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ досадныС ΠΏΡ€ΠΎΠΌΠ°Ρ…ΠΈ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с коллСкциями. Бамая частая ошибка β€” ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ Π²ΠΎ врСмя ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΎ Ρ‡Π΅ΠΌ ΡƒΠΆΠ΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΎΡΡŒ Π²Ρ‹ΡˆΠ΅, Π½ΠΎ Π΅ΡΡ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠΎΠ΄Π²ΠΎΠ΄Π½Ρ‹Π΅ ΠΊΠ°ΠΌΠ½ΠΈ.

Часто встрСчаСтся ошибка «НСопрСдСлСно» ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π°ΠΌ строки, Ссли Ρ†ΠΈΠΊΠ» Π½Π΅ Π±Ρ‹Π» ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ ΠΈΠ»ΠΈ Ссли табличная Ρ‡Π°ΡΡ‚ΡŒ пуста. ВсСгда провСряйтС ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ Π½Π° пустоту ΠΏΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° β€” Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ΅ использованиС ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΠ°ΠΉΡ‚ΠΈΠŸΠΎΠΠΎΠΌΠ΅Ρ€ΡƒΠ‘Ρ‚Ρ€ΠΎΠΊΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»ΠΎΠ², Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π΄ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ»ΠΈ Π·Π°Ρ†ΠΈΠΊΠ»ΠΈΠ²Π°Π½ΠΈΡŽ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ элСмСнтС.

  • ❌ Ошибка: ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ строкС послС Ρ†ΠΈΠΊΠ»Π° удалСния Π±Π΅Π· ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ сущСствования.
  • ❌ Ошибка: бСсконСчный Ρ†ΠΈΠΊΠ» ΠΈΠ·-Π·Π° отсутствия Π²Ρ‹Π·ΠΎΠ²Π° Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ() Π² Ρ‚Π΅Π»Π΅ Ρ†ΠΈΠΊΠ»Π° «Пока».
  • ❌ Ошибка: ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΏΠΎΠ»Π΅ΠΉ строки, ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π² индСксации, Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π° поиска.

Для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ‚ΠΎΡ‡ΠΊΡƒ останова Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π° ΠΈ Π½Π°Π±Π»ΡŽΠ΄Π°ΠΉΡ‚Π΅ Π·Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ-счСтчика ΠΈ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ строки Π² ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ΅.

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

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

МоТно Π»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Ρ‹ строки Π² Ρ†ΠΈΠΊΠ»Π΅ «Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎΒ»?

Π”Π°, ΠΌΠΎΠΆΠ½ΠΎ. Π¦ΠΈΠΊΠ» «Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎΒ» Π·Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ структуры ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ (Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ строк). ИзмСнСниС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ΠΎΠ² ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… строк ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ поддСрТиваСтся ΠΈ являСтся ΡˆΡ‚Π°Ρ‚Π½Ρ‹ΠΌ сцСнариСм.

Как ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ строки Π² Ρ†ΠΈΠΊΠ»Π΅?

Π’ Ρ†ΠΈΠΊΠ»Π΅ «Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎΒ» Π½ΠΎΠΌΠ΅Ρ€ строки Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Π½Π΅ доступСн. Если ΠΎΠ½ критичСски Π²Π°ΠΆΠ΅Π½, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ†ΠΈΠΊΠ» ΠΏΠΎ индСксу Для i = 0 По ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π’Π§.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ() - 1 Π¦ΠΈΠΊΠ» ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π°ΠΉΡ‚Π΅ΡΡŒ ΠΊ строкС ΠΊΠ°ΠΊ ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π’Π§[i].

Π§Ρ‚ΠΎ быстрСС: Ρ†ΠΈΠΊΠ» 1Π‘ ΠΈΠ»ΠΈ запрос?

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈ всСгда быстрСС Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ запрос ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Π΅ΠΌ ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Ρ‚ΡŒ тысячи ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² Ρ†ΠΈΠΊΠ»Π΅ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ ΠΈΠ»ΠΈ сСрвСрС. Запрос ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ Π‘Π£Π‘Π” ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ ΡƒΠΆΠ΅ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

Как ΠΏΡ€Π΅Ρ€Π²Π°Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Ρ†ΠΈΠΊΠ»Π° досрочно?

Для досрочного Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΈΠ· Ρ†ΠΈΠΊΠ»Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ΠŸΡ€Π΅Ρ€Π²Π°Ρ‚ΡŒ. Π­Ρ‚ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Ссли Π½ΡƒΠΆΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ ΠΈ дальнСйший ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ смысла, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ экономит рСсурсы систСмы.