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

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

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

ПониманиС структуры Π’Π°Π±Π»ΠΈΡ†Ρ‹ Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ ΠΊ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΡŽ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‡Π΅Ρ‚ΠΊΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π’Π°Π±Π»ΠΈΡ†Π° Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² контСкстС Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ 1Π‘. Π­Ρ‚ΠΎ Π½Π΅ просто массив массивов, Π° строго Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉ Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ структуру ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ. КаТдая ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ ΠΈΠΌΠ΅Π½Π΅ΠΌ, Ρ‚ΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π΄Π»ΠΈΠ½ΠΎΠΉ. Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ фактичСски пСрСстраиваСт эту структуру, сдвигая индСксы всСх ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΏΠΎΠ»Π΅ΠΉ.

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

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΠΈΠ· Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π±Π΅Π·Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π½ΠΎΠΉ ΠΏΠΎΡ‚Π΅Ρ€Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ…Ρ€Π°Π½ΠΈΠ²ΡˆΠΈΡ…ΡΡ Π² этом ΠΏΠΎΠ»Π΅. Π’ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΡƒΠ΄Π°Π»Π΅Π½Π½ΡƒΡŽ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ вмСстС с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ стандартными срСдствами Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.

πŸ’‘

ΠŸΠ΅Ρ€Π΅Π΄ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ ΠΈΠ· Π²Π°ΠΆΠ½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ рСкомСндуСтся ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π΅Ρ‘ копию с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ(), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ‚ΠΊΠ°Ρ‚Π° Π² случаС ошибки Π² Π»ΠΎΠ³ΠΈΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ Ρ‡Π΅Ρ€Π΅Π· ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ запроса

Π‘Π°ΠΌΡ‹ΠΉ простой ΠΈ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΉ способ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ лишниС поля β€” ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это Π΅Ρ‰Π΅ Π½Π° этапС формирования запроса. Если ваша Π’Π°Π±Π»ΠΈΡ†Π° Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ являСтся Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ выполнСния запроса, Ρ‚ΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ тСкста запроса. Π’ этом случаС ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° просто Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ создана Π² памяти, Ρ‡Ρ‚ΠΎ сэкономит рСсурсы систСмы.

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

Если Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ с тСкстовым прСдставлСниСм запроса Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, просто ΡƒΠ΄Π°Π»ΠΈΡ‚Π΅ имя поля ΠΈΠ· списка Π²Ρ‹Π±ΠΎΡ€Π° послС ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова ВЫБРАВЬ. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ послС удалСния запятыС расставлСны ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΈ синтаксис Π½Π΅ Π½Π°Ρ€ΡƒΡˆΠ΅Π½. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ Π’Π°Π±Π»ΠΈΡ†Π° Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ лишнСй структуры.

  • πŸ” ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ панСль конструктора запросов Π² вашСй ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΈΠ»ΠΈ ΠΎΡ‚Ρ‡Π΅Ρ‚Π΅.
  • πŸ“‹ ΠŸΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΡƒ настройки ΠΏΠΎΠ»Π΅ΠΉ ΠΈ снимитС Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ с Π½Π΅Π½ΡƒΠΆΠ½ΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ.
  • πŸ’Ύ ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅ тСкст запроса ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»Π΅ исчСзло ΠΈΠ· списка Π²Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ….

ИспользованиС конструктора ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Π΅Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ удалСния, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ это выполняСтся Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ Π‘Π£Π‘Π” ΠΈΠ»ΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ Π΄Π²ΠΈΠΆΠΊΠ° запросов 1Π‘. Π­Ρ‚ΠΎ сниТаСт Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π½Π° клиСнтскоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΊΠΎΠ΄Π° Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ, дСлая Π»ΠΎΠ³ΠΈΠΊΡƒ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΠΉ.

