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

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

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ структуры ΠΈ инициализация ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ Π½Π°Ρ‡Π°Ρ‚ΡŒ Π·Π°ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ структуру Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. ΠžΠ±ΡŠΠ΅ΠΊΡ‚ Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ ТСстко Π·Π°Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ Π½Π° этапС создания ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² ΠΊΠΎΠ΄Π΅. Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ явно Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΈΡ…, ΡƒΠΊΠ°Π·Π°Π² имя, Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ, ΠΏΡ€ΠΈ нСобходимости, Π΄Π»ΠΈΠ½Ρƒ строки. Π­Ρ‚ΠΎ дСйствиС выполняСтся ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ.

Если Π²Ρ‹ ΠΏΠΎΠΏΡ‹Ρ‚Π°Π΅Ρ‚Π΅ΡΡŒ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² Π½Π΅ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ, систСма выдаст ΠΎΡˆΠΈΠ±ΠΊΡƒ выполнСния. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ шаг β€” это всСгда описаниС схСмы. Π’ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ простыми (Число, Π‘Ρ‚Ρ€ΠΎΠΊΠ°, Π”Π°Ρ‚Π°) ΠΈΠ»ΠΈ составными.

Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ создания Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ с трСмя ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌΠΈ: Π½ΠΎΠΌΠ΅Π½ΠΊΠ»Π°Ρ‚ΡƒΡ€Π°, количСство ΠΈ сумма. ΠœΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ встроСнныС Ρ‚ΠΈΠΏΡ‹ 1Π‘ для строгой Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ошибок ΠΏΡ€ΠΈ дальнСйшСй ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅:

Π’Π— = Новый Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ;

Π’Π—.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Π’ΠΎΠ²Π°Ρ€", Π’ΠΈΠΏ("Π‘Ρ‚Ρ€ΠΎΠΊΠ°(50)"));

Π’Π—.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ", Π’ΠΈΠΏ("Число(15,2)"));

Π’Π—.Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ("Π¦Π΅Π½Π°", Π’ΠΈΠΏ("Число(15,2)"));

ПослС выполнСния этого ΠΊΠΎΠ΄Π° Π² памяти создаСтся пустая структура, готовая ΠΊ ΠΏΡ€ΠΈΠ΅ΠΌΡƒ строк. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π° ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ ΠΊ рСгистру ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ Ρ‡Π΅Ρ€Π΅Π· Ρ‚ΠΎΡ‡ΠΊΡƒ, хотя Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… контСкстах ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ лояльна. Π›ΡƒΡ‡ΡˆΠ΅ всСгда ΡΠΎΠ±Π»ΡŽΠ΄Π°Ρ‚ΡŒ Ρ‚ΠΎΡ‚ рСгистр, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π» ΡƒΠΊΠ°Π·Π°Π½ ΠΏΡ€ΠΈ создании.

πŸ’‘

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

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ строк ΠΈ прямоС Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ячССк

