ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Β«Π“Π°Π·Π΅Ρ‚Π° объявлСний» с использованиСм ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрной Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ

ΠšΡƒΡ€ΡΠΎΠ²Π°ΡΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

ΠšΠ»ΠΈΠ΅Π½Ρ‚-сСрвСр" — это модСль взаимодСйствия ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ² Π² ΡΠ΅Ρ‚ΠΈ. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹ Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ся Ρ€Π°Π²Π½ΠΎΠΏΡ€Π°Π²Π½Ρ‹ΠΌΠΈ. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ… ΠΈΠΌΠ΅Π΅Ρ‚ своС, ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠ΅ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ…, Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΈΠ³Ρ€Π°Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ. НСкоторыС ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹ Π² ΡΠ΅Ρ‚ΠΈ Π²Π»Π°Π΄Π΅ΡŽΡ‚ ΠΈ Ρ€Π°ΡΠΏΠΎΡ€ΡΠΆΠ°ΡŽΡ‚ся ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ рСсурсами, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ процСссоры, файловая систСма, почтовая слуТба, слуТба ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ, Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ…. Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΈΠΌΠ΅ΡŽΡ‚… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Β«Π“Π°Π·Π΅Ρ‚Π° объявлСний» с использованиСм ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрной Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

БоврСмСнная Тизнь Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° Π±Π΅Π· эффСктивного управлСния. Π’Π°ΠΆΠ½ΠΎΠΉ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ΅ΠΉ ΡΠ²Π»ΡΡŽΡ‚ΡΡ систСмы ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, ΠΎΡ‚ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ зависит ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ любой ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ учрСТдСния. Вакая систСма Π΄ΠΎΠ»ΠΆΠ½Π°:

ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΎΠ±Ρ‰ΠΈΡ… ΠΈΠ»ΠΈ Π΄Π΅Ρ‚Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² ΠΏΠΎ ΠΈΡ‚ΠΎΠ³Π°ΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹;

ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ‚ΡŒ Π»Π΅Π³ΠΊΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ Ρ‚Π΅Π½Π΄Π΅Π½Ρ†ΠΈΠΈ измСнСния Π²Π°ΠΆΠ½Π΅ΠΉΡˆΠΈΡ… ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ;

ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π±Π΅Π· сущСствСнных Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ;

Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ‚ΠΎΡ‡Π½Ρ‹ΠΉ ΠΈ ΠΏΠΎΠ»Π½Ρ‹ΠΉ Π°Π½Π°Π»ΠΈΠ· Π΄Π°Π½Π½Ρ‹Ρ….

Π”Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы «Π“Π°Π·Π΅Ρ‚Π° объявлСний» с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрной Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ. Π’ Π½Π°ΡΡ‚оящСС врСмя фактичСским стандартом для ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… Π‘Π£Π‘Π” стала Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° «ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСр», ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ прСдполагаСтся, Ρ‡Ρ‚ΠΎ Ρ‡Π°ΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅, Π° Π΄Ρ€ΡƒΠ³Π°Ρ — Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅-сСрвСрС, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ для ΠΈΡ… Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚вия Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ». ВзаимодСйствиС «ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСр» осущСствляСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: клиСнтская Ρ‡Π°ΡΡ‚ΡŒ прилоТСния Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ запрос ΠΊ ΡΠ΅Ρ€Π²Π΅Ρ€Ρƒ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ всС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, Π° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ исполнСния запроса отправляСтся ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ для просмотра ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΡ.

Π’ Π΄Π°Π½Π½ΠΎΠΉ курсовой Ρ€Π°Π±ΠΎΡ‚Π΅ Π±ΡƒΠ΄Π΅Ρ‚ спроСктирована ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° удалСнная Π‘Π” ΠΏΠΎ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ «ΠšΠ»ΠΈΠ΅Π½Ρ‚-сСрвСр». Она Π±ΡƒΠ΄Π΅Ρ‚ спроСктирована ΠΈ ΡΠΎΠ·Π΄Π°Π½Π° Π² Π‘Π£Π‘Π” Firebird 2.1 с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ IBExpert, Π° Ρ‚Π°ΠΊΠΆΠ΅ — Π² C++Builder 6.0 с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ доступа ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ InterBaseExpress ΠΈ Π ΠΠ .

Π¦Π΅Π»ΠΈ:.

1. Знакомство с Π‘Π£Π‘Π” Firebird ΠΈ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ΠΎΠΉ IBExpert;

2. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…;

3. ΠŸΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π΅Π½ΠΈΠ΅ Π½Π°Π²Ρ‹ΠΊΠΎΠ² создания web-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для ΠΈ win-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для доступа ΠΊ Π‘Π”.

Π—Π°Π΄Π°Ρ‡ΠΈ:.

4. Π’Ρ‹Π±ΠΎΡ€ сущностСй для Π‘Π” ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ связСй ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ — ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π‘Π”;

5. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π‘Π” с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ IBExpert;

6. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ web-прилоТСния;

7. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ win-прилоТСния.

1. БрСдства проСктирования ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ Π‘Π”.

1.1 АрхитСктура «ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСр» .

Π’ Π½Π°ΡΡ‚оящСС врСмя фактичСским стандартом для ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… Π‘Π£Π‘Π”, стала Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° «ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСр» .

" ΠšΠ»ΠΈΠ΅Π½Ρ‚-сСрвСр" - это модСль взаимодСйствия ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ² Π² ΡΠ΅Ρ‚ΠΈ. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹ Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ся Ρ€Π°Π²Π½ΠΎΠΏΡ€Π°Π²Π½Ρ‹ΠΌΠΈ. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ… ΠΈΠΌΠ΅Π΅Ρ‚ своС, ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠ΅ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ…, Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΈΠ³Ρ€Π°Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ. НСкоторыС ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹ Π² ΡΠ΅Ρ‚ΠΈ Π²Π»Π°Π΄Π΅ΡŽΡ‚ ΠΈ Ρ€Π°ΡΠΏΠΎΡ€ΡΠΆΠ°ΡŽΡ‚ся ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎ-Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ рСсурсами, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ процСссоры, файловая систСма, почтовая слуТба, слуТба ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ, Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ…. Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΠΈΠΌΠ΅ΡŽΡ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ ΡΡ‚ΠΈΠΌ слуТбам, ΠΏΠΎΠ»ΡŒΠ·ΡƒΡΡΡŒ услугами ΠΏΠ΅Ρ€Π²Ρ‹Ρ…. ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€, ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ Ρ‚Π΅ΠΌ ΠΈΠ»ΠΈ ΠΈΠ½Ρ‹ΠΌ рСсурсом, принято Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ сСрвСром этого рСсурса, Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€, ΠΆΠ΅Π»Π°ΡŽΡ‰ΠΈΠΉ ΠΈΠΌ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ — ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ. ΠšΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ сСрвСр опрСдСляСтся Π²ΠΈΠ΄ΠΎΠΌ рСсурса, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΎΠ½ Π²Π»Π°Π΄Π΅Π΅Ρ‚. Π’Π°ΠΊ, Ссли рСсурсом ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‚ΠΎ Ρ€Π΅Ρ‡ΡŒ ΠΈΠ΄Π΅Ρ‚ ΠΎ ΡΠ΅Ρ€Π²Π΅Ρ€Π΅ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ — ΠΎΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Ρ‚ΡŒ запросы ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ², связанныС с ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ…; Ссли рСсурс — это файловая систСма, Ρ‚ΠΎ Π³ΠΎΠ²ΠΎΡ€ΡΡ‚ ΠΎ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΌ сСрвСрС ΠΈΠ»ΠΈ Ρ„Π°ΠΉΠ»-сСрвСрС ΠΈ Ρ‚. Π΄. Π’ ΡΠ΅Ρ‚ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΊΠ°ΠΊ Ρ€ΠΎΠ»ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°, Ρ‚Π°ΠΊ ΠΈ Ρ€ΠΎΠ»ΡŒ сСрвСра. Π­Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ распространяСтся ΠΈ Π½Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. Если ΠΎΠ΄Π½Π° ΠΈΠ· Π½ΠΈΡ… выполняСт Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, прСдоставляя Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π½Π°Π±ΠΎΡ€ услуг, Ρ‚ΠΎ Ρ‚акая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° рассматриваСтся Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ сСрвСра. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ этими услугами, принято Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ. Если прСдполагаСтся, Ρ‡Ρ‚ΠΎ проСктируСмая информационная систСма Π±ΡƒΠ΄Π΅Ρ‚ построСна ΠΏΠΎ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ «ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСр», Ρ‚ΠΎ ΡΡ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ‡Π°ΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅, другая — Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅-сСрвСрС, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ для ΠΈΡ… Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚вия Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ».

ΠšΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрная Π‘Π£Π‘Π” позволяСт ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ ΠΈ ΡΠ΅Ρ€Π²Π΅Ρ€Ρƒ минимально Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌΠΈ ΠΎΠ±ΡŠΡ‘ΠΌΠ°ΠΌΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. ΠšΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ сСрвСру, Π½ΠΎ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ Π΅Π³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π² ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ доступа ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΊ ΡΠ΅Ρ€Π²Π΅Ρ€Ρƒ. Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрная Π‘Π£Π‘Π” Π³ΠΎΡ€Π°Π·Π΄ΠΎ ΠΌΠ΅Π½Π΅Π΅ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Π° ΠΊ ΠΏΡ€ΠΎΠΏΡƒΡΠΊΠ½ΠΎΠΉ способности ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ сСти, Ρ‡Π΅ΠΌ Ρ„Π°ΠΉΠ»-сСрвСрная Π‘Π£Π‘Π”. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π½Π° Π΄Π°Π½Π½ΠΎΠ΅ врСмя Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ· Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ доступа ΠΊ Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ Π‘Π” являСтся ΠΈΠΌΠ΅Π½Π½ΠΎ «ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрная» тСхнология.

1.2 Π‘Π£Π‘Π” FireBird, основанная Π½Π° Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ доступа ΠΊ Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ Π‘Π” InterBase.

Firebird являСтся сСрвСром Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…. ΠœΠΎΡ‰Π½Ρ‹ΠΉ с ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ трСбованиями ΠΊ Π½Π°ΡΡ‚Ρ€ΠΎΠΉΠΊΠ΅ ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ, ΠΎΠ½ Π»Π΅Π³ΠΊΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π΄ΠΎ ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… систСм. Один сСрвСр Firebird ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ нСсколько нСзависимых Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠ°ΠΆΠ΄ΡƒΡŽ с ΠΌΠ½ΠΎΠΆΠ΅ΡΡ‚Π²ΠΎΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… соСдинСний.

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

1.3 IBExpert.

IBExpert — инструмСнт для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Firebird Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ InterBase. IBExpert позволяСт ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ Π΄Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ с Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎΠΉ Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒΡŽ, быстротой, Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΈ ΡƒΠ΄ΠΎΠ±ΡΡ‚Π²ΠΎΠΌ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°. IBExpert Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ инструмСнтов ΠΈ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚Π΅ΠΉ кодирования: Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Ρ‹ для всСх Ρ‚ΠΈΠΏΠΎΠ² Π‘Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, SQL-Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Ρ‹ ΠΈ ΡΡ†Π΅Π½Π°Ρ€ΠΈΠΈ, ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ для Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Ρ… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€, Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΈ Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€ΠΎΠ², ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, Ρ€ΠΎΠ»ΠΈ, Π΄ΠΎΠΌΠ΅Π½Ρ‹ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅.

Π’ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ особСнности рСдактирования IBExpert ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π΄Π°ΠΆΠ΅ ΠΏΠΎΠ»Π½ΠΎΠΌΡƒ Π½ΠΎΠ²ΠΈΡ‡ΠΊΡƒ Π² Π΄Π°Π½Π½ΠΎΠΉ области быстро ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π² Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π±Π΅Π· особых Ρ‚Ρ€ΡƒΠ΄ΠΎΠ² ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π·Π°Ρ‚Ρ€Π°Ρ‚.

1.4 C++ Builder — срСдство Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ клиСнтской части ΠΈ ΡΠ΅Ρ€Π²Π΅Ρ€Π½Ρ‹Ρ… Web-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π‘Π£Π‘Π” Ρ€Π°Π½ΡŒΡˆΠ΅ всСгда Π±Ρ‹Π»Π° ΠΎΡ‡Π΅Π½ΡŒ Ρ‚Ρ€ΡƒΠ΄ΠΎΠ΅ΠΌΠΊΠΈΠΌ ΠΈ ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΌ процСссом, отягощСнным Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ массу спСцифичСских Π΄Π΅Ρ‚Π°Π»Π΅ΠΉ подсистСм обслуТивания Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° Π½ΠΈΠ·ΠΊΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅. C++ Builder ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π½Π° ΡΠ΅Π±Ρ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ этих Ρ€ΡƒΡ‚ΠΈΠ½Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ позволяя ΡΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ основной Π·Π°Π΄Π°Ρ‡ΠΈ.

ВсС прилоТСния Π‘Π£Π‘Π”, создаваСмыС Π² ΡΡ€Π΅Π΄Π΅ C++ Builder, ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ Π² Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ взаимодСйствия ΠΊΠ»ΠΈΠ΅Π½Ρ‚/сСрвСр. ΠšΠ»ΠΈΠ΅Π½Ρ‚ Π²Ρ‹Π΄Π°Π΅Ρ‚ запросы ΠΊ ΡΠ΅Ρ€Π²Π΅Ρ€Ρƒ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π‘Π΅Ρ€Π²Π΅Ρ€ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ запросы ΠΎΡ‚ ΠΌΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ, координируя доступ ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΈ ΠΈΡ… ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅. ВсС прилоТСния Π‘Π£Π‘Π”, создаваСмыС Π² ΡΡ€Π΅Π΄Π΅ C++Builder, основаны Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса с Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π»Π΅Π³ΠΊΠΈΠ΅ Π² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠΈ срСдства Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π£Π΄Π°Ρ‡Π½ΠΎ спроСктированноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ всСгда обСспСчиваСт простоту просмотра ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ирования Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ, нСзависимо ΠΎΡ‚ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ структуры ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π΄Π°Π½Π½Ρ‹Ρ….

2. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π‘Π” «Π“Π°Π·Π΅Ρ‚Π° объявлСний».

2.1 БистСмный Π°Π½Π°Π»ΠΈΠ·.

ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ этапом проСктирования Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… являСтся Π΅Π΅ ΡΠΈΡΡ‚Π΅ΠΌΠ½Ρ‹ΠΉ Π°Π½Π°Π»ΠΈΠ·, ΠΈΠ»ΠΈ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ описаниС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области.

Π’ Π΄Π°Π½Π½ΠΎΠΉ курсовой Ρ€Π°Π±ΠΎΡ‚Π΅ осущСствляСтся Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π‘Π”, которая называСтся «Π“Π°Π·Π΅Ρ‚Π° объявлСний». ΠŸΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области осущСствлялся сбор ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ для ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΈ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ³ΠΎ описания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π»ΠΎΡΡŒ построСниС ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…. Данная Π‘Π” состоит ΠΈΠ· 7-Ρ‚ΠΈ взаимосвязанных Ρ‚Π°Π±Π»ΠΈΡ† «ΠΠ΄Ρ€Π΅ΡΠ°», «Π‘Π»Π°Π½ΠΊ», «ΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€», «ΠŸΠΎΠΊΡƒΠΏΠ°Ρ‚Π΅Π»ΡŒ», «ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ», «Π’ΠΎΠ²Π°Ρ€» ΠΈ «Π—Π°ΠΊΠ°Π·».

2.2 Π˜Π½Ρ„ΠΎΠ»ΠΎΠ³ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅.

1. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ инфологичСской ΠΌΠΎΠ΄Π΅Π»ΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΌ описании ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ сСмантичСской ΠΌΠΎΠ΄Π΅Π»ΠΈ Entity-Relationship (Π‘ΡƒΡ‰Π½ΠΎΡΡ‚ΡŒ-Бвязь).

Рис. 1. ЛогичСская модСль.

Π‘ΡƒΡ‰Π½ΠΎΡΡ‚ΡŒ — это Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ»ΠΈ прСдставляСмый ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, информация ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒΡΡ ΠΈ Π±Ρ‹Ρ‚ΡŒ доступна. Бвязь — это графичСски изобраТаСмая ассоциация, устанавливаСмая ΠΌΠ΅ΠΆΠ΄Ρƒ двумя сущностями..

2.3 ЀизичСскоС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π‘Π”.

ЀизичСскоС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ — ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ особСнностСй хранСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² доступа. Π­Ρ‚Π°ΠΏ физичСского проСктирования Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΡƒΠ²ΡΠ·ΠΊΠ΅ логичСской структуры Π‘Π” ΠΈ Ρ„изичСской срСды хранСния с Ρ†Π΅Π»ΡŒΡŽ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ эффСктивного размСщСния Π΄Π°Π½Π½Ρ‹Ρ…. Π Π΅ΡˆΠ°Π΅Ρ‚ΡΡ вопрос размСщСния Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΏΡ€ΠΎΡΡ‚ранствС памяти, Π²Ρ‹Π±ΠΎΡ€Π° эффСктивных ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² доступа ΠΊ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌ Π‘Π”. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ этого этапа Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² Ρ„ΠΎΡ€ΠΌΠ΅ схСмы хранСния Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ опрСдСлСния Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΡ€ΠΈΠ½ΡΡ‚Ρ‹Π΅ Π½Π° ΡΡ‚ΠΎΠΌ этапС Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰Π΅Π΅ влияниС Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ систСмы.

Рис. 2. ЀизичСская модСль.

2.4 ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° ΡΡ‚ΠΎΡ€ΠΎΠ½Π΅ SQL-сСрвСра.

Π‘ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрных Π‘Π£Π‘Π”, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… SQL-сСрвСрами. Π’Π°ΠΊΠΈΠ΅ Π‘Π£Π‘Π” ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ ΠΈ Π±Π΅Ρ€ΡƒΡ‚ Π½Π° ΡΠ΅Π±Ρ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎ ΠΎΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Π½ΠΈΡŽ запросов ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, поиску, ΠΎΡ‚Π±ΠΎΡ€Ρƒ, сортировкС записСй Π² Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ.

Π‘Π΅Ρ€Π²Π΅Ρ€ Π‘Π” прСдставляСт собой достаточно слоТный ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ комплСкс. Π’ Π΄Π°Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ сСрвСр Π‘Π£Π‘Π” Firebird 2.1, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… Open Source-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Для создания Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ бизнСс-ΠΏΡ€Π°Π²ΠΈΠ» Π½Π° ΡΡ‚ΠΎΡ€ΠΎΠ½Π΅ сСрвСра SQL Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° IBExpert.

ВсС 7 Ρ‚Π°Π±Π»ΠΈΡ† Π‘Π” Π±Ρ‹Π»ΠΈ созданы с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… дСйствий:

1. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π΄ΠΎΠΌΠ΅Π½ΠΎΠ²;

2. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ‚Π°Π±Π»ΠΈΡ† ΠΈ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² ΠΏΠΎΠ»Π΅ΠΉ (Ρ‚ΠΈΠΏ ΠΈ Π΄Π»ΠΈΠ½Π°);

3. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ (PK ΠΈ FK) для связи Ρ‚Π°Π±Π»ΠΈΡ†;

4. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΈ Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€ΠΎΠ² для Π°Π²Ρ‚ΠΎΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π½Ρ‹Ρ… ΠΏΠΎΠ»Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ PK ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹;

5. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… индСксов для упрощСния поиска ΠΈ ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, Π° Ρ‚Π°ΠΊΠΆΠ΅ для ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΡ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ этих ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ;

6. ЗанСсСниС Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ;

7. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° бизнСс-Π»ΠΎΠ³ΠΈΠΊΠΈ:

8. созданиС просмотров (прСдставлСний) для Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ‚Π°Π±Π»ΠΈΡ†;

9. созданиС Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Ρ… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ (с ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ) для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ Π½Π° ΡΠ΅Ρ€Π²Π΅Ρ€Π΅ ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ поставлСнной Π·Π°Π΄Π°Ρ‡ΠΈ Π² ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Рис. 3. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π‘Π” Π² IBExpert.

Для логичСски ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π‘Π” ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ прСобразования Ρ‚ΠΈΠΏΠΎΠ² свойств Π·Π°Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π±Ρ‹Π»ΠΈ созданы Π΄ΠΎΠΌΠ΅Π½Ρ‹:

Рис. 4. Бписок Π΄ΠΎΠΌΠ΅Π½ΠΎΠ² Π’Π°Π±Π»ΠΈΡ†Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ IBExpert, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΡ‹ Π·Π°Π΄Π°Π΅ΠΌ поля, ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹Π΅, Π²Ρ‚ΠΎΡ€ΠΈΡ‡Π½Ρ‹Π΅ ΠΊΠ»ΡŽΡ‡ΠΈ, Π°Π²Ρ‚ΠΎΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π½Ρ‹Π΅ поля.

Рис. 5. Π’Π°Π±Π»ΠΈΡ†Π° «ΠšΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ».

Π”Π°Π»Π΅Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ SQL ΠΊΠΎΠ΄ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΡ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ внСшниС ΠΊΠ»ΡŽΡ‡ΠΈ Π²ΠΎ Π²ΡΠ΅Ρ… Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… (SQL ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ):

Рис. 6. ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π²Π½Π΅ΡˆΠ½ΠΈΡ… ΠΊΠ»ΡŽΡ‡Π΅ΠΉ ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ созданы Π΄ΠΎΠΌΠ΅Π½Ρ‹ ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Ρ‚ΠΎΠΆΠ΅, ΠΌΠΎΠΆΠ½ΠΎ Π² Π‘Π” ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ индСксы, систСма автоматичСски создаСт индСксы ΠΏΠΎ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΌ ΠΈ Π²Π½Π΅ΡˆΠ½ΠΈΠΌ ΠΊΠ»ΡŽΡ‡Π°ΠΌ, Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΈ ΡΠ²ΠΎΠΈ ΠΏΠΎ Π½Π°Π΄ΠΎΠ±Π½ΠΎΡΡ‚ΠΈ ΠΊΠ°ΠΊ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ IBExpert.

Рис. 7. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ индСксов ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ созданы, Π΄ΠΎΠΌΠ΅Π½Ρ‹, Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, индСксы, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΊ ΡΠΎΠ·Π΄Π°Π½ΠΈΡŽ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ².

Рис. 8. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π΅ IBExpert созданиС Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€ΠΎΠ² выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Рис. 9. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€Π° для Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠšΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ ЗаполнСнная Ρ‚Π°Π±Π»ΠΈΡ†Π° выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Рис. 10. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ заполнСния Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ прСдставлСниС Π² ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π΅ IBExpert Π² SQL Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ Π²Π²Π΅Π΄Ρƒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ sql-ΠΊΠΎΠ΄.

Рис. 11. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ прСдставлСний ВсСго Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… 19 Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Ρ… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€. ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠ· Π½ΠΈΡ….

Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ Π½Π° ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅, Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ удалСния записи Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ «ΠšΠ°Ρ‚Сгория». ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ DELETE_KAT. БоздаСтся Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ IBExpert.

Рис. 12. ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° удалСния Рис. 13. Π£Π΄Π°Π»ΠΈΠΌ запись ΠΏΠΎΠ΄ Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ 8.

Рис. 14. Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Π”Π°Π»Π΅Π΅ создадим ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ Π½Π° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, рассмотрим это Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ создания Ρ‚Π°ΠΊΠΎΠΉ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ для Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ «ΠšΠ°Ρ‚Сгория», эта ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ UPDATE_KAT.

Рис. 15. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° обновлСния Рис. 16. Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Рис. 17. Π—Π°ΠΏΠΈΡΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π° Π’ ΡΠ²ΠΎΠ΅ΠΉ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Ρƒ ΠΌΠ΅Π½Ρ Π±ΡƒΠ΄Π΅Ρ‚ 2 ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ситуации. ΠšΠΎΠ΄Ρ‹ для ΠΈΡ… ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅:

1. CREATE EXCEPTION IMPOSSIBLE_TASK' Π²Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΎΡ‚ 1 Π΄ΠΎ 8';

2. CREATE EXCEPTION NO_SOST_ZAKAZA'доступно Ρ‚ΠΎΠ»ΡŒΠΊΠΎ 1,2,3 ΠΈΠ»ΠΈ 4';

Рис. 18. Π’Π²ΠΎΠΆΡƒ Π±Π΅Π· Ρ„Π°ΠΌΠΈΠ»ΠΈΠΈ Рис. 19. Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ΅.

2.5 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° клиСнтской части Π² Borland C++ Builder 6.0.

ΠΊΠ»ΠΈΠ΅Π½Ρ‚ сСрвСр Π³Π°Π·Π΅Ρ‚Π° объявлСниС.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ клиСнтского прилоТСния осущСствляСтся Π² ΡΡ€Π΅Π΄Π΅ программирования C++ Builder. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΎΠ³ΠΎ прилоТСния Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π² ΠΎΠΊΠ½ΠΎ Ρ„ΠΎΡ€ΠΌΡ‹ элСмСнтов ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² C++ Builder, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ. ВсС эти ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΈΠΌΠ΅Π»ΠΈ своС ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅:

Β· IBDatabase — для осущСствлСния соСдинСния с Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ…;

Β· IBTransaction — для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚ранзакциями;

Β· IBQuery — для связи Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚, Π° Ρ‚Π°ΠΊΠΆΠ΅ поиска, Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… Π‘Π”;

Β· IBTable — для сортировки ΠΏΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ полям Ρ‚Π°Π±Π»ΠΈΡ† Π‘Π”;

Β· IBStoredProc — для выполнСния Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Ρ… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€;

Β· QuickRep, QRSubDetail, QRLabel, QRDBText, QRBand, QRSysData — для ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ создания, ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ просмотра ΠΈ ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ ΠΎΡ‚Ρ‡Π΅Ρ‚Π° ΠΏΠΎ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ† Π‘Π”;

Β· Button — для Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΈ Π΄Π»Ρ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄Ρ€ΡƒΠ³ΠΈΡ… дСйствий;

Β· Label — для надписСй;

Β· LabeledEdit — для Π²Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, добавлСния, удалСния, измСнСния;

Β· PageControl — для структурирования ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ;

Β· DataSource — для управлСния взаимодСйствиСм ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ управлСния Π΄Π°Π½Π½Ρ‹ΠΌΠΈ;

Β· DBGrid — для Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Ρ‚Π°Π±Π»ΠΈΡ† ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… запросов;

Β· И Π΄Ρ€ΡƒΠ³ΠΈΠ΅.

Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, Π·Π°Ρ‚Π΅ΠΌ создадим DataModule, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ всС Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ для доступа ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π‘Π”.

Рис. 20. ΠšΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ DataModule.

Рис. 21. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ Π‘Π”, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° DataBase.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ с Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠΉ Π‘Π” ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ дСйствия Π½Π°Π΄ Π½Π΅ΠΉ, Π½ΡƒΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ свойства Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠ· Π²Ρ‹ΡˆΠ΅ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ².

Главная Π²ΠΈΠ΄ Ρ„ΠΎΡ€ΠΌΡ‹ Windows-прилоТСния.

Рис. 22. Главная Ρ„ΠΎΡ€ΠΌΠ° Windows-прилоТСния.

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

DataModule2->IBTable2->Active=false;

DataModule2->IBStoredProc4->ParamByName («FAMILIA»)->AsString=Edit7->Text;

DataModule2->IBStoredProc4->ParamByName («NAME»)->AsString=Edit8->Text;

DataModule2->IBStoredProc4->ParamByName («OTCHESTVO»)->AsString=Edit9->Text;

DataModule2->IBStoredProc4->Prepare ();

DataModule2->IBStoredProc4->ExecProc ();

DataModule2->IBTable2->Active=true;

Рис. 23. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ записи.

ПослС наТатия Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ ADD ΠΌΡ‹ ΡƒΠ±Π΅Π΄ΠΈΠ»ΠΈΡΡŒ, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ внСсСны.

Π”Π°Π»Π΅Π΅ ΠΎΠ±Π½ΠΎΠ²ΠΈΠΌ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡƒΡŽ запись. Код, ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‰ΠΈΠΉ Π·Π° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ записи ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ :

DataModule2->IBTable2->Active=false;

DataModule2->IBStoredProc5->ParamByName («ID_KLIENTA»)->Value=Edit10->Text;

DataModule2->IBStoredProc5->ParamByName («FAMILIA»)->AsString=Edit11->Text;

DataModule2->IBStoredProc5->ParamByName («NAME»)->AsString=Edit12->Text;

DataModule2->IBStoredProc5->ParamByName («OTCHESTVO»)->AsString=Edit13->Text;

DataModule2->IBStoredProc5->Prepare ();

DataModule2->IBStoredProc5->ExecProc ();

DataModule2->IBTable2->Active=true;

Рис. 24. ОбновлСниС записи.

ПослСдним этапом Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚Π°Π±Π»ΠΈΡ†Π΅ΠΉ ΡƒΠ΄Π°Π»ΠΈΠΌ запись с ID=33. Код, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ записи :

DataModule2->IBTable2->Active=false;

DataModule2->IBStoredProc6->ParamByName («ID_KLIENTA»)->Value=Edit14->Text;

DataModule2->IBStoredProc6->Prepare ();

DataModule2->IBStoredProc6->ExecProc ();

DataModule2->IBTable2->Active=true;

Рис. 25. Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ записи.

Π”Π°Π»Π΅Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌ поиск ΠΏΠΎ Ρ‚Π°Π±Π»ΠΈΡ†Π΅. Π’Π²Π΅Π΄Π΅ΠΌ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π³ΠΎΡ€ΠΎΠ΄Π° ΠΈ Π½Π°ΠΆΠΌΠ΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΡƒ «ΠŸΠΎΠΈΡΠΊ». Π’ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΊΠ½ΠΎΠΏΠΊΠΈ напишСм ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄ :

TLocateOptions LO;