πŸ“Š Как Π²Ρ‹ Ρ‡Π°Ρ‰Π΅ всСго Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚Π΅ структуру Π’Π—?
Π§Π΅Ρ€Π΅Π· конструктор запросов
ΠŸΠΈΡˆΡƒ тСкст запроса Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ
Боздаю ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ Ρ‡Π΅Ρ€Π΅Π· Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΡƒ
ΠšΠΎΠΏΠΈΡ€ΡƒΡŽ ΠΈΠ· ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΠΈΠ· ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°

Π‘ΠΈΡ‚ΡƒΠ°Ρ†ΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° структура Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ формируСтся динамичСски ΠΈΠ»ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ ΡƒΠΆΠ΅ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Ρ‹, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ Π²ΠΌΠ΅ΡˆΠ°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π°. ВстроСнный язык 1Π‘ прСдоставляСт ΠΌΠ΅Ρ‚ΠΎΠ΄ Колонки.Π£Π΄Π°Π»ΠΈΡ‚ΡŒ() для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠ΅ΠΉ ΠΏΠΎΠ»Π΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ΅Π½ ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ имя ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ (строка), Ρ‚Π°ΠΊ ΠΈ Π΅Ρ‘ индСкс (число).

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

Π’Π—.Колонки.Π£Π΄Π°Π»ΠΈΡ‚ΡŒ("ИмяКолонки");

Если ΠΆΠ΅ Π²Ρ‹ Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ†ΠΈΡŽ, ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ нумСрация ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ начинаСтся с нуля. Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ с индСксом 0 сдвинСт всС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π²Π»Π΅Π²ΠΎ: Π±Ρ‹Π²ΡˆΠ°Ρ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° с индСксом 1 станСт индСксом 0. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ошибкам, Ссли Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ нСсколько ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ Π² Ρ†ΠΈΠΊΠ»Π΅.

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΠΏΠΎ индСксу Π² Ρ†ΠΈΠΊΠ»Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠΉΡ‚Π΅ΡΡŒ ΠΎΡ‚ максимального индСкса ΠΊ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ, ΠΈΠ½Π°Ρ‡Π΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ смСщСниС Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π½Π΅Π²Π΅Ρ€Π½Ρ‹Ρ… ΠΏΠΎΠ»Π΅ΠΉ.

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° сущСствования

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

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° наличия ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ осущСствляСтся Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Ρ‚ΠΎΠ΄ Колонки.Найти(). Он Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ описания ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ, Ссли ΠΏΠΎΠ»Π΅ сущСствуСт, ΠΈΠ»ΠΈ НСопрСдСлСно, Ссли ΠΏΠΎΠ»Π΅ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ. Π­Ρ‚ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ способ, Ρ‡Π΅ΠΌ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ситуации Π² 1Π‘ ΡΠ²Π»ΡΡŽΡ‚ΡΡ рСсурсоСмкими.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ бСзопасного удалСния с ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ:

Колонка = Π’Π—.Колонки.Найти("ΠΠ΅Π½ΡƒΠΆΠ½ΠΎΠ΅ΠŸΠΎΠ»Π΅");

Если Колонка <> НСопрСдСлСно Π’ΠΎΠ³Π΄Π°

Π’Π—.Колонки.Π£Π΄Π°Π»ΠΈΡ‚ΡŒ(Колонка);

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

