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

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

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

Запуск ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½Π°Ρ настройка срСды

Бтандартная поставка ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя исполняСмый Ρ„Π°ΠΉΠ» консоли, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ располоТСн Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ установки ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Для запуска Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΉΡ‚ΠΈ Ρ„Π°ΠΉΠ» 1cv8c.exe (для клиСнтской части) ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ярлык «Консоль запросов» Π² мСню ΠŸΡƒΡΠΊ, Ссли ΠΎΠ½ Π±Ρ‹Π» создан ΠΏΡ€ΠΈ инсталляции.

ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΌ запускС ΠΏΠ΅Ρ€Π΅Π΄ Π²Π°ΠΌΠΈ откроСтся пустоС ΠΎΠΊΠ½ΠΎ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π°. ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ шагом являСтся созданиС Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ Π±Π°Π·Π΅. Π­Ρ‚ΠΎ дСлаСтся Ρ‡Π΅Ρ€Π΅Π· мСню Π€Π°ΠΉΠ» -> ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ Π±Π°Π·Π°ΠΌ ΠΈΠ»ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ инструмСнтов. Π—Π΄Π΅ΡΡŒ Π²Π°ΠΌ потрСбуСтся ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ: файловая Π±Π°Π·Π° ΠΈΠ»ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрный Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ (MS SQL, PostgreSQL, Oracle).

Для ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрного Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° критичСски Π²Π°ΠΆΠ½ΠΎ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ввСсти строку соСдинСния. Ошибка Π² ΠΈΠΌΠ΅Π½ΠΈ сСрвСра кластСра ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Π½ΠΈ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ нСвозмоТности Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ. Если Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π² Π΄ΠΎΠΌΠ΅Π½Π½ΠΎΠΉ сСти, ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Ρƒ вашСй ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи Π΅ΡΡ‚ΡŒ ΠΏΡ€Π°Π²Π° Π½Π° доступ ΠΊ сСрвСру 1Π‘. Π’ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ достаточно ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ ΠΊ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Ρƒ Π±Π°Π·Ρ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Z:\Bases\Accounting.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Никогда Π½Π΅ выполняйтС запросы Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… (UPDATE, DELETE, INSERT) Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ Π±Π°Π·Π΅ Π±Π΅Π· ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ создания ΠΏΠΎΠ»Π½ΠΎΠΉ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠΈ. Ошибка Π² условии WHERE ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π½Π΅ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠΌΠΎΠΉ ΠΏΠΎΡ‚Π΅Ρ€Π΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

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

Бинтаксис языка запросов ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° с ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ

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

Для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ формирования запроса Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова ВЫБРАВЬ, Π˜Π—, Π“Π”Π•, Π£ΠŸΠžΠ Π―Π”ΠžΠ§Π˜Π’Π¬ ПО. БистСма автоматичСски ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ этот тСкст Π² Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ SQL-ΠΊΠΎΠ΄ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Π‘Π£Π‘Π” ΠΏΠ΅Ρ€Π΅Π΄ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΎΠΉ Π½Π° сСрвСр. Π­Ρ‚ΠΎ обСспСчиваСт ΠΊΡ€ΠΎΡΡΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½ΠΎΡΡ‚ΡŒ, Π½ΠΎ Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π΅Ρ‚ ограничСния Π½Π° использованиС спСцифичСских Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

ΠžΡΠΎΠ±ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ ΠΈΠ³Ρ€Π°ΡŽΡ‚ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π°Π³Ρ€Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΈΠ»ΠΈ ΠΎΡ‚Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π½Π°Π±ΠΎΡ€Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…. ИспользованиС Ρ‚Π°ΠΊΠΈΡ… Ρ‚Π°Π±Π»ΠΈΡ†, ΠΊΠ°ΠΊ РСгистрНакоплСния.ΠžΡΡ‚Π°Ρ‚ΠΊΠΈ ΠΈΠ»ΠΈ РСгистрБвСдСний.Π‘Ρ€Π΅Π·Ρ‹ΠŸΠΎΡΠ»Π΅Π΄Π½ΠΈΡ…, позволяСт ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π±Π΅Π· нСобходимости ΠΏΠΈΡΠ°Ρ‚ΡŒ слоТныС соСдинСния ΠΈ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ.

Π‘Π΅ΠΊΡ€Π΅Ρ‚ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ‚Π°Π±Π»ΠΈΡ†

ΠŸΡ€ΠΈ использовании Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ‚Π°Π±Π»ΠΈΡ† ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π‘Ρ€Π΅Π·Ρ‹ΠŸΠΎΡΠ»Π΅Π΄Π½ΠΈΡ…) всСгда ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΠΉΡ‚Π΅ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄. Если ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ Π½Π΅ Π·Π°Π΄Π°Π½, систСма ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΎΠ±Ρ…ΠΎΠ΄ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ рСгистра, Ρ‡Ρ‚ΠΎ критичСски Π·Π°ΠΌΠ΅Π΄Π»ΠΈΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΡ€ΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΌΠ°Ρ… Π΄Π°Π½Π½Ρ‹Ρ….

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

  • πŸ” Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ псСвдонимы Ρ‚Π°Π±Π»ΠΈΡ† для сокращСния ΠΊΠΎΠ΄Π° ΠΈ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ читаСмости запроса.
  • πŸ“¦ ΠžΠ±Ρ€Π°Ρ‰Π°ΠΉΡ‚Π΅ΡΡŒ ΠΊ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌ рСгистров вмСсто физичСских Ρ‚Π°Π±Π»ΠΈΡ† для ускорСния Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ.
  • βš™οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠΉΡ‚Π΅ Ρ‚ΠΈΠΏΡ‹ ΠΏΠΎΠ»Π΅ΠΉ Π² условиях соСдинСния Π²ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Π½ΠΈΠ΅ нСявных ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΉ.

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΠ·Π°Ρ†ΠΈΡ запросов ΠΈ динамичСскоС Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Одной ΠΈΠ· самых ΠΌΠΎΡ‰Π½Ρ‹Ρ… возмоТностСй консоли являСтся Ρ€Π°Π±ΠΎΡ‚Π° с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ. ВмСсто Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ТСстко ΠΏΡ€ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ значСния Π² тСкстС запроса (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΡƒΡŽ Π΄Π°Ρ‚Ρƒ ΠΈΠ»ΠΈ ссылку Π½Π° ΠΊΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Π°), Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹. Π­Ρ‚ΠΎ дСлаСтся ΠΏΡƒΡ‚Π΅ΠΌ добавлСния символа & ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² тСкстС запроса, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, &ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ ΠΈΠ»ΠΈ &ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚.

ΠŸΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Ρ‚Π°ΠΊΠΎΠ³ΠΎ запроса систСма автоматичСски сформируСт ΠΎΠΊΠ½ΠΎ Π²Π²ΠΎΠ΄Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ объявлСнного ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°. Π­Ρ‚ΠΎ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π½ΠΎ ΠΈ бСзопасно с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ SQL-ΠΈΠ½ΡŠΠ΅ΠΊΡ†ΠΈΠΉ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ значСния ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚ тСкста ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹: Π”Π°Ρ‚Π°, Число, Π‘Ρ‚Ρ€ΠΎΠΊΠ°, Бсылка ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ Бписок Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

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

πŸ’‘

Для ускорСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ с большими списками Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ‚ΠΈΠΏ «Бписок Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉΒ». ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° списка Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ &БписокНомСнклатуры Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ быстрСС, Ρ‡Π΅ΠΌ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π»ΠΈΠ½Π½ΠΎΠ³ΠΎ условия Π˜Π›Π˜ Π² тСкстС запроса.

Π’Π°ΠΊΠΆΠ΅ стоит ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования языковых конструкций Π²Π½ΡƒΡ‚Ρ€ΠΈ запроса, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Π•Π‘Π’Π¬NULL ΠΈΠ»ΠΈ Π’Π«Π‘ΠžΠ . Π­Ρ‚ΠΈ конструкции ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ вСтвлСния прямо Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎ часто эффСктивнСС, Ρ‡Π΅ΠΌ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² Π² ΠΊΠΎΠ΄Π΅ прилоТСния. Однако Π·Π»ΠΎΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ слоТной Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ Π² запросС ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Ρ‚Ρ€ΡƒΠ΄Π½ΠΈΡ‚ΡŒ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΊΠΎΠ΄Π°.

Анализ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ ΠΏΠ»Π°Π½ выполнСния

НаписаниС Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅Π³ΠΎ запроса β€” это Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π° Π΄Π΅Π»Π°. Вторая, Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ ваТная Π·Π°Π΄Π°Ρ‡Π° β€” ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Π΅Π³ΠΎ быстроС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅. Для этого Π² консоли запросов прСдусмотрСн Ρ€Π΅ΠΆΠΈΠΌ Π°Π½Π°Π»ΠΈΠ·Π° ΠΏΠ»Π°Π½Π° выполнСния. ΠŸΠ΅Ρ€Π΅Π΄ запуском основного запроса рСкомСндуСтся Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π³Π°Π»ΠΎΡ‡ΠΊΡƒ Β«ΠŸΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΠ»Π°Π½ выполнСния» Π² настройках запуска.

План выполнСния прСдставляСт собой Π΄Π΅Ρ€Π΅Π²ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π‘Π£Π‘Π” Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ для получСния Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°. Анализируя это Π΄Π΅Ρ€Π΅Π²ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Β«ΡƒΠ·ΠΊΠΈΠ΅ мСста»: ΠΏΠΎΠ»Π½ΠΎΠ΅ сканированиС Ρ‚Π°Π±Π»ΠΈΡ†, отсутствиС индСксов ΠΈΠ»ΠΈ Π½Π΅ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ порядок соСдинСния. ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ являСтся ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ (Cost), которая отобраТаСтся Π² ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π°Ρ… ΠΎΡ‚ ΠΎΠ±Ρ‰Π΅Π³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ ОписаниС ВлияниС Π½Π° ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ
Table Scan ПолноС сканированиС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ВысокоС (ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ)
Index Seek Поиск ΠΏΠΎ индСксу НизкоС (быстро)
Hash Match Π‘ΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π‘Ρ€Π΅Π΄Π½Π΅Π΅ (зависит ΠΎΡ‚ памяти)
Sort Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… Π‘Ρ€Π΅Π΄Π½Π΅Π΅ (Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ рСсурсов)

Если Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅ Π² ΠΏΠ»Π°Π½Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ сканирования большой Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, слСдуСт ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ индСксов ΠΏΠΎ полям, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΌ Π² условиях ΠΎΡ‚Π±ΠΎΡ€Π° (Π“Π”Π•). Часто Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ индСкса Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ настройкС Π‘Π£Π‘Π” Ρ€Π΅ΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ. Π’Π°ΠΊΠΆΠ΅ стоит ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² условиях ΠΎΡ‚Π±ΠΎΡ€Π°, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ это ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ использованиС индСкса.

πŸ’‘

ΠžΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ»Π°Π½ выполнСния всСгда стрСмится ΠΊ использованию индСксов (Index Seek) ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ сортировки. НаличиС Table Scan Π½Π° Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… β€” Π³Π»Π°Π²Π½Ρ‹ΠΉ сигнал ΠΊ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ.

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

АдминистрированиС ΠΈ обслуТиваниС Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…

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

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

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

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

πŸ“Š Какая Π·Π°Π΄Π°Ρ‡Π° для вас Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Π° Π² консоли запросов?
ΠžΡ‚Π»Π°Π΄ΠΊΠ° слоТных ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ²
Поиск ошибок Π² Π΄Π°Π½Π½Ρ‹Ρ…
ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹Ρ… запросов
АдминистрированиС ΠΈ чистка

ЧастыС ошибки ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈΡ… устранСния

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

Другая частая ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° β€” ошибка прСобразования Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…. Π­Ρ‚ΠΎ случаСтся, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΠΏΡ‹Ρ‚Π°Π΅Ρ‚Π΅ΡΡŒ ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ ΠΏΠΎΠ»Π΅ Ρ‚ΠΈΠΏΠ° Β«Π”Π°Ρ‚Π°Β» со строкой ΠΈΠ»ΠΈ числом Π±Π΅Π· явного привСдСния Ρ‚ΠΈΠΏΠ°. Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ВипЗначСния ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚Π΅ значСния ΠΊ Π½ΡƒΠΆΠ½ΠΎΠΌΡƒ Ρ‚ΠΈΠΏΡƒ прямо Π² тСкстС запроса.

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

β˜‘οΈ Диагностика ошибки запроса

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

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

Вопросы ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ (FAQ)

МоТно Π»ΠΈ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ запрос ΠΈΠ· консоли Π² Ρ„Π°ΠΉΠ» для ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ использования?

Π”Π°, консоль запросов позволяСт ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ тСкст запроса Π² Ρ„Π°ΠΉΠ»Ρ‹ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .txt ΠΈΠ»ΠΈ .mqf. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ мСню Π€Π°ΠΉΠ» -> Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ. Π­Ρ‚ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ для создания Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… диагностичСских скриптов.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ запрос выполняСтся Π΄ΠΎΠ»Π³ΠΎ Π² консоли, Π½ΠΎ быстро Π² ΠΎΡ‚Ρ‡Π΅Ρ‚Π΅?

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

Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ консоль ΠΊ Π±Π°Π·Π΅ Π½Π° PostgreSQL?

НСобходимо Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Β«PostgreSQLΒ» Π² ΠΎΠΊΠ½Π΅ настроСк ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π½Π° клиСнтском ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ установлСн Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ PostgreSQL ΠΈ прописаны ΠΏΡƒΡ‚ΠΈ ΠΊ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… окруТСния, Ссли ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° 1Π‘ Π½Π΅ нашла ΠΈΡ… автоматичСски.

БСзопасно Π»ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ запросы Π½Π° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ Π±Π°Π·Π΅?

НСт, это нСбСзопасно Π±Π΅Π· ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ тСстирования Π½Π° ΠΊΠΎΠΏΠΈΠΈ Π±Π°Π·Ρ‹. Π›ΡŽΠ±Π°Ρ ошибка Π² условии WHERE ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΠΏΠΎΡ€Ρ‡Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. ВсСгда Π΄Π΅Π»Π°ΠΉΡ‚Π΅ бэкап ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… запросов.