Π‘Π°ΠΌΡ‹ΠΉ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΉ способ Π½Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ β€” это Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²Ρ‹Ρ… строк с ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ΠΌ ΠΊ Π½ΠΈΠΌ ΠΏΠΎ индСксу ΠΈΠ»ΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ строки. ΠœΠ΅Ρ‚ΠΎΠ΄ Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ссылку Π½Π° newly created строку, Ρ‡Ρ‚ΠΎ позволяСт сразу ΠΆΠ΅ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ значСния Π΅Ρ‘ полям. Π­Ρ‚ΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ для Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… объСмов Π΄Π°Π½Π½Ρ‹Ρ….

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌ двумя способами: ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ (ΠΊΠ°ΠΊ ΠΊ свойству ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°) ΠΈΠ»ΠΈ ΠΏΠΎ индСксу. ИспользованиС ΠΈΠΌΠ΅Π½ΠΈ являСтся Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния читаСмости ΠΊΠΎΠ΄Π°, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ позволяСт сразу ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎΠ»Π΅ заполняСтся. Π˜Π½Π΄Π΅ΠΊΡΠ½Ρ‹ΠΉ доступ (Π‘Ρ‚Ρ€ΠΎΠΊΠ°[0]) умСстСн Π² динамичСских Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°Ρ…, Π³Π΄Π΅ ΠΈΠΌΠ΅Π½Π° ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ ΠΌΠΎΠ³ΡƒΡ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ нСсовмСстимого Ρ‚ΠΈΠΏΠ° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, строку Π² Ρ‡ΠΈΡΠ»ΠΎΠ²ΡƒΡŽ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ) ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ автоматичСскоС ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅. Если ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, тСкст "Абв" Π² число), Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ "НСвСрный Ρ‚ΠΈΠΏ значСния".

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

  • πŸ“ Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Π½ΠΎΠ²ΡƒΡŽ строку ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Π’Π—.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ() ΠΈ сохранитС ссылку Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ.
  • πŸ”’ ΠŸΡ€ΠΈΡΠ²ΠΎΠΉΡ‚Π΅ значСния свойствам строки, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΈΠΌΠ΅Π½Π° ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ: НоваяБтрока.Π’ΠΎΠ²Π°Ρ€ = "Молоко".
  • πŸ’Ύ Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ всС ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Ρ‹ ΠΏΠ΅Ρ€Π΅Π΄ использованиСм Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π² ΠΎΡ‚Ρ‡Π΅Ρ‚Π°Ρ….

Часто Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π·Π°Π±Ρ‹Π²Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ сразу ΠΏΠΎΠΌΠ΅Ρ‰Π°Π΅Ρ‚ строку Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ. Π’Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ "Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ" ΠΈΠ»ΠΈ "Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ". Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ссылка Π½Π° строку ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π°, ΠΎΠ½Π° ΡƒΠΆΠ΅ являСтся Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ.

Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· Ρ†ΠΈΠΊΠ» ΠΈ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…

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

ΠŸΡ€ΠΈ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π²Π°ΠΆΠ½ΠΎ ΡΠΎΠ±Π»ΡŽΠ΄Π°Ρ‚ΡŒ соотвСтствиС Ρ‚ΠΈΠΏΠΎΠ². Если Π² источникС ΠΏΠΎΠ»Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ (Null ΠΈΠ»ΠΈ НСопрСдСлСно), Π° Π² ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊΠ΅ стоит строгий Ρ‚ΠΈΠΏ, Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚ ошибка. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎ ΠΈΠ»ΠΈ ΠΏΡ€Π΅Π΄ΡƒΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

πŸ“Š Какой способ заполнСния Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ‡Π°Ρ‰Π΅?
Π ΡƒΡ‡Π½ΠΎΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ строк
ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ†ΠΈΠΊΠ»ΠΎΠΌ
Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΈΠ· запроса
Π˜ΠΌΠΏΠΎΡ€Ρ‚ ΠΈΠ· Ρ„Π°ΠΉΠ»Π°

НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ пСрСноса Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ с ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°. Допустим, ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡƒΠ΄Π²ΠΎΠΈΡ‚ΡŒ количСство Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ² ΠΏΡ€ΠΈ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ:

Для КаТдого Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊΠ° Из Π’Π—_Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ Π¦ΠΈΠΊΠ»

НоваяБтрока = Π’Π—_НазначСниС.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ();

НоваяБтрока.Π’ΠΎΠ²Π°Ρ€ = Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊΠ°.Π’ΠΎΠ²Π°Ρ€;

НоваяБтрока.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ = Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊΠ°.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ * 2;

НоваяБтрока.Π¦Π΅Π½Π° = Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊΠ°.Π¦Π΅Π½Π°;

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

Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ позволяСт Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ‚Ρ€Π°Π½ΡΡ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π΄Π°Π½Π½Ρ‹Ρ… "Π½Π° Π»Π΅Ρ‚Ρƒ". Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ алгоритмичСскиС конструкции Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π°: условныС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Если, Π²Ρ‹Π·ΠΎΠ²Ρ‹ ΠΎΠ±Ρ‰ΠΈΡ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ ΠΈΠ»ΠΈ слоТныС матСматичСскиС вычислСния ΠΏΠ΅Ρ€Π΅Π΄ записью Π² ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ.

ИспользованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ для массовых ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ

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

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

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ОписаниС ΠŸΡ€ΠΈΠΌΠ΅Ρ€
Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π”Π°Π½Π½Ρ‹Π΅ для записи Π² ячСйки 0, "НСт", ВСкущаяДата()
ИмяКолонки Π‘Ρ‚Ρ€ΠΎΠΊΠ° с ΠΈΠΌΠ΅Π½Π΅ΠΌ поля ΠΈΠ»ΠΈ Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° "Бтатус", Новый Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°("А, Π‘")
ΠžΡ‚Π±ΠΎΡ€ Π‘Ρ‚Ρ€ΠΎΠΊΠ° условий для Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ строк "Π’ΠΈΠ΄ = 'Услуга'"

Если Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ значСниями ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ, ΠΌΠ΅Ρ‚ΠΎΠ΄ Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ структуру Π² качСствС ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°. ΠšΠ»ΡŽΡ‡ΠΈ структуры Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ с ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π­Ρ‚ΠΎ атомарная опСрация, которая выполняСтся быстрСС, Ρ‡Π΅ΠΌ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ присваиваниС Π² Ρ†ΠΈΠΊΠ»Π΅.

ΠΡŽΠ°Π½ΡΡ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΎΡ‚Π±ΠΎΡ€ΠΎΠΌ Π² ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ

Бинтаксис ΠΎΡ‚Π±ΠΎΡ€Π° Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π΅Π½ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² запросах ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ установкС ΠΎΡ‚Π±ΠΎΡ€Π° Π² динамичСском спискС. МоТно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ И, Π˜Π›Π˜, Π° Ρ‚Π°ΠΊΠΆΠ΅ сравнСния. ΠŸΡ€ΠΈΠΌΠ΅Ρ€: Π’Π—.Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ(1, "ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ", "ΠšΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡ = 'Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½ΠΈΠΊΠ°'").

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…

ΠŸΡ€ΠΈ динамичСском Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ высок риск возникновСния ошибок Ρ‚ΠΈΠΏΠΎΠ². ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° 1Π‘ стараСтся привСсти Ρ‚ΠΈΠΏΡ‹ автоматичСски, Π½ΠΎ это Π½Π΅ всСгда Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. НапримСр, ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π΄Π°Ρ‚Ρƒ Π² ΡΡ‚Ρ€ΠΎΠΊΠΎΠ²ΡƒΡŽ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ ΠΏΡ€ΠΎΠΉΠ΄Π΅Ρ‚ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ (Π΄Π°Ρ‚Π° прСобразуСтся Π² строку), Π½ΠΎ обратная опСрация Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ сбой.

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

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

Π’Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π’ΠΈΠΏΠ—Π½Ρ‡ для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ Ρ‚ΠΈΠΏ значСния Π² ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ΅ ΠΏΠ΅Ρ€Π΅Π΄ записью Π½ΠΎΠ²ΠΎΠ³ΠΎ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ Π² коррСктности Π»ΠΎΠ³ΠΈΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π­Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π½Π°ΠΉΡ‚ΠΈ мСста, Π³Π΄Π΅ Π² Ρ‡ΠΈΡΠ»ΠΎΠ²ΡƒΡŽ ΠΊΠΎΠ»ΠΎΠ½ΠΊΡƒ случайно ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ пустая строка ΠΈΠ»ΠΈ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

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

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

НаиболСС быстрый Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ β€” использованиС ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° Для КаТдого ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ строк с Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΌ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ, ΠΊΠ°ΠΊ Π±Ρ‹Π»ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π²Ρ‹ΡˆΠ΅. Π˜Π·Π±Π΅Π³Π°ΠΉΡ‚Π΅ Π»ΠΈΡˆΠ½ΠΈΡ… Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ относятся ΠΊ заполнСнию Π΄Π°Π½Π½Ρ‹Ρ…. ВыноситС слоТныС вычислСния Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ Ρ†ΠΈΠΊΠ»Π°, Ссли ΠΎΠ½ΠΈ Π½Π΅ зависят ΠΎΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ строки.

πŸ’‘

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с большими массивами Π΄Π°Π½Π½Ρ‹Ρ… (Π±ΠΎΠ»Π΅Π΅ 10 000 строк) ΠΈΠ·Π±Π΅Π³Π°ΠΉΡ‚Π΅ поиска строк ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Найти Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»ΠΎΠ² заполнСния β€” это ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΈΡ‡Π½ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ врСмя выполнСния.

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

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

Как ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ всС Π΄Π°Π½Π½Ρ‹Π΅ Π² ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ΅, Π½Π΅ удаляя строки?

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ НСопрСдСлСно ΠΈΠ»ΠΈ пустой строкой/Π½ΡƒΠ»Ρ‘ΠΌ Π² зависимости ΠΎΡ‚ Ρ‚ΠΈΠΏΠ°. НапримСр: Π’Π—.Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ(НСопрСдСлСно, "ИмяКолонки"). Π­Ρ‚ΠΎ сохранит структуру ΠΈ количСство строк, Π½ΠΎ сотрСт Π΄Π°Π½Π½Ρ‹Π΅ Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ ΠΏΠΎΠ»Π΅.

МоТно Π»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ послС создания Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹?

НСт, Ρ‚ΠΈΠΏ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ фиксируСтся Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π΅Ρ‘ добавлСния Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Ρ‚ΠΎΠ΄ Колонки.Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ с Π½ΡƒΠΆΠ½ΠΎΠΉ структурой ΠΈ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΡƒΠ΄Π° Π΄Π°Π½Π½Ρ‹Π΅ с ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Ρ‚ΠΈΠΏΠΎΠ².

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли имя ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ содСрТит ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹?

Если имя ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ содСрТит ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ ΠΈΠ»ΠΈ спСцсимволы, ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ Π½Π΅ΠΉ Ρ‡Π΅Ρ€Π΅Π· Ρ‚ΠΎΡ‡ΠΊΡƒ (Π‘Ρ‚Ρ€ΠΎΠΊΠ°.Имя Колонки) нСльзя. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ индСксный доступ: Π‘Ρ‚Ρ€ΠΎΠΊΠ°["Имя Колонки"]. Однако Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π΅Π»ΠΎΠ² Π² ΠΈΠΌΠ΅Π½Π°Ρ… слуТСбных ΠΊΠΎΠ»ΠΎΠ½ΠΎΠΊ.

Как ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ?

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π’Π—.Π‘ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΠΈ(ДругаяВЗ) для структуры ΠΈ Ρ†ΠΈΠΊΠ» для строк, Π»ΠΈΠ±ΠΎ создайтС Π½ΠΎΠ²ΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π’Π—.Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΠšΠΎΠ»ΠΎΠ½ΠΊΠΈ Ссли Π΄Π°Π½Π½Ρ‹Π΅ совмСстимы. ΠŸΡ€ΠΎΡΡ‚ΠΎΠ΅ присваиваниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ (Π’Π—2 = Π’Π—1) создаст ссылку Π½Π° Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, Π° Π½Π΅ копию.

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠ΅Ρ€Π΅Π΄ сохранСниСм Π΄Π°Π½Π½Ρ‹Ρ…

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