ИспользованиС Π±Π»ΠΎΠΊΠ° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ ΠΎΠΏΡ€Π°Π²Π΄Π°Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ случаС, Ссли Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ отсутствия ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΠΊΡ€Π°ΠΉΠ½Π΅ ΠΌΠ°Π»Π°, Π° ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ слишком Π³Ρ€ΠΎΠΌΠΎΠ·Π΄ΠΎΠΊ. Однако для стандартных Π·Π°Π΄Π°Ρ‡ формирования ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² явноС Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ считаСтся Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΌ Ρ‚ΠΎΠ½ΠΎΠΌ программирования.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅?

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ Π² 1Π‘ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ сохранСния Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ состояния стСка Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² ΠΈ создания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ошибки. ΠŸΡ€ΠΈ частом Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ это ΠΌΠΎΠΆΠ΅Ρ‚ сущСствСнно Π·Π°ΠΌΠ΅Π΄Π»ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ Ρ†ΠΈΠΊΠ»Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ тысяч строк.

Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ с динамичСскими списками

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

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

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Компоновкой Π΄Π°Π½Π½Ρ‹Ρ… (Π‘ΠšΠ”) ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Π΅ΠΉ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ свои особСнности. Π’ Π‘ΠšΠ” структура Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ часто формируСтся автоматичСски Π½Π° основС схСмы ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ. Π’ΠΌΠ΅ΡˆΠ°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ Π² эту структуру "Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ" ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ настройки ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ пСрСстанут ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ.

ΠœΠ΅Ρ‚ΠΎΠ΄ удалСния ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΠΎΠ΅ использованиС
ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ запроса Высокая Высокая БтатичСскиС ΠΎΡ‚Ρ‡Π΅Ρ‚Ρ‹ ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ
По ΠΈΠΌΠ΅Π½ΠΈ (Колонки.Найти) БрСдняя Высокая ДинамичСская ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ…
По индСксу (Ρ†ΠΈΠΊΠ») Высокая Низкая Массовая очистка слуТСбных ΠΏΠΎΠ»Π΅ΠΉ
ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ Низкая БрСдняя Π‘ΠΈΡ‚ΡƒΠ°Ρ†ΠΈΠΈ с нСпрСдсказуСмой структурой
πŸ’‘

НаиболСС ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΈ бСзопасным ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ являСтся ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ с ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Ρ‚ΠΎΠ΄ Найти, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΎ Π½Π΅ зависит ΠΎΡ‚ порядка ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅.

ЧастыС ошибки ΠΈ способы ΠΈΡ… устранСния

Одной ΠΈΠ· самых распространСнных ошибок являСтся ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ, которая ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² выраТСниях вычисляСмых ΠΏΠΎΠ»Π΅ΠΉ Π²Π½ΡƒΡ‚Ρ€ΠΈ самой Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΈΠ»ΠΈ Π² связанных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°Ρ…. Π₯отя Π² самой Π’Π— вычисляСмыС поля хранятся ΠΊΠ°ΠΊ значСния, Π»ΠΎΠ³ΠΈΠΊΠ° ΠΈΡ… формирования ΠΌΠΎΠ³Π»Π° Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ поля, Ссли пСрСсчСт происходит динамичСски.

Π’Π°ΠΊΠΆΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ часто Π·Π°Π±Ρ‹Π²Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ мСняСт порядок ΠΏΠΎΠ»Π΅ΠΉ. Если ваш ΠΊΠΎΠ΄ Π΄Π°Π»Π΅Π΅ обращаСтся ΠΊ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌ ΠΏΠΎ индСксам (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π’Π—[0].Колонки[1]), Ρ‚ΠΎ послС удалСния ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΏΠΎ индСксу 1 Π²Π΅Ρ€Π½Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Π±Ρ‹Π²ΡˆΠ΅ΠΉ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ. ВсСгда ΡΡ‚Π°Ρ€Π°ΠΉΡ‚Π΅ΡΡŒ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΏΠΎ ΠΈΠΌΠ΅Π½Π°ΠΌ ΠΏΠΎΠ»Π΅ΠΉ.

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

  • ❌ Ошибка: Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π² Ρ†ΠΈΠΊΠ»Π΅ Для i = 0 По Π’Π—.Колонки.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ() Π±Π΅Π· ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΡ счСтчика.
  • βœ… РСшСниС: Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ†ΠΈΠΊΠ» Для i = Π’Π—.Колонки.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ() - 1 По 0 Π¨Π°Π³ -1.
  • ❌ Ошибка: ΠžΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ΅ Π² ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΊΠΎΠ΄Π΅ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ.
  • βœ… РСшСниС: ВсСгда провСряйтС Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, хранящих ссылки Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΈ доступныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… вСрсиях ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ (8.2, 8.3, 8.3.20+). ВсСгда ΡΠ²Π΅Ρ€ΡΠΉΡ‚Π΅ΡΡŒ со справкой ΠΏΠΎ вашСй ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Ссли ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ спСцифичСскиС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠ΅Ρ€Π΅Π΄ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ

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

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с большими массивами

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

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

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

