ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ
ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠΈΡΡΠ΅ΠΌ Π½Π° Π±Π°Π·Π΅ Π‘Π£ΠΠ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΠ°ΠΊΡΠΎΡΠΎΠ² ΠΏΡΠΈ Π²ΡΠ±ΠΎΡΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠ°. Π£ΡΠΈΡΡΠ²Π°Ρ ΡΡΠΎ, ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠ° Yaffil Π±ΠΎΠ»ΡΡΠΎΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΠ΄Π΅Π»ΡΠ΅ΡΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΡΠ΅Π΄ΡΡΠ²Π° Π°Π½Π°Π»ΠΈΠ·Π° ΠΈ ΠΏΡΠΎΡΠ°ΠΉΠ»ΠΈΠ½Π³Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.
ΠΠ°Π΄Π΅ΠΆΠ½ΠΎΡΡΡ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ
Π ΡΠ΅ΡΠ²Π΅ΡΠ΅ Yaffil ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΎ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΡΠΈΠ±ΠΎΠΊ, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡ ΠΊ ΠΏΠΎΡΡΠ΅ Π΄Π°Π½Π½ΡΡ . Π ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ Π²Π΅ΡΡΠΈΡΡ InterBase ΡΠ°ΠΊΠΈΠ΅ ΠΎΠΏΠ°ΡΠ½ΡΠ΅ ΡΠΈΡΡΠ°ΡΠΈΠΈ, ΠΊΠ°ΠΊ ΠΏΠΎΡΡΠ° ΠΏΠ°ΠΌΡΡΠΈ (Π²ΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ Π² ΠΊΠΎΠ΄Π΅ ΡΠ΅ΡΠ²Π΅ΡΠ°, Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠΉ UDF ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΡΡΠ΅Π½Π½ΡΡ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ ΠΠ), ΠΏΡΠΎΡΠ΅ΠΊΠ°Π»ΠΈ Π²Π½Π΅ΡΠ½Π΅ Π½Π΅Π·Π°ΠΌΠ΅ΡΠ½ΠΎ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ. ΠΏΠΎΠΊΠ° Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ Π½Π΅ Π±ΡΠ»Π° Π½Π΅ΠΏΠΎΠΏΡΠ°Π²ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΡΡΠ΅Π½Π°.
ΠΡΠΈΠ±ΠΊΠ° ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΠΏΠ°ΠΌΡΡΡΡ Π² Yaffil, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΌΡ ΠΎΡΡΠ°Π½ΠΎΠ²Ρ ΡΠ΅ΡΠ²Π΅ΡΠ° Ρ ΠΏΠΎΡΠ΅ΡΠ΅ΠΉ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡΠΈΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΉ.
Π Yaffil, ΠΊΠ°ΠΊ ΠΈ Π² InterBase 7.0, ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Π° Π΄ΡΡΠ° Π² Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ, ΡΠ²ΡΠ·Π°Π½Π½Π°Ρ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π²Π½Π΅ΡΠ½ΠΈΡ ΡΠ°Π±Π»ΠΈΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π»ΡΠ±ΠΎΠΌΡ ΡΠ°ΠΉΠ»Ρ ΡΠΈΡΡΠ΅ΠΌΡ. Π’Π°ΠΊΠΆΠ΅ Π² Yaffil ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Π° ΡΠ΅ΡΡΠ΅Π·Π½Π°Ρ ΠΎΡΠΈΠ±ΠΊΠ°, ΡΠ²ΡΠ·Π°Π½Π½Π°Ρ Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ (SEH) Win32 API
ΠΡΠ»ΠΈΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΡΠ΅ΡΠ²Π΅ΡΠ° Yaffil
Π£Π»ΡΡΡΠ΅Π½Π½Π°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ
ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΠ°ΠΊΡΠΎΡΠΎΠ², ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠΈΡ ΠΏΡΠΈΠ³ΠΎΠ΄Π½ΠΎΡΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ° Π‘Π£ΠΠ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ. ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ, ΠΊΠΎΡΠΎΡΡΡ ΡΠ΅ΡΠ²Π΅Ρ ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ΡΡΠΈ Π½Π° Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠΉ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅, Π²ΡΡΠ°ΠΆΠ΅Π½Π½ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΈΠ»ΠΈ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΡ Π² Π΅Π΄ΠΈΠ½ΠΈΡΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, ΡΠΊΠΎΡΠΎΡΡΠ½ΡΠ΅ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ Π»ΠΈΠ½Π΅ΠΉΠΊΠΈ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² InterBase ΡΠ°ΡΡΠΎ ΡΡΡΡΠΏΠ°ΡΡ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΠΎΠ², ΡΠ°ΠΊΠΈΡ , ΠΊΠ°ΠΊ MSSQL ΠΈΠ»ΠΈ Sybase SQL Anywhere. ΠΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Yaffil Π΄Π°Π»Π΅ΠΊΠΎ ΠΎΠΏΠ΅ΡΠ΅ΠΆΠ°Π΅Ρ ΡΠ²ΠΎΠΈΡ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ² ΠΈΠ· ΠΊΠ»ΠΎΠ½Π° InterBase. ΠΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΡΠ΅Ρ ΠΆΠ΅ ΡΠ°ΠΌΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² Yaffil ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π² 2-3 ΡΠ°Π·Π° Π±ΡΡΡΡΠ΅Π΅, ΡΠ΅ΠΌ InterBase 6.0 ΠΈ Firebird 1.0. Π’Π°ΠΊΠΈΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Π΄ΠΎΡΡΠΈΠ³Π½ΡΡΡ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΌΠ½ΠΎΠ³ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΌ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡΠΌ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ² ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠ΅ΠΉ ΠΊΠΎΠ΄Π°, Π±ΠΎΠ»ΡΡΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ² ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠ°Π½Ρ Π½Π° Π°ΡΡΠ΅ΠΌΠ±Π»Π΅ΡΠ΅ Ρ 86 ΡΠ±ΡΠ°Π½Ρ Π½Π΅Π½ΡΠΆΠ½ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ Π²ΡΠ·ΠΎΠ²Ρ
Π£Π»ΡΡΡΠ΅Π½Π½ΡΠΉ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡ Π·Π°ΠΏΡΠΎΡΠΎΠ²
ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡ - ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠΎΠ΄Π° "ΠΌΠΎΠ·Π³" ΡΠ΅ΡΠ²Π΅ΡΠ°, ΠΈ ΡΡΠ΅ΠΏΠ΅Π½Ρ Π΅Π³ΠΎ ΠΈΠ½ΡΠ΅Π»Π»Π΅ΠΊΡΡΠ°Π»ΡΠ½ΠΎΡΡΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΊΠ°ΡΠ΄ΠΈΠ½Π°Π»ΡΠ½ΠΎ ΠΏΠΎΠ²Π»ΠΈΡΡΡ Π½Π° ΡΠΊΠΎΡΠΎΡΡΡ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠ΅Π²Π΅ΡΠ½ΠΎ Π²ΡΠ±ΡΠ°Π½Π½ΡΠΉ ΠΏΠ»Π°Π½ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ° Π² ΡΡΡΡΡΠΈ ΡΠ°Π·. ΠΠ° Π²ΡΠ΅ΠΌΡ ΡΠ²ΠΎΠ΅ΠΉ ΡΠ²ΠΎΠ»ΡΡΠΈΠΈ ΠΎΡ Π²Π΅ΡΡΠΈΠΈ InterBase 4.0, Π½Π΅ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΠΉ Π²ΠΎΠΎΠ±ΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²Π½ΡΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ, ΠΈ Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ Π²Π΅ΡΡΠΈΠΉ Π² ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡ InterBase ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ Borland Π²Π½ΠΎΡΠΈΠ»ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Ρ ΠΎΡΡ ΠΈ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΠ»ΠΈ ΠΊ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΠΏΠ»Π°Π½ΠΎΠ² Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΡΠ»ΡΡΠ°Π΅Π², Π½ΠΎ ΡΠ°ΡΡΠΎ Π½Π΅ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·ΡΠ΅ΠΌΠΎ ΡΠΊΠ°Π·ΡΠ²Π°Π»ΠΈΡΡ Π½Π° Π΄ΡΡΠ³ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ°Ρ . ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΠΏΡΡΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ InterBase Π½Π°ΡΡΠΈΠ»ΡΡ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π² ΡΠ²Π½ΠΎΠΌ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ ANSI SQL, Π½ΠΎ Π΄ΡΡΠ³ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± Π²ΡΠ±ΠΎΡΠΊΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π² ΡΡΠ΄Π΅ ΡΠ»ΡΡΠ°Π΅Π² ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΠ» ΠΊ ΠΊΠ°ΡΠ°ΡΡΡΠΎΡΠΈΡΠ΅ΡΠΊΠΎΠΌΡ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ². ΠΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ Π½Π΅ΠΏΡΠΈΡΡΠ½ΠΎΡΡΠΈ ΠΏΠΎΡΠ²ΠΈΠ»ΠΈΡΡ Π² Π²Π΅ΡΡΠΈΠΈ 6.0, Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π½Π΅ ΠΌΠΎΠ³Π»ΠΈ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΡΠΈ ΡΠ²ΠΎΠΈ ΡΠΈΡΡΠ΅ΠΌΡ Π½Π° ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ.
ΠΡΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π² Π±ΠΎΠ»ΡΡΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ½ΡΡ ΡΠ»ΡΡΠ°Π΅Π² Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠ΅ΠΉ InterBase Π²Π΅ΡΡΠΈΠΉ 4.x, 5.x ΠΈ 6.x, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Yaffil Π²Π½Π΅ΡΠ»ΠΈ ΡΡΠ΄ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠΉ, Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΡΠ΅Π³ΠΎ Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°Π΅Π² ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΠΎΠ±ΡΠ΅ ΠΎΡΠΊΠ°Π·Π°ΡΡΡΡ ΠΎΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΡΡΠ½ΡΡ ΠΏΠ»Π°Π½ΠΎΠ² ΠΡΠΈ ΡΡΠΎΠΌ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π΅ Π½Π° Yaffil ΡΠΎ ΡΡΠ°ΡΡΡ Π²Π΅ΡΡΠΈΠΉ InterBase ΡΠ»ΡΡΠ°Π΅Π² ΡΡ ΡΠ΄ΡΠ΅Π½ΠΈΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΠ»Π°Π½ΠΎΠ² ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π½Π΅ Π½Π°Π±Π»ΡΠ΄Π°Π΅ΡΡΡ.
ΠΠ΄Π½Π°ΠΊΠΎ Π² ΡΠ΅Ρ ΡΠ»ΡΡΠ°ΡΡ , ΠΊΠΎΠ³Π΄Π° ΡΡΡΠ½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π΅ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ, Yaffil ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ.
ΠΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡΠ° Yaffil.
ΠΡΠ±ΠΎΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Ρ ΠΌΠ΅Π½ΡΡΠΈΠΌ ΡΠΈΡΠ»ΠΎΠΌ ΠΏΠΎΠ»Π΅ΠΉ ΠΏΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Ρ Π±ΠΎΠ»ΡΡΠΈΠΌ ΡΠΈΡΠ»ΠΎΠΌ ΠΏΠΎΠ»Π΅ΠΉ
ΠΡΠΎΡ ΡΠ»ΡΡΠ°ΠΉ ΡΠ°ΡΡΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ, ΠΊΠΎΠ³Π΄Π° Π² ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΈΠΌΠ΅Π΅ΡΡΡ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ², Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΡΠΎΡΡΠ°Π²Π½ΡΡ . ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡ Interbase/Firebird Π²ΡΠ΅Π³Π΄Π° ΠΏΡΡΠ°Π»ΡΡ Π²ΡΠ±ΡΠ°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡ Π²Π°ΡΡΠ²Π°Π΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΠ»Π΅ΠΉ, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π» Π±ΠΎΠ»Π΅Π΅ Π±ΡΡΡΡΡΠΉ ΠΈ ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ. ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡ Yaffil Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ°Π·ΡΠ΅ΡΠ°Π΅Ρ Π΄Π°Π½Π½ΡΡ ΡΠΈΡΡΠ°ΡΠΈΡ. ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ: Π’Π°Π±Π»ΠΈΡΠ° ΠΈΠ· ΡΡΠ΅Ρ ΠΏΠΎΠ»Π΅ΠΉ Table 1 (Fl, F2, F3) ΠΠ° Π½Π΅Π΅ ΡΠΎΠ·Π΄Π°Π½Ρ ΡΡΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°: IDX_F1(F1), IDX_F1_F2(F1,F2), IDX_F1_F2_F3(F1,F2,F3) ΠΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌ Π·Π°ΠΏΡΠΎΡ:
select * from Tablel where Fl = ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ
ΠΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΠ»Π°Π½Ρ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ²: Interbase 6.5/FireBird 1.0:
PLAN (Π’ INDEX (IDX_F1_F2_F3))
Yaffil:
PLAN (T INDEX (IDX_F1))
Interbase 6.5/FireBird 1.0 ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΠΏΠΎΠ»Π΅ΠΉ, Ρ ΠΎΡΡ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ, ΡΡΠΎ Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π°Π΄ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎ ΠΏΠΎΠ»Ρ F1, ΠΊΠ°ΠΊ ΡΡΠΎ ΠΈ Π΄Π΅Π»Π°Π΅Ρ Yaffil. ΠΡΠΎ ΠΎΡΠ΅Π½Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½Π°Ρ ΠΎΡΠΈΠ±ΠΊΠ°, ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡΠ°Ρ ΠΊ Π·Π°ΠΌΠ΅Π΄Π»Π΅Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠ°, ΠΎΠ±ΠΎΠΉΡΠΈ ΠΊΠΎΡΠΎΡΡΡ Π±Π΅Π· ΡΠ²Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠ»ΠΎΠΆΠ½ΠΎ.
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ Ρ Π½Π°ΡΠ°Π»ΡΠ½ΡΠΌΠΈ ΡΠ΅Π³ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ, ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΡΡΠΈΠΌΠΈ ΡΡΠ»ΠΎΠ²ΠΈΡ ΠΈ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΎΠΉ ΠΏΠΎ ΠΎΡΡΠ°Π»ΡΠ½ΡΠΌ
ΠΡΠΎΡ ΡΠ»ΡΡΠ°ΠΉ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ, ΠΊΠΎΠ³Π΄Π° Π²ΡΠ±ΠΎΡΠΊΠ° Π΄Π΅Π»Π°Π΅ΡΡΡ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ ΠΏΠΎΠ»Ρ, Π° ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° - ΠΏΠΎ Π΄ΡΡΠ³ΠΎΠΌΡ, ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΈΠΌΠ΅Π΅ΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎ ΠΎΠ±ΠΎΠΈΠΌ ΠΏΠΎΠ»ΡΠΌ. ΠΡΠΈΠΌΠ΅Ρ: ΠΏΡΡΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠ°Π±Π»ΠΈΡΠ° ΠΈΠ· ΡΡΠ΅Ρ ΠΏΠΎΠ»Π΅ΠΉ T(F1,F2,F3), Π΅ΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΡ ΠΏΠΎΠ»Π΅ΠΉ: Π½Π° ΠΎΠ΄Π½ΠΎ ΠΏΠΎΠ»Π΅ IDX_F1(F1), Π½Π° Π΄Π²Π° ΠΏΠ΅ΡΠ²ΡΡ ΠΏΠΎΠ»Ρ IDX_F1_F2(F1,F2), Π½Π° Π²ΡΠ΅ ΡΡΠΈ ΠΏΠΎΠ»Ρ IDX_F1_F2_F3(F1,F2,F3).
ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌ Π·Π°ΠΏΡΠΎΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ Π²ΠΈΠ΄Π°:
select * from T where Fl=.. order by F2
ΠΠΎΠ»ΡΡΠ°Π΅ΠΌ ΠΏΠ»Π°Π½Ρ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ Π²ΠΈΠ΄Π°:
FireBird/InterBase 6.5:
PLAN SORT(Π’ INDEX (IDX_F1_F2_F3))
Yaffil:
PLAN (T ORDER (IDX_F1))
ΠΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΈΠ· ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Ρ ΡΠΈΠ»ΡΠ½ΠΎ ΡΠ°Π·Π»ΠΈΡΠ°ΡΡΠ΅ΠΉΡΡ ΡΠ΅Π»Π΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡΡ
ΠΡΠΈΠΌΠ΅Ρ: ΠΏΡΡΡΡ Ρ Π½Π°Ρ Π΅ΡΡΡ ΡΠ°Π±Π»ΠΈΡΠ° ΠΈΠ· ΡΡΠ΅Ρ ΠΏΠΎΠ»Π΅ΠΉ T(F1,F2,F3) Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌΠΈ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΏΠΎΠ»Π΅ IDX_Fl(Fl), IDX_F2(F2) ΠΈ IDX_F3(F1). ΠΡΡΡΡ Π·Π΄Π΅ΡΡ F1 ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌ ΠΏΠΎΠ»Π΅ΠΌ (ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ), a F2 - Π½Π΅ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌ. ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌ Π·Π°ΠΏΡΠΎΡ:
select * from Π’ where Fl = ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ! and F2 = ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ2 ...
Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΠ»Π°Π½Ρ: FireBird/InterBase 6.5:
PLAN (Π’ INDEX (IDX_F1, IDX_F2))
Yaffil:
PLAN (Π’ INDEX (IDX_F1))
ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΎΡ Yaffil Π²ΡΠ΅Π³Π΄Π° ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡΡ Ρ ΡΡΠ΅ΡΠΎΠΌ ΡΠ΅Π»Π΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ.
ΠΡΠΌΠ΅ΡΠΈΠΌ, ΡΡΠΎ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΊΡΠΈΡΠ΅ΡΠΈΠ΅Π² ΠΎΡΠ±ΠΎΡΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅Π»Π΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ, Π½ΠΎ ΠΈ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π² ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΡ . Π’Π°ΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, "Π²Π΅Ρ" ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ "=" Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ "Π²Π΅Ρ" ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ "<" ΠΈ ">".
ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΡΠ΅ΡΠ΅Π²ΠΎΠ³ΠΎ ΡΡΠ°ΡΠΈΠΊΠ°
ΠΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΡΠ΅ΡΠ²Π΅Ρ Π‘Π£ΠΠ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ Π½Π΅ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠΌ, Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ΅ΡΠ΅Π· Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΡΠ΅ΡΡ. ΠΡΠΈ ΡΡΠΎΠΌ Π½Π° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΎΡΠΊΠ»ΠΈΠΊΠ° ΡΠ΅ΡΠ²Π΅ΡΠ° ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ΅ Π΄Π°Π½Π½ΡΡ ΠΏΠΎ ΡΠ΅ΡΠΈ, Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠΎΠ³ΠΎ, Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠΎΡΠ½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½.
ΠΠ±ΡΠ΅ΠΌ ΡΠ΅ΡΠ΅Π²ΠΎΠ³ΠΎ ΡΡΠ°ΡΠΈΠΊΠ° Yaffil Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ Π·Π° ΡΡΠ΅Ρ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΠΏΠΎΠ»Π΅ΠΉ ΡΠΈΠΏΠ° VARCHAR, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ Π΄Π°Π½Π½ΡΠ΅ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠΉ Π΄Π»ΠΈΠ½Ρ, Π° Π½Π΅ ΠΎΠ±ΡΡΠ²Π»Π΅Π½Π½ΠΎΠΉ Π² ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΈ ΡΠΈΠΏΠ°. ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΠ΅ Π΅ΡΡΡ Π² Borland InterBase, Π½Π°ΡΠΈΠ½Π°Ρ Ρ Π²Π΅ΡΡΠΈΠΈ 6.5.
ΠΡΡΠ΅ΠΊΡΠΈΠ²Π½Π°Ρ ΡΠ°Π±ΠΎΡΠ° Ρ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌΠΈ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ
Π ΡΠ΅ΡΠ²Π΅ΡΠ΅ InterBase ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° Π²ΡΠ΅Π³Π΄Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ², Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ. ΠΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΡΠ΅Π½ΠΈΡ/Π·Π°ΠΏΠΈΡΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π°Π³ΡΡΠΆΠ°ΡΡ Π΄ΠΈΡΠΊΠΎΠ²ΡΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡΡΡ Π½Π° ΡΠΊΠΎΡΠΎΡΡΠΈ ΡΠ°Π±ΠΎΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ°, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ ΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π½ΠΎ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΠΈΡ ΡΡ ΠΊ Π΄ΠΈΡΠΊΡ. ΠΠΎΡΡΠΎΠΌΡ ΡΠ΅ΡΠ²Π΅Ρ Yaffil ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ Ρ ΡΠ»Π°Π³ΠΎΠΌ FHJE_ATTRIBUTE_TEMPORARY, ΡΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ°Π΅Ρ ΡΠ±ΡΠΎΡ ΠΊΡΡ-Π±ΡΡΠ΅ΡΠΎΠ² Π½Π° Π΄ΠΈΡΠΊ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ ΠΏΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΌΠ° ΠΊΡΡ-ΠΏΠ°ΠΌΡΡΠΈ.
ΠΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ Π΄Π»Ρ ΡΠ΅ΡΠ²Π΅ΡΠ° Windows NT, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Yaffil, ΠΈΠΌΠ΅Π΅Ρ ΡΠΌΡΡΠ» ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ ΠΏΡΠΈΠΎΡΠΈΡΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΡΡΠ° Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΠΈ. ΠΡΠΈ ΡΡΠΎΠΌ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ ΠΏΠ°ΠΌΡΡΠΈ Π±ΡΠ΄Π΅Ρ ΡΡΠ°ΡΠ°ΡΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΡΡ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΡΡ ΠΏΠ°ΠΌΡΡΡ ΠΊΠ°ΠΊ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠΉ ΠΊΡΡ Π²ΠΌΠ΅ΡΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΅Π΅ ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌ. ΠΠ° Π΄Π°Π½Π½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ LargeSystemCache ΠΊΠ»ΡΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ΅Π΅ΡΡΡΠ°
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management.
ΠΠ»Ρ ΡΠ΅ΡΠ²Π΅ΡΠ° InterBase ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ Π²ΡΡΡΠ°Π²ΠΈΡΡ ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² 1. ΠΠ»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π²ΡΡΡΠΏΠΈΠ»ΠΎ Π² ΡΠΈΠ»Ρ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΡΠΈΡΡΠ΅ΠΌΡ.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠ°ΠΊΠΈΠ΅, ΠΊΠ°ΠΊ Microsoft SQL Server, ΠΌΠΎΠ³ΡΡ ΠΏΠ΅ΡΠ΅ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² 0 ΠΏΡΠΈ ΡΠ²ΠΎΠ΅ΠΉ ΠΈΠ½ΡΡΠ°Π»Π»ΡΡΠΈΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠΉ ΠΊΡΡ.
ΠΠΏΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ ΡΡΡΡΠΊΡΡΡΠ° Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ
InterBase ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π·Π°ΠΏΠΈΡΠ΅ΠΉ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ°Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌ RLE (run length encoding - ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠ΅ΠΉ) ΠΏΡΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΈ Π΄Π°Π½Π½ΡΡ , Π·Π° ΡΡΠ΅Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ InterBase ΡΠ²Π»ΡΡΡΡΡ ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½ΡΠΌΠΈ. ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ ΡΡΠΎ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΡΠΌ, ΠΎΠ½ ΡΠ΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ ΡΡΠ΅Π±ΡΠ΅Ρ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠ΅ΡΡΡΡΠΎΠ² ΠΏΡΠΈ Π·Π°ΠΏΠΈΡΠΈ ΠΈ ΡΡΠ΅Π½ΠΈΠΈ Π΄Π°Π½Π½ΡΡ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅.
Π Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠ° Π΄Π°Π½Π½ΡΡ ΡΠΏΠ°ΠΊΠΎΠ²ΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ Π½Π΅ΡΠ΅Π»Π΅ΡΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎΠΉ. ΠΠ°ΠΈΠ±ΠΎΠ»ΡΡΠΈΠΉ ΡΡΡΠ΅ΠΊΡ Π΄ΠΎΡΡΠΈΠ³Π°Π΅ΡΡΡ ΠΏΡΠΈ ΡΠΆΠ°ΡΠΈΠΈ "Ρ Π²ΠΎΡΡΠΎΠ²" ΠΈΠ· ΠΏΡΠΎΠ±Π΅Π»ΠΎΠ² Π΄Π»ΠΈΠ½Π½ΡΡ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ ΡΡΡΠΎΠΊ (ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ CHAR ΠΈ VARCHAR), Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ ΠΊΠΎΡΠΎΡΠΊΠΈΠ΅ Π½Π΅ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π½Π΅ΡΠΆΠΈΠΌΠ°Π΅ΠΌΡ.
ΠΠ»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠΆΠ°ΡΠΈΠ΅ΠΌ Π² Yaffil Π²Π²Π΅Π΄Π΅Π½ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ SQZ_BLOCK. ΠΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ Π±Π»ΠΎΠΊΠ° ΡΡΡΠΎΠΊΠΈ ΡΠ°Π±Π»ΠΈΡΡ (Π² Π±Π°ΠΉΡΠ°Ρ ), Π½Π°ΡΠΈΠ½Π°Ρ Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡΡ ΡΠΆΠ°ΡΠΈΠ΅. ΠΠ»ΠΎΠΊΠΈ ΡΡΡΠΎΠΊΠΈ ΡΠ°Π±Π»ΠΈΡ ΠΌΠ΅Π½Π΅Π΅ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ° Ρ ΡΠ°Π½ΡΡΡΡ Π² ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅. Π‘ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΎΠ±ΡΠ΅ΠΌ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π΅Ρ Π·Π° ΡΡΠ΅Ρ ΡΠΎΠΊΡΠ°ΡΠ΅Π½ΠΈΡ Π·Π°ΡΡΠ°Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° Π½Π° ΡΠΏΠ°ΠΊΠΎΠ²ΠΊΡ. Π ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° Π΄Π°Π½Π½ΡΡ Π±ΠΎΠ»ΡΡΠ΅ Π½Π°Π³ΡΡΠΆΠ°Π΅Ρ Π΄ΠΈΡΠΊΠΎΠ²ΡΡ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ. Π Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠ° Π΄Π°Π½Π½ΡΡ (Π³Π»Π°Π²Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ ΠΏΠΎΠ»Π΅ΠΉ Π² ΡΠ°Π±Π»ΠΈΡΠ°Ρ ) ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ΠΈ Π΄ΠΈΡΠΊΠΎΠ² ΡΠΈΡΡΠ΅ΠΌΡ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ SQZ_BLOCK, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠ΅Π΅ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ. ΠΠ»Π³ΠΎΡΠΈΡΠΌ ΡΠΏΠ°ΠΊΠΎΠ²ΠΊΠΈ, ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ Π² Yaffil, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π²ΡΡΠ°Π²Π½ΠΈΠ²Π°Π΅Ρ Π½Π°ΡΠ°Π»ΠΎ ΠΈ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠΆΠ°ΡΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° Π½Π° Π³ΡΠ°Π½ΠΈΡΡ ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΡΠ»ΠΎΠ²Π°.