Dƒ‘ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›…ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›…ƒ›ƒ›E01-á÷ç-91Dƒ›ƒ›ƒ’E Dƒš SQL Æïòíáô ïðåòáôïòï÷ ƒŠ E2 óôò. ðï D86E óôòïëD ƒŠ EæáêìD hsql ƒšE Dƒ“ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›…ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›…ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ”E ƒ‘ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ’ ƒšDÏðòåäåìåîéñE CREATE, DROP, DATABASE, ALTER, RENAME ƒš ƒšDÍáîéðõìñãééE DELETE, INSERT, UPDATE, LOAD/UNLOAD ƒš ƒš SELECT and UNION statements. ƒš ƒšDÄïóôõðáE GRANT/REVOKE, LOCK/UNLOCK, SET LOCK MODE ƒš ƒšD×ïóóôáîï÷ìåîéñE Transaction, Audit trail ƒš ƒšDÐòïþéåE CHECK, REPAIR, INFO, OUTPUT, SET EXPLAIN ƒš ƒ“ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ›ƒ” Dƒƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‚E DƒŠDefinition CREATE, DROP, DATABASE, ALTER, RENAME ƒŠE DƒŠE Ïðåòáôïòù ïðòåäåìåîéñ äáîîùè îå ïôëáôù÷áàôóñ DƒŠE Dƒƒƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ„E DCREATE DATABASEE database [WITH LOG IN "pathname" [MODE ANSI]] DDROP DATABASEE database-name óôáîäáòô ansi = ôòåâõåô éíñ ÷ìáäåìøãá, ôòáîúáëãéñ ðï õíïìþîéà DDATABASEE database-name [EXCLUSIVE] óäåìáôø ôåëõýåê DCLOSE DATABASEE DCREATEE [TEMP] DTABLEE table-name ( column-name datatype [NOT NULL] [UNIQUE [CONSTRAINT constr-name]][,...] ) [UNIQUE(uniq-col-list) [CONSTRAINT constr-name]][,..] [WITH NO LOG] [IN "pathname-directory"] DATA TYPES INTEGER SERIAL[(n0)] - á÷ôïíáôéþåóëéê óþåôþéë SMALLINT CHAR(n) DATE FLOAT DECIMAL(m,n) DATETIME qualif1 TO qualif2 REAL MONEY(m,n) INTERVAL qualif1 TO qualif2 çäå qualifier ¨ {YEAR,MONTH,DAY,HOUR,MINUTE,SECOND,FRACTION(n)} DALTER TABLEE table-name { ADD ( new-column-name datatype [NOT NULL] [UNIQUE [CONSTRAINT constr-name]][,...] ) | [BEFORE old-column-name] DROP (old-column-name[,...]) | MODIFY (old-column-name new-datatype [NOT NULL][,...]) | ADD CONSTRAINT UNIQUE (old-column-name[,...]) | [CONSTRAINT constr-name] DROP CONSTRAINT (constr-name[,...]) } [,...] DCREATE VIEWE view-name [(column-list)] AS SELECT-statement [WITH CHECK OPTION] DCREATEE [UNIQUE|DISTINCT] [CLUSTER] DINDEXE index-name ON table-name (column-name [DESC], ...) DALTER INDEXE index-name TO [NOT] CLUSTER Côòïëé ÷ ðïòñäëå éîäåëóá CREATE SCHEMA AUTHORIZATION username {create and/or grant statements} Ðòéíåþáîéå: ðïäþåòëîõôùå ïðåòáôïòù îåìøúñ éóðïìøúï÷áôø ÷ 4GL   DCREATE SYNONYME synonym-name FOR table-name DDROP INDEXE index-name DDROP SYNONYME synonym-name DDROP TABLEE table-name DDROP VIEWE view-name DRENAME TABLEE old-table-name TO new-table-name DRENAME COLUMNE table.old-column-name TO new-column-name Dƒƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‚E DƒŠ Manipulation DELETE, INSERT, UPDATE, LOAD, UNLOAD ƒŠE Dƒƒƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ„E DDELETE FROME table-name [WHERE condition] DINSERT INTOE table-name [(column-list)] { VALUES (value-list) | SELECT-statement } DUPDATEE table-name DSETE {column-name ={ expression | (SELECT-st) } [,...] | {(col-list) | [table.]*} = { ({ expr-list | (SELECT-st) } [,...]) | record-name.* } [WHERE condition] DLOAD FROME "file" [DELIMITER "?"] INSERT INTO table [(col-list)] DUNLOAD TOE "file" [DELIMITER "?"] SELECT-statement Dƒƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‚E DƒŠ Select The SELECT and UNION statements. ƒŠE Dƒƒƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ„E DSELECTE [UNIQUE] select-list [FROM { [OUTER] tabname [tab-alias] | OUTER (table-expr) } [,...] ] [WHERE condition] [GROUP BY column-list] [HAVING condition] [ORDER BY column-name [DESC],...] [INTO TEMP table-name] SELECT-statement UNION [ALL] SELECT-statement [. . .] WHERE conditions:  ó÷ñúáîîùå ìïçéþåóëéíé ïðåòáôïòáíé OR, AND, NOT óòá÷îåîéñ expr rel-op expr çäå rel-op éú >,<,>=,<=,<>,!= column-name IS [NOT] NULL expr [NOT] BETWEEN ... AND ... expr [NOT] IN (.. , .. [, ...] ) ðï õíïìþáîéà "\" string [NOT] LIKE "ûáâìïî" [ESCAPE "escape-char"] óðåãóéí÷ïìù ûáâìïîá D%E D_E ïúîáþáàô ¦ §! string [NOT] MATCHES "ûáâìïî" [ESCAPE "esc-char"] óðåãóéí÷ïìù ûáâìïîá D*E D?E D[EabHD]E D[^EdD-EzD]E ïúîáþáàô ¦ §! ¨ © expr rel-op {ALL | [ANY | SOME]} (SELECT-statement) expr [NOT] IN (SELECT-statement) !* Ïâùëîï÷åîîùê *! [NOT] EXISTS (SELECT-statement) !* SQLå÷óëéê *! Dƒƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‚E DƒŠAccess GRANT/REVOKE, LOCK/UNLOCK, SET LOCK MODE ƒŠE Dƒƒƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ„E {DBpriv {PUBLIC ðòá÷ï äá÷áôø ðòá÷á DGRANTE | TO | [WITH GRANT OPTION] [AS grantor] TBpriv ON table} user-list} ïô þõöïçï éíåîé {DBpriv {PUBLIC DREVOKEE | FROM | TBpriv ON table} user-list} TABLE PRIVILEGES: DATABASE PRIVILEGES: ALTER DELETE INDEX INSERT CONNECT SELECT[(cols)] RESOURCE UPDATE [(cols)] DBA ALL [PRIVILEGES] DSET LOCK MODEE TO [NOT] WAIT öäáôø /îå öäáôø ïó÷ïâïöäåîéñ DLOCK TABLEE table-name IN {SHARE | EXCLUSIVE} MODE DUNLOCK TABLEE table-name {Íïöîï óíïôòåôø | Îéþåçï îåìøúñ } Dƒƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‚E DƒšIntegrity Transaction, Audit trail ƒŠE Dƒƒƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ„E Ðòï÷ïäéôø ôòáîúáëãéà ó îï÷ùí LOG æáêìïí DSTART DATABASEE database WITH LOG IN "/pathname" [MODE ANSI] DDATABASEE database-name [EXCLUSIVE] DROLLFORWARD DATABASEE database-name ×ïóóôáîï÷éôø âáúõ DCLOSE DATABASEE éú backup-ëïðéé DBEGIN WORKE Îáþáìï ôòáîúáëãéé ×îéíáîéå, ÷óå éúíåîåîîùå . . . óôòïëé ìïëéòõàôóñ!! DCOMMIT WORKE Koîåã ôòáîúáëãéé DROLLBACK WORKE Ïôëáôéôø éúíåîåîéñ ë ðòåäùäõýåíõ COMMIT DCREATE AUDITE FOR table-name IN "pathname" . . . DRECOVER TABLEE table-name ×ïóóôáîï÷éôø ôáâìéãõ DDROP AUDITE FOR table-name Dƒƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‚E DƒŠAuxiliary CHECK, REPAIR, INFO, OUTPUT, SET EXPLAINƒŠE Dƒƒƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ‹ƒ„E CHECK TABLE table-name Ðòï÷åòéôø éîäåëóù REPAIR TABLE table-name Òåíïîô éîäåëóï÷ Ðòéíåþáîéå: ðïäþåòëîõôùå ïðåòáôïòù îåìøúñ éóðïìøúï÷áôø ÷ 4GL   INFO {TABLES | COLUMNS FOR table-name | INDEXES FOR table-name | STATUS FOR table-name | {ACCESS | PRIVILEGES} FOR table-name} DUPDATE STATISTICSE [FOR TABLE table-name] óéóôåíîïí ëáôáìïçå DSET EXPLAINE {ON | OFF} ×ëìàþéôø óéóôåíîùå ïâ`ñóîåîéñ