Алгоритм Π·Π°ΠΌΠ΅Π½Ρ‹ удалСния Π½Π° ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Π½ΠΎΠ²ΡƒΡŽ Π’Π— -> Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π² Π½Π΅Ρ‘ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½ΡƒΠΆΠ½Ρ‹Π΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ -> Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π‘ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΠΈ(Π˜ΡΡ…ΠΎΠ΄Π½Π°ΡΠ’Π—, ИмСнаКолонок) -> Π—Π°ΠΌΠ΅Π½ΠΈΡ‚Π΅ ссылку Π½Π° ΡΡ‚Π°Ρ€ΡƒΡŽ Π’Π— Π½ΠΎΠ²ΠΎΠΉ.

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

МоТно Π»ΠΈ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΡƒΠ΄Π°Π»Π΅Π½Π½ΡƒΡŽ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ Π² Π’Π°Π±Π»ΠΈΡ†Π΅ Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ?

НСт, стандартными срСдствами ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΡƒΠ΄Π°Π»Π΅Π½Π½ΡƒΡŽ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ вмСстС с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. ΠœΠ΅Ρ‚ΠΎΠ΄ Π£Π΄Π°Π»ΠΈΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠΌΠΎ ΠΎΡ‡ΠΈΡ‰Π°Π΅Ρ‚ ΠΏΠ°ΠΌΡΡ‚ΡŒ, Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΡƒΡŽ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ этой ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ. ЕдинствСнный способ β€” ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡΠΎΡ…Ρ€Π°Π½Π΅Π½Π½ΡƒΡŽ копию Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Π·Π°ΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· источника.

Π§Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚, Ссли ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ отсортирована Ρ‚Π°Π±Π»ΠΈΡ†Π°?

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

Как ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ всС ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΠΊΡ€ΠΎΠΌΠ΅ ΠΎΠ΄Π½ΠΎΠΉ?

Для этого ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ» ΠΏΠΎ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ порядкС. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠΉΡ‚Π΅ имя ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ: Ссли ΠΎΠ½ΠΎ Π½Π΅ совпадаСт с ΠΈΠΌΠ΅Π½Π΅ΠΌ сохраняСмой ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ, Π²Ρ‹Π·Ρ‹Π²Π°ΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π£Π΄Π°Π»ΠΈΡ‚ΡŒ. ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΎ, создайтС Π½ΠΎΠ²ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΈ скопируйтС Π² Π½Π΅Ρ‘ Π΅Π΄ΠΈΠ½ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ Π½ΡƒΠΆΠ½ΡƒΡŽ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ.

ВлияСт Π»ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π½Π° ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ†ΠΈΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ?

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

МоТно Π»ΠΈ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ ΠΈΠ· Π’Π°Π±Π»ΠΈΡ†Ρ‹ Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠΉ ΠΈΠ· запроса, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ "Π—ΠΠΠ§Π•ΠΠ˜Π•(...)"?

Π”Π°, Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹ΠΉ Π² ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ΅ (Π² Ρ‚ΠΎΠΌ числС Ψ­Ψ§Ψ΅Ω„ ΠΈΠ· макроса "Π—ΠΠΠ§Π•ΠΠ˜Π•"), Π½Π΅ влияСт Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ удалСния самой ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ. Π’Ρ‹ удаляСтС структуру поля, Π° Π½Π΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Випизация провСряСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ записи нСсовмСстимых Π΄Π°Π½Π½Ρ‹Ρ… Π² ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ.