GRANT (ΠΠΠ ΠΠΠΠ’Π¬ ΠΠ ΠΠΠ)
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ (ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ)
GRANT ALL [PRIVILEGES] | {SELECT | INSERT | DELETE | UPDATE [(<column llst>)]
| REFERENCES [(<column llst>)l } .,..
ON <table name> .,..
TO PUBLIC | <Authorization ID> .,..
[WITH GRANT OPTION];
ΠΡΠ³ΡΠΌΠ΅Π½Ρ ALL(ΠΠ‘Π), Ρ ΠΈΠ»ΠΈ Π±Π΅Π· PRIVILEGES(ΠΠ ΠΠΠΠΠΠΠΠ), Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΊΠ°ΠΆΠ΄ΡΡ ΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ Π² ΡΠΏΠΈΡΠΎΠΊ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ. PUBLIC(ΠΠΠ©ΠΠ) Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π²ΡΠ΅Ρ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΈ Π²ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π½ΡΡ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ. ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΄Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΠΏΡΠ°Π²Π° Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Ρ ΡΠΊΠ°Π·Π°Π½ΡΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ. REFERENCES ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΄Π°ΡΡ ΠΏΡΠ°Π²Π° ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΎΠ»Π±ΡΡ Π² ΡΠΏΠΈΡΠΊΠ΅ ΡΡΠΎΠ»Π±ΡΠΎΠ²<column list> ΠΊΠ°ΠΊ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΊΠ»ΡΡ Π΄Π»Ρ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΊΠ»ΡΡΠ°. ΠΡΡΠ³ΠΈΠ΅ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ ΡΠΎΡΡΠΎΡΡ ΠΈΠ· ΠΏΡΠ°Π²Π° Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ ΡΠΊΠ°Π·Π°Π½Ρ ΠΈΡ ΠΈΠΌΠ½Π°ΠΌΠΈ Π² ΡΠ°Π±Π»ΠΈΡΠ΅. UPDATE, ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ REFERENCES, ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π½Π°ΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ. GRANT OPTION Π΄Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ ΡΡΠΈ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ Π΄ΡΡΠ³ΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ (Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ )
GRANT DBA | RESOURCE | CONNECT ... .
TO <Authorization ID> .,..
[IDENTIFIED BY> password>
CONNECT Π΄Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ ΠΏΡΠ°Π²ΠΎ Π½Π° ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈ ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΠ΅ ΠΏΡΠ°Π²Π°. RESOURCE Π΄Π°Π΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΡΠ°Π²ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ°Π±Π»ΠΈΡΡ. DBA Π΄Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ ΠΏΠΎΡΡΠΈ Π²ΡΠ΅ ΠΏΡΠ°Π²Π°. IDENTIFIED BY ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ CONNECT, Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠ°ΡΠΎΠ»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
INSERT (ΠΠ‘Π’ΠΠΠΠ)
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ
INSERT INTO <table name> (<column llst>)
VALUES (<value llst>) I <query>;
INSERT ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΎΠ΄Π½Ρ ΠΈΠ»ΠΈ Π±ΠΎΠ»ΡΡΠ΅ Π½ΠΎΠ²ΡΡ ΡΡΡΠΎΠΊ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ <table name>. ΠΡΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ VALUES, ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π²ΡΡΠ°Π²Π»ΡΡΡΡΡ Π² ΡΠ°Π±Π»ΠΈΡΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ< table name>. ΠΡΠ»ΠΈ Π·Π°ΠΏΡΠΎΡ<query > ΡΠΊΠ°Π·Π°Π½, ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΡΡΠΎΠΊΠ° Π²ΡΠ²ΠΎΠ΄Π° Π±ΡΠ΄Π΅Ρ Π²ΡΡΠ°Π²Π»Π΅Π½Π° Π² ΡΠ°Π±Π»ΠΈΡΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ <table name>. ΠΡΠ»ΠΈ ΡΠΏΠΈΡΠΎΠΊ ΡΡΠΎΠ»Π±ΡΠΎΠ²<column list> ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ, Π²ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ ΡΠ°Π±Π»ΠΈΡΡ<table name>, ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΡΡ Π² ΡΠΏΠΎΡΡΠ΄ΠΎΡΠ΅Π½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅.
OPEN CURSOR (ΠΠ’ΠΠ Π«Π’Π¬ ΠΠ£Π Π‘ΠΠ )
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ
EXEC SQL OPEN CURSOR <cursorname><SQL term>
OPEN CURSOR Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π·Π°ΠΏΡΠΎΡ ΡΠ²ΡΠ·Π°Π½Π½ΡΠΉ Ρ ΠΊΡΡΡΠΎΡΠΎΠΌ<cursor name>. ΠΡΠ²ΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ ΡΠ΅ΠΏΠ΅ΡΡ ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡΡ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ FETCH.
REVOKE (*NONSTANDARD*) (ΠΠ’ΠΠΠΠΠ’Π¬ ΠΠΠΠΠΠΠΠ§ΠΠ―) (ΠΠΠ‘Π’ΠΠΠΠΠ Π’ΠΠ)
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ
REVOKE { ALL [PRIVILEGES]
| <privilege> .,.. } [ON <table name>]
FROM { PUBLIC
| <Authorization ID> .,.. };
ΠΡΠΈΠ²Π΅Π»Π΅Π³ΠΈΡ<privelege> ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π»ΡΠ±ΠΎΠΉ ΠΈΠ· ΡΠΊΠ°Π·Π°Π½ΡΡ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ GRANT. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄Π°ΡΡΠΈΠΉ REVOKE Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅ΡΡ ΡΠ΅ ΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π»Π΅Π³ΠΈΠΈ, ΡΡΠΎ ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΊΠΎΡΠΎΡΡΠΉ Π΄Π°Π²Π°Π» GRANT. ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ON ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΎ, Π΅ΡΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π΄Π»Ρ ΠΎΡΠΎΠ±ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°.
ROLLBACK (WORK) (ΠΠ’ΠΠΠ’) (Π’Π ΠΠΠΠΠΠ¦ΠΠ)
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ
ROLLBACK WORK;
ΠΠΎΠΌΠ°Π½Π΄Π° ΠΎΡΠΌΠ΅Π½ΡΠ΅Ρ Π²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ , ΡΠ΄Π΅Π»Π°Π½Π½ΡΠ΅ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ. ΠΠ½Π° ΠΊΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π΅ΡΡΡ ΡΠ΅ΠΊΡΡΡΡ, ΠΈ Π½Π°ΡΠΈΠ½Π°Π΅Ρ Π½ΠΎΠ²ΡΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ.
SELECT (ΠΠ«ΠΠΠ )
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ
SELECT { IDISTINCT | ALL] < value expression > .,.. } / *
[INTO <host variable list> (*embedded only*)]
FROM < table reference > .,..
[WHERE <predicate>]
[GROUP BY <grouping column> .,..]
[HAVING <predicate>]
[ORDER BY <ordering column> [ASC | DESC] .,.. ];
ΠΡΠΎ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΠ·ΡΠ΅Ρ Π·Π°ΠΏΡΠΎΡ ΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ( ΡΠΌ. ΠΠ»Π°Π²Π° 3 - ΠΠ»Π°Π²Π° 14). ΠΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π°:
* ΠΡΠ»ΠΈ Π½ΠΈ ALL, Π½ΠΈ DISTINCT - Π½Π΅ ΡΠΊΠ°Π·Π°Π½Ρ, ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅ΡΡΡ - ALL.
* ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅<value expression> ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· <column spec>, Π°Π³ΡΠ΅Π³Π°ΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ <aggregate funct>, Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ<nonstandard function>, ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠΉ<constant>, ΠΈΠ»ΠΈ Π»ΡΠ±ΠΎΠΉ ΠΈΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΈ Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ°ΠΌΠΈ Π² Π΄ΠΎΠΏΡΡΡΠΈΠΌΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡΡ .
* Π‘ΡΡΠ»Π°Π΅ΠΌΠ°Ρ ΡΠ°Π±Π»ΠΈΡΠ°<table reference>, ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΈΠΌΠ΅Π½ΠΈ ΡΠ°Π±Π»ΠΈΡΡ, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΏΡΠ΅ΡΠΈΠΊΡ Π²Π»Π°Π΄Π΅Π»ΡΡΠ° Π΅ΡΠ»ΠΈ ΡΠ΅ΠΊΡΡΠΈΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π΅ Π²Π»Π°Π΄Π΅Π»Π΅Ρ, ΠΈΠ»ΠΈ ΡΠΈΠ½ΠΎΠ½ΠΈΠΌ(Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎ) Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡΡ. Π’Π°Π±Π»ΠΈΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΠ»ΠΈ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅ΠΉ ΠΈΠ»ΠΈ ΠΏΡΠΎΡΠΌΠΎΡΡΠΎΠΌ. Π ΠΏΡΠΈΠ½ΡΠΈΠΏΠ΅, ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ ΠΌΠΎΠΆΠ΅Ρ ΡΠΊΠ°Π·Π°ΡΡ, ΠΊΠ°ΠΊΠΎΠΉ ΡΠΈΠ½ΠΎΠ½ΠΈΠΌΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠ°Π±Π»ΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° Π²ΡΠ΅ΠΌΡ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ. ΠΠΌΡ ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ»ΠΈ ΡΠΈΠ½ΠΎΠ½ΠΈΠΌ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΡΠ΄Π΅Π»ΡΡΡΡΡ ΠΎΡ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΠ° ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ Π·Π½Π°ΠΊΠ°ΠΌΠΈ<separator>.
* ΠΡΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ GROUP BY, Π²ΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ<column spec> ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π² ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ SELECT, Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΠ΄ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΊΠ°ΠΊ Π³ΡΡΠΏΠΏΠ° ΡΡΠΎΠ»Π±ΡΠΎΠ²<grouping column>, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ Π² Π°Π³ΡΠ΅Π³Π°ΡΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ<aggregate funct>. ΠΡΡ Π³ΡΡΠΏΠΏΠ° ΡΡΠΎΠ»Π±ΡΠΎΠ²<grouping column> Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π° ΡΡΠ΅Π΄ΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ< value expressions> ΡΠΊΠ°Π·Π°Π½Π½ΡΡ Π² ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ SELECT. ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π³ΡΡΠΏΠΏΡ ΡΡΠΎΠ»Π±ΡΠΎΠ²<grouping column>, Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠ΅ΡΡΡΡ ΠΎΠ΄Π½Π° ΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½Π° ΡΡΡΠΎΠΊΠ° Π²ΡΠ²ΠΎΠ΄Π°.
* ΠΡΠ»ΠΈ HAVING ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, ΠΏΡΠ΅Π΄ΠΈΠΊΠ°Ρ<predicate > ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½Π½ΠΎΠΉ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ GROUP BY, ΠΈ ΡΠ΅ ΡΡΡΠΎΠΊΠΈ ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎΡ ΠΏΡΠ΅Π΄ΠΈΠΊΠ°Ρ Π²Π΅ΡΠ½ΡΠΌ, Π±ΡΠ΄ΡΡ Π²ΡΠ²Π΅Π΄Π΅Π½Ρ.
* ΠΡΠ»ΠΈ ORDER BY ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, Π²ΡΠ²ΠΎΠ΄ ΠΈΠΌΠ΅Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ. ΠΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΡΠΎΠ»Π±ΡΠ°<column identifer> ΡΡΡΠ»Π°Π΅ΡΡΡ ΠΊ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡ <value expression> Π² ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ SELECT. ΠΡΠ»ΠΈ ΡΡΠΎ <value expression> ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΌ ΡΡΠΎΠ»Π±ΡΠΎΠΌ<column spec>, <column identifier> ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΊΠ°ΠΊ <column spec>. ΠΠ½Π°ΡΠ΅ <column identifier> ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΡΠ΅Π»ΡΠΌ ΡΠΈΡΠ»ΠΎΠΌ, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΠΌ ΠΌΠ΅ΡΡΠΎ Π³Π΄Π΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ <value expression> Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ SELECT. ΠΡΠ²ΠΎΠ΄ Π±ΡΠ΄Π΅Ρ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ ΡΠ°ΠΊ ΡΡΠΎΠ±Ρ ΠΏΠΎΠΌΠ΅ΡΠ°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ΡΡ Π² <column identifier > Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π½ΠΈΡ, Π΅ΡΠ»ΠΈ DESC Π½Π΅ ΡΠΊΠ°Π·Π°Π½. ΠΠΌΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ° ΡΡΠΎΠ»Π±ΡΠ°<column identifier> ΡΡΠΎΡΡΠ΅Π΅ ΠΏΠ΅ΡΠ²ΡΠΌ Π² ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ ORDER BY Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ·ΠΆΠ΅ ΡΡΠΎΡΡΠΈΠΌ ΠΈΠΌΠ΅Π½Π°ΠΌ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π²ΡΠ²ΠΎΠ΄Π°.
ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ SELECT ΠΎΡΠ΅Π½ΠΈΠ²Π°Π΅Ρ ΠΊΠ°ΠΆΠ΄ΡΡ ΡΡΡΠΎΠΊΡ-ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ ΡΠ°Π±Π»ΠΈΡΡ Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ. Π‘ΡΡΠΎΠΊΠ°-ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
* ΠΡΠ»ΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½Π° ΡΡΡΠ»Π°Π΅ΠΌΠ°Ρ ΡΠ°Π±Π»ΠΈΡΠ°<table reference> Π²ΠΊΠ»ΡΡΠ΅Π½Π°, ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΡΡΠΎΠΊΠ° ΡΡΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ° Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΡΠΎΠΊΠΎΠΉ-ΠΊΠ°Π½Π΄ΠΈΠ΄Π°ΡΠΎΠΌ.
* ΠΡΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡΠ»Π°Π΅ΠΌΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ<table reference> Π²ΠΊΠ»ΡΡΠ΅Π½ΠΎ, ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΡΡΠΎΠΊΠ° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΡΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π° Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠ΅ΠΉ ΡΡΡΠΎΠΊ ΠΈΠ· Π²ΡΠ΅Ρ Π΄ΡΡΠ³ΠΈΡ ΡΠ°Π±Π»ΠΈΡ. ΠΠ°ΠΆΠ΄Π°Ρ ΡΠ°ΠΊΠ°Ρ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ Π±ΡΠ΄Π΅Ρ Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΡΡΡΠΎΠΊΠΎΠΉ-ΠΊΠ°Π½Π΄ΠΈΠ΄Π°ΡΠΎΠΌ.
ΠΠ°ΠΆΠ΄Π°Ρ ΡΡΡΠΎΠΊΠ°-ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄Π΅Π»Π°ΡΡ ΠΏΡΠ΅Π΄ΠΈΠΊΠ°Ρ <predicate > Π² ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΈ WHERE Π²Π΅ΡΠ½ΡΠΌ, Π½Π΅Π²Π΅ΡΠ½ΡΠΌ, ΠΈΠ»ΠΈ Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠΌ.
ΠΡΠ»ΠΈ GROUP BY Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, ΠΊΠ°ΠΆΠ΄ΠΎΠ΅<value expression> ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ-ΠΊΠ°Π½Π΄ΠΈΠ΄Π°ΡΠ° ΡΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π΅Π»Π°Π΅Ρ ΠΏΡΠ΅Π΄ΠΈΠΊΠ°Ρ Π²Π΅ΡΠ½ΡΠΌ, ΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΡΡΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ Π²ΡΠ²ΠΎΠ΄. ΠΡΠ»ΠΈ GROUP BY ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, ΡΡΡΠΎΠΊΠΈ-ΠΊΠ°Π½Π΄ΠΈΠ΄Π°ΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΡΡΡΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π°Π³ΡΠ΅Π³Π°ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΡΠ»ΠΈ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ ΠΏΡΠ΅Π΄ΠΈΠΊΠ°ΡΠ°<predicate > Π½Π΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ, ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅<value expression> ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅-ΠΊΠ°Π½Π΄ΠΈΠ΄Π°ΡΡ ΠΈΠ»ΠΈ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π³ΡΡΠΏΠΏΠ΅. ΠΡΠ»ΠΈ ΡΠΊΠ°Π·Π°Π½ DISTINCT, Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΡ( Π΄Π²ΠΎΠΉΠ½ΠΈΠΊΠΈ) ΡΡΡΠΎΠΊ Π±ΡΠ΄ΡΡ ΡΠ΄Π°Π»Π΅Π½Ρ ΠΈΠ· Π²ΡΠ²ΠΎΠ΄Π°.
UNION (ΠΠΠͺΠΠΠΠΠΠΠΠ)
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ
<query> {UNION [ALL] <query> } . . . ;
ΠΡΠ²ΠΎΠ΄ Π΄Π²ΡΡ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ Π·Π°ΠΏΡΠΎΡΠΎΠ²<query> Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½. ΠΠ°ΠΆΠ΄ΡΠΉ Π·Π°ΠΏΡΠΎΡ <query > Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ Π½ΠΎΠΌΠ΅Ρ <value expression> Π² ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ SELECT ΠΈ Π² ΡΠ°ΠΊΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΡΡΠΎ 1.. n ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ, ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌ ΠΏΠΎ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ <data type> ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΡ<size> Ρ 1.. n Π²ΡΠ΅Ρ Π΄ΡΡΠ³ΠΈΡ .
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ
UPDATE <table name>
SET { <column name>=<value expression> } .,..
{[ WHERE <predlcate>]; }
| {[WHERE CURRENT OF <cursorname>]
<SQL term>]}
UPDATE ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΡΠΎΠ»Π±ΡΠ΅ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ<column name> Π½Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅<value expression>. ΠΡΠ»ΠΈ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ WHERE ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΡΠ΅Π΄ΠΈΠΊΠ°Ρ<predicate>, ΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΡΠΎΠΊΠΈ ΡΠ°Π±Π»ΠΈΡ ΡΡΠΈ ΡΠ΅ΠΊΡΡΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π΄Π΅Π»Π°ΡΡ ΡΠΎΡ ΠΏΡΠ΅Π΄ΠΈΠΊΠ°Ρ<predicate> Π²Π΅ΡΠ½ΡΠΌ, ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ. ΠΡΠ»ΠΈ WHERE ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ CURRENT OF, ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π² ΡΡΡΠΎΠΊΠ΅ ΡΠ°Π±Π»ΠΈΡΡ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ<table name> Π½Π°Ρ ΠΎΠ΄ΡΡΠΈΠ΅ΡΡ Π² ΠΊΡΡΡΠΎΡΠ΅ Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ<cursor name> ΠΌΠ΅Π½ΡΡΡΡΡ. WHERE CURRENT OF ΠΏΡΠΈΠ³ΠΎΠ΄Π½ΠΎ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Π²ΠΎ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠΌ SQL, ΠΈ ΡΠΎΠ»ΡΠΊΠΎ Ρ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΡΠ΅ΠΌΡΠΌΠΈ ΠΊΡΡΡΠΎΡΠ°ΠΌΠΈ. ΠΡΠΈ ΠΎΡΡΡΡΡΡΠ²ΠΈΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ WHERE - Π²ΡΠ΅ ΡΡΡΠΎΠΊΠΈ ΠΌΠ΅Π½ΡΡΡΡΡ.
WHENEVER (ΠΠ‘Π―ΠΠΠ Π ΠΠ ΠΠΠ)
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ
EXEC SQL WHENEVER <SQLcond> <actlon> <SQL term>
<SQLcond> ::=SQLERROR | NOT FOUND | SQLWARNING
(ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ - Π½Π΅ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅)
<action> ::=CONTINUE | GOTO <target> | GOTO <target>
<target> ::=Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ°
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ E. Π’ΠΠΠΠΠ¦Π« ΠΠ‘ΠΠΠΠ¬ΠΠ£ΠΠΠ«Π Π ΠΠΠΠΠ
Π’ΠΠΠΠΠ¦Π 1: ΠΠ ΠΠΠΠΠ¦Π«
snum
sname
city
comm
1001
Peel
London
.12
1002
Serres
San Jose
.13
1004
Motika
London
.11
1007
Rifkin
Barcelona
.15
1003
Axelrod
New York
.10
Π’ΠΠΠΠΠ¦Π 2: ΠΠΠΠΠΠ§ΠΠΠ
cnum
cname
city
rating
snum
2001
Hoffman
London
100
1001
2002
Giovanni
Rome
200
1003
2003
Liu
SanJose
200
1002
2004
Grass
Berlin
300
1002
2006