DataModule2->IBTable2->Locate («FAMILIA», Edit44->Text, LO<< loPartialKey<

Рис. 26. Поиск.

Π€ΠΈΠ»ΡŒΡ‚Ρ€ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌ ΠΊ ΠΏΠΎΠ»ΡŽ β„–ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Код для Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ:

DataModule2->IBTable2->Active=false;

DataModule2->IBTable2->Filtered=false;

DataModule2->IBTable2->Filter="ID_KLIENTA="+Edit45->Text;

DataModule2->IBTable2->Filtered=true;

DataModule2->IBTable2->Active=true;

Рис. 27. Π€ΠΈΠ»ΡŒΡ‚Ρ€

Π”Π°Π»Π΅Π΅ ΠΈΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π° с ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ QReport, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ΅Π½ для ΠΎΡ‚Ρ‡Π΅Ρ‚Π° ΠΏΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅. Как выглядит ΠΎΡ‚Ρ‡Π΅Ρ‚ Π½Π° ΡΡ‚Π°ΠΏΠ΅ построСния ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ рисункС:

Рис. 28. ΠœΠ°ΠΊΠ΅Ρ‚ ΠΎΡ‚Ρ‡Π΅Ρ‚Π°.

Π Π°Π±ΠΎΡ‚Π° ΠΎΡ‚Ρ‡Π΅Ρ‚Π° прСдставлСна Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 29.

Рис. 29. Π Π°Π±ΠΎΡ‚Π° ΠΎΡ‚Ρ‡Π΅Ρ‚Π°.

2.6 Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° клиСнтской части с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Web-Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ.

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ стандартного языка Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² Π² Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ — html, создаСм web-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ начинаСтся с Π³Π»Π°Π²Π½ΠΎΠΉ страницы (index.html).

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ php Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒΡΡ связь с Π‘Π”. На Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 30 ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Π° главная страница web-прилоТСния. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ php Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒΡΡ связь с Π‘Π”.

Для осущСствлСния доступа ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Firebird Π² ΡΠ·Ρ‹ΠΊΠ΅ PHP сущСствуСт ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ ΠΊ Π‘Π” Π² PHP Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄:

$dbhost="D:SVETOVOY.FDB «;

$dbusname="SYSDBA" ;

$dbpswrd="masterkey" ;

$db=ibase_pconnect ($dbhost,$dbusname,$dbpswrd);

if (!$db){echo 'Ошибка соСдинСния с Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ…!'; exit;}.

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π°Π±ΠΎΡ‚Ρ‹ web-прилоТСния Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠšΠ»ΠΈΠ΅Π½Ρ‚Ρ‹. Для отобраТСния всСх записСй Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ запрос:

$query = «select * from klient» ;

$result = ibase_query ($query);

Π”Π°Π»Π΅Π΅, послС добавлСния, выводится ΠΎΡ‚Ρ‡Π΅Ρ‚ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹. Код для добавлСния записи Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ:

$familia=$_POST['familia'];

$imya=$_POST['imya'];

$otchestvo=$_POST['otchestvo'];

$query = «EXECUTE PROCEDURE ADD_KLIENT ('» .$familia." ','" .$imya." ','" .$otchestvo." ')" ;

$it=ibase_trans ();

echo '.

';

$result=ibase_query ($query);

$ic=ibase_commit ();

Если ΠΆΠ΅ Π½Π΅Ρ‚, Ρ‚ΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ся запись ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎ ΠΊΠ°ΠΊΠΈΠΌ Π»ΠΈΠ±ΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ внСсСны.

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ этапом ΠΎΠ±Π½ΠΎΠ²ΠΈΠΌ запись с id=34.

Π—Π° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ записи ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄:

$id_klienta=$_POST['id_klienta'];

$familia=$_POST['familia'];

$imya=$_POST['imya'];

$otchestvo=$_POST['otchestvo'];

$query = «EXECUTE PROCEDURE UPDATE_KLIENT ('» .$id_klienta." ','" .$familia." ','" .$imya." ','" .$otchestvo." ')" ;

$it=ibase_trans ();

echo '.

';

$result=ibase_query ($query);

$ic=ibase_commit ();

ПослСдим этапом написания ΠΊΠΎΠ΄Π° для ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ являСтся ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ записСй. Код, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ:

$id_klienta=$_POST['id_klienta'];

$query = «EXECUTE PROCEDURE DELETE_KLIENT ('» .$id_klienta." ')" ;

$it=ibase_trans ();

echo '.

';

$result=ibase_query ($query);

$ic=ibase_commit ();

Π”Π°Π»Π΅Π΅ сдСлаСм Ρ„ΠΈΠ»ΡŒΡ‚Ρ€. SQL ΠΊΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚Π°ΠΊΠΎΠΉ:

$query = «select * from klient where id_klienta=».$id_klienta." «;$result = ibase_query ($query);

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅.

Π’ Π½Π°ΡΡ‚оящСС врСмя фактичСским стандартом для ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… Π‘Π£Π‘Π”, стала Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° «ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСр», ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ прСдполагаСтся, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π² Π΅Π΅ Ρ€Π°ΠΌΠΊΠ°Ρ…, Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ распрСдСлСнный Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€. Π˜Π½Ρ‹ΠΌΠΈ словами, Ρ‡Π°ΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅, другая — Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅-сСрвСрС, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ для ΠΈΡ… Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚вия Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ».

Π’ Π΄Π°Π½Π½ΠΎΠΉ курсовой Ρ€Π°Π±ΠΎΡ‚Π΅ Π±Ρ‹Π»Π° спроСктирована ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° удалСнная Π‘Π” ΠΏΠΎ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ «ΠšΠ»ΠΈΠ΅Π½Ρ‚-сСрвСр». ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° ΡΡ‚ΠΎΡ€ΠΎΠ½Π΅ сСрвСра Π±Ρ‹Π»ΠΎ осущСствлСно Π² Π‘Π£Π‘Π” FireBird 2.0 с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ IBExpert, Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚скоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² C++Builder с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ доступа ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ InterBaseExpress (IBX) ΠΈ Ρ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Web-Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ.

Π’ ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ написания курсовой Ρ€Π°Π±ΠΎΡ‚Ρ‹, мною Π±Ρ‹Π»Π° осущСствлСна Π·Π°Π΄Π°Ρ‡Π° ΠΏΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΡŽ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π² Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΉ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области. Π‘Ρ‹Π»Π° ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ ΠΎΡΠ²ΠΎΠ΅Π½ΠΈΡŽ ΠΈ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΡŽ свСдСний ΠΎ Π‘Π£Π‘Π” FireBird 2.0, ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ IBExpert, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°Ρ… IBX, C++Builder ΠΈ Web-Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ.

Бписок ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… источников.

1. А. Π₯ΠΎΠΌΠΎΠ½Π΅Π½ΠΊΠΎ, Π‘. Ададуров «Π Π°Π±ΠΎΡ‚Π° с Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π² C++Builder».

2. ΠŸΠ΅Ρ‚Ρ€ΠΎΠ² Π’. Н. Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы. — Π‘Пб.: ΠŸΠΈΡ‚Π΅Ρ€, 2002.

3. Шамис Π’., «Borland C++ Builder 6.0». — Π‘ — Пб.: «ΠŸΠΈΡ‚Π΅Ρ€», 2005 Π³.

4. Π’. М. ΠœΠΈΡ…Π΅Π»Π΅Π² «Π‘Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π‘Π£Π‘Π”». — Π‘Π΅Π»Π³ΠΎΡ€ΠΎΠ΄, 2007 Π³.

5. АтрС Π¨. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…. — Πœ.: Ѐинансы ΠΈ ΡΡ‚атистика, 1983. — 320 с.

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.

Код создания Windows-прилоТСния.

//—————————————————————————————————————;

#include.

#pragma hdrstop.

#include «Unit1.h» .

#include «Unit2.h» .

//—————————————————————————————————————;

#pragma package (smart_init).

#pragma resource «*.dfm» .

TForm1 *Form1;

//—————————————————————————————————————;

__fastcall TForm1: TForm1(TComponent* Owner).

: TForm (Owner).

{.

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn1Click (TObject *Sender).

{.

QuickRep1->Preview ();

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn2Click (TObject *Sender).

{.

DataModule2->IBTable1->Active=false;

DataModule2->IBStoredProc1->ParamByName («ID_TIPA»)->Value=Edit1->Text;

DataModule2->IBStoredProc1->ParamByName («NAZVANIE»)->AsString=Edit2->Text;

DataModule2->IBStoredProc1->Prepare ();

DataModule2->IBStoredProc1->ExecProc ();

DataModule2->IBTable1->Active=true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn3Click (TObject *Sender).

{.

DataModule2->IBTable1->Active=false;

DataModule2->IBStoredProc2->ParamByName («ID_KATEGORII»)->Value=Edit3->Text;

DataModule2->IBStoredProc2->ParamByName («NAZVANIE»)->AsString=Edit5->Text;

DataModule2->IBStoredProc2->Prepare ();

DataModule2->IBStoredProc2->ExecProc ();

DataModule2->IBTable1->Active=true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn4Click (TObject *Sender).

{.

DataModule2->IBTable1->Active=false;

DataModule2->IBStoredProc3->ParamByName («ID_KATEGORII»)->Value=Edit6->Text;

DataModule2->IBStoredProc3->Prepare ();

DataModule2->IBStoredProc3->ExecProc ();

DataModule2->IBTable1->Active=true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn5Click (TObject *Sender).

{.

DataModule2->IBTable2->Active=false;

DataModule2->IBStoredProc4->ParamByName («FAMILIA»)->AsString=Edit7->Text;

DataModule2->IBStoredProc4->ParamByName («NAME»)->AsString=Edit8->Text;

DataModule2->IBStoredProc4->ParamByName («OTCHESTVO»)->AsString=Edit9->Text;

DataModule2->IBStoredProc4->Prepare ();

DataModule2->IBStoredProc4->ExecProc ();

DataModule2->IBTable2->Active=true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn6Click (TObject *Sender).

{.

DataModule2->IBTable2->Active=false;

DataModule2->IBStoredProc5->ParamByName («ID_KLIENTA»)->Value=Edit10->Text;

DataModule2->IBStoredProc5->ParamByName («FAMILIA»)->AsString=Edit11->Text;

DataModule2->IBStoredProc5->ParamByName («NAME»)->AsString=Edit12->Text;

DataModule2->IBStoredProc5->ParamByName («OTCHESTVO»)->AsString=Edit13->Text;

DataModule2->IBStoredProc5->Prepare ();

DataModule2->IBStoredProc5->ExecProc ();

DataModule2->IBTable2->Active=true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn7Click (TObject *Sender).

{.

DataModule2->IBTable2->Active=false;

DataModule2->IBStoredProc6->ParamByName («ID_KLIENTA»)->Value=Edit14->Text;

DataModule2->IBStoredProc6->Prepare ();

DataModule2->IBStoredProc6->ExecProc ();

DataModule2->IBTable2->Active=true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn8Click (TObject *Sender).

{.

DataModule2->IBTable3->Active=false;

DataModule2->IBStoredProc7->ParamByName («ID_ZAKAZA»)->Value=Edit15->Text;

DataModule2->IBStoredProc7->ParamByName («ID_KATEGORII»)->Value=Edit16->Text;

DataModule2->IBStoredProc7->ParamByName («TEXT_OBIAVLENIA»)->AsString=Edit17->Text;

DataModule2->IBStoredProc7->ParamByName («TELEFON»)->AsString=Edit18->Text;

DataModule2->IBStoredProc7->Prepare ();

DataModule2->IBStoredProc7->ExecProc ();

DataModule2->IBTable3->Active=true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn9Click (TObject *Sender).

{.

DataModule2->IBTable3->Active=false;

DataModule2->IBStoredProc8->ParamByName («ID_OBIAVLENIA»)->Value=Edit19->Text;

DataModule2->IBStoredProc8->ParamByName («ID_ZAKAZA»)->Value=Edit20->Text;

DataModule2->IBStoredProc8->ParamByName («ID_KATEGORII»)->Value=Edit21->Text;

DataModule2->IBStoredProc8->ParamByName («TEXT_OBIAVLENIA»)->AsString=Edit22->Text;

DataModule2->IBStoredProc8->ParamByName («TELEFON»)->AsString=Edit23->Text;

DataModule2->IBStoredProc8->Prepare ();

DataModule2->IBStoredProc8->ExecProc ();

DataModule2->IBTable3->Active=true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn10Click (TObject *Sender).

{.

DataModule2->IBTable3->Active=false;

DataModule2->IBStoredProc9->ParamByName («ID_OBIAVLENIA»)->Value=Edit24->Text;

DataModule2->IBStoredProc9->Prepare ();

DataModule2->IBStoredProc9->ExecProc ();

DataModule2->IBTable3->Active=true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn11Click (TObject *Sender).

{.

DataModule2->IBTable4->Active=false;

DataModule2->IBStoredProc10->ParamByName («FAMILIA»)->AsString=Edit25->Text;

DataModule2->IBStoredProc10->ParamByName («NAME»)->AsString=Edit26->Text;

DataModule2->IBStoredProc10->ParamByName («OTCHESTVO»)->AsString=Edit27->Text;

DataModule2->IBStoredProc10->Prepare ();

DataModule2->IBStoredProc10->ExecProc ();

DataModule2->IBTable4->Active=true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn12Click (TObject *Sender).

{.

DataModule2->IBTable2->Active=false;

DataModule2->IBStoredProc11->ParamByName («ID_REDAKTORA»)->Value=Edit28->Text;

DataModule2->IBStoredProc11->ParamByName («FAMILIA»)->AsString=Edit29->Text;

DataModule2->IBStoredProc11->ParamByName («NAME»)->AsString=Edit30->Text;

DataModule2->IBStoredProc11->ParamByName («OTCHESTVO»)->AsString=Edit31->Text;

DataModule2->IBStoredProc11->Prepare ();

DataModule2->IBStoredProc11->ExecProc ();

DataModule2->IBTable2->Active=true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn13Click (TObject *Sender).

{.

DataModule2->IBTable4->Active=false;

DataModule2->IBStoredProc12->ParamByName («ID_OBIAVLENIA»)->Value=Edit32->Text;

DataModule2->IBStoredProc12->Prepare ();

DataModule2->IBStoredProc12->ExecProc ();

DataModule2->IBTable4->Active=true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn14Click (TObject *Sender).

{.

DataModule2->IBTable5->Active=false;

DataModule2->IBStoredProc13->ParamByName («ID_KLIENTA»)->Value=Edit33->Text;

DataModule2->IBStoredProc13->ParamByName («ID_REDAKTORA»)->Value=Edit34->Text;

DataModule2->IBStoredProc13->ParamByName («ID_SOST_ZAKAZA»)->Value=Edit35->Text;

DataModule2->IBStoredProc13->ParamByName («DATA_ZAKAZA»)->AsString=Edit36->Text;

DataModule2->IBStoredProc13->Prepare ();

DataModule2->IBStoredProc13->ExecProc ();

DataModule2->IBTable5->Active=true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn15Click (TObject *Sender).

{.

DataModule2->IBTable5->Active=false;

DataModule2->IBStoredProc14->ParamByName («ID_ZAKAZA»)->Value=Edit37->Text;

DataModule2->IBStoredProc14->ParamByName («ID_KLIENTA»)->Value=Edit38->Text;

DataModule2->IBStoredProc14->ParamByName («ID_REDAKTORA»)->Value=Edit39->Text;

DataModule2->IBStoredProc14->ParamByName («ID_SOST_ZAKAZA»)->Value=Edit40->Text;

DataModule2->IBStoredProc14->ParamByName («DATA_ZAKAZA»)->AsString=Edit41->Text;

DataModule2->IBStoredProc14->Prepare ();

DataModule2->IBStoredProc14->ExecProc ();

DataModule2->IBTable5->Active=true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn16Click (TObject *Sender).

{.

DataModule2->IBTable5->Active=false;

DataModule2->IBStoredProc15->ParamByName («ID_ZAKAZA»)->Value=Edit42->Text;

DataModule2->IBStoredProc15->Prepare ();

DataModule2->IBStoredProc15->ExecProc ();

DataModule2->IBTable5->Active=true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: DBGrid1TitleClick (TColumn *Column).

{.

DataModule2->IBTable1->Active = false;

DataModule2->IBTable1->IndexFieldNames = Column->FieldName;

DataModule2->IBTable1->Active = true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: DBGrid2TitleClick (TColumn *Column).

{.

DataModule2->IBTable2->Active = false;

DataModule2->IBTable2->IndexFieldNames = Column->FieldName;

DataModule2->IBTable2->Active = true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: DBGrid3TitleClick (TColumn *Column).

{.

DataModule2->IBTable3->Active = false;

DataModule2->IBTable3->IndexFieldNames = Column->FieldName;

DataModule2->IBTable3->Active = true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: DBGrid4TitleClick (TColumn *Column).

{.

DataModule2->IBTable4->Active = false;

DataModule2->IBTable4->IndexFieldNames = Column->FieldName;

DataModule2->IBTable4->Active = true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: DBGrid5TitleClick (TColumn *Column).

{.

DataModule2->IBTable5->Active = false;

DataModule2->IBTable5->IndexFieldNames = Column->FieldName;

DataModule2->IBTable5->Active = true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn17Click (TObject *Sender).

{.

TLocateOptions LO;

DataModule2->IBTable1->Locate («NAZVANIE», Edit4->Text, LO<

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn19Click (TObject *Sender).

{.

TLocateOptions LO;

DataModule2->IBTable2->Locate («FAMILIA», Edit44->Text, LO<

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn21Click (TObject *Sender).

{.

TLocateOptions LO;

DataModule2->IBTable3->Locate («TEXT_OBIAVLENIA», Edit46->Text, LO<

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn23Click (TObject *Sender).

{.

TLocateOptions LO;

DataModule2->IBTable4->Locate («FAMILIA», Edit48->Text, LO<

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn18Click (TObject *Sender).

{.

DataModule2->IBTable1->Active=false;

DataModule2->IBTable1->Filtered=false;

DataModule2->IBTable1->Filter="ID_TIPA="+Edit43->Text;

DataModule2->IBTable1->Filtered=true;

DataModule2->IBTable1->Active=true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn20Click (TObject *Sender).

{.

DataModule2->IBTable2->Active=false;

DataModule2->IBTable2->Filtered=false;

DataModule2->IBTable2->Filter="ID_KLIENTA="+Edit45->Text;

DataModule2->IBTable2->Filtered=true;

DataModule2->IBTable2->Active=true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn22Click (TObject *Sender).

{.

DataModule2->IBTable3->Active=false;

DataModule2->IBTable3->Filtered=false;

DataModule2->IBTable3->Filter="ID_ZAKAZA="+Edit47->Text;

DataModule2->IBTable3->Filtered=true;

DataModule2->IBTable3->Active=true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn24Click (TObject *Sender).

{.

DataModule2->IBTable4->Active=false;

DataModule2->IBTable4->Filtered=false;

DataModule2->IBTable4->Filter="ID_REDAKTORA="+Edit49->Text;

DataModule2->IBTable4->Filtered=true;

DataModule2->IBTable4->Active=true;

}.

//—————————————————————————————————————;

void __fastcall TForm1: BitBtn26Click (TObject *Sender).

{.

DataModule2->IBTable5->Active=false;

DataModule2->IBTable5->Filtered=false;

DataModule2->IBTable5->Filter="ID_ZAKAZA="+Edit51->Text;

DataModule2->IBTable5->Filtered=true;

DataModule2->IBTable5->Active=true;

}.

//—————————————————————————————————————;

Код создания Π²Π΅Π±-прилоТСния.

//Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅.

$host='D:SVETOVOY.FDB';

$usname = 'SYSDBA';

$pswrd = 'masterkey';

$db = ibase_pconnect ($host, $usname, $pswrd);

if (!$db).

{.

echo 'Ошибка соСдинСния с Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ…';

exit;

}.

?>.

$id_tipa=$_POST['id_tipa']; .

$nazvanie=$_POST['nazvanie'];

$query = «EXECUTE PROCEDURE ADD_KAT ('» .$id_tipa." ','" .$nazvanie." ')" ;

$it=ibase_trans ();

echo '.

';

$result=ibase_query ($query);

$ic=ibase_commit ();

if ($result) echo 'Π”Π°Π½Π½Ρ‹Π΅ внСсСны Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ.

';

echo '';

?>.

// ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅:.

$host='D:SVETOVOY.FDB';

$usname = 'SYSDBA';

$pswrd = 'masterkey';

$db = ibase_pconnect ($host, $usname, $pswrd);

if (!$db).

{.

echo 'Ошибка соСдинСния с Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ…';

exit;

}.

?>.

$id_kategorii=$_POST['id_kategorii']; .

$query = «EXECUTE PROCEDURE DELETE_KAT ('» .$id_kategorii." ')" ;

$it=ibase_trans ();

echo '.

';

$result=ibase_query ($query);

$ic=ibase_commit ();

if ($result) echo 'Π”Π°Π½Π½Ρ‹Π΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ‹.

';

echo '';

?>.

//Ρ„ΠΈΠ»ΡŒΡ‚Ρ€.

ΠšΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ.

$host='D:SVETOVOY.FDB';

$usname = 'SYSDBA';

$pswrd = 'masterkey';

$db = ibase_pconnect ($host, $usname, $pswrd);

if (!$db).

{.

echo 'Ошибка соСдинСния с Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ…';

exit;

}.

?>.

$id_kategorii=$_POST['id_kategorii']; .

$query = «select * from kategoria where id_kategorii=».$id_kategorii." «;

$result = ibase_query ($query);

echo '

';

echo '

'.

'

'.

'

'.

'

';

$i = 0;

while ($row = ibase_fetch_row ($result)).

{ $i++;

echo «

.

.

.

" ;

}.

echo «

№катСгории№типаНазваниС
$row[0]" .$row[1]. «" .$row[2]."
» ;

ibase_free_result ($result);

?>.

Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

.

.

.


.

.

.

.

.

.

.

.

// ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅.

$host='D:SVETOVOY.FDB';

$usname = 'SYSDBA';

$pswrd = 'masterkey';

$db = ibase_pconnect ($host, $usname, $pswrd);

if (!$db).

{.

echo 'Ошибка соСдинСния с Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ…';

exit;

}.

?>.

$id_kategorii=$_POST['id_kategorii']; .

$nazvanie=$_POST['nazvanie'];

$query = «EXECUTE PROCEDURE UPDATE_KAT ('» .$id_kategorii." ','". $nazvanie." ')" ;

$it=ibase_trans ();

echo '.

';

$result=ibase_query ($query);

$ic=ibase_commit ();

if ($result) echo 'Π”Π°Π½Π½Ρ‹Π΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ‹.

';

echo '';

?>.

// сортировка.

ΠšΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ: отсортировано ΠΏΠΎ Π½Π°Π·Π²Π°Π½ΠΈΡŽ.

.

$host='D:SVETOVOY.FDB';

$usname = 'SYSDBA';

$pswrd = 'masterkey';

$db = ibase_pconnect ($host, $usname, $pswrd);

if (!$db).

{.

echo 'Ошибка соСдинСния с Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ…';

exit;

}.

?>.

$query = «select * from kategoria order by nazvanie» ;

$result = ibase_query ($query);

echo '

';

echo '

'.

'

'.

'

'.

'

';

$i = 0;

while ($row = ibase_fetch_row ($result)).

{ $i++;

echo «

.

.

.

" ;

}.

echo «

№катСгории№типаНазваниС
$row[0]" .$row[1]. «" .$row[2]."
» ;

ibase_free_result ($result);

?>.

Π‘ΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

.

.

.


.

.

.

.

.

.

.

.

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