




    3                     


     SQL          


  ᮤন ࠢ ଠ  ᭮ -
 몠 SQL.    ⮢  饥 -
祭  䥪⨢ ᯮ짮 SQL.  । ᯮ짮-
    ,  ।⠢        5   -
"ࠢ筨  ஢ SQL",  室   -
楯樨,   ⮩ .   뢠 ᫥-
騥 ࠧ:

          * ꥪ  
          * ࠢ  ꥪ⮢  
          * १ࢨ஢ ᫮
          * ࠫ
          * ६
          * ⨯ 
          * 祭 null
          * ᥢ⮫


         ꥪ                             

ꥪ     -  ,  ন ORACLE RDBMS. 
設⢮ ꥪ⮢       ;  ꥪ  
(ਬ  -  ⠡ ࠭⢠) -   ࠭ 㣨 
ꥪ⮢  .  -  ⢥ ꥪ,  ࠭  
짮-    ஬    ।⢥.

ꥪ    ᮧ  ,  稭 ࠢ 
,  ᠭ  ᫥饬 ࠧ.  ꥪ    
ᮧ⥫    ; 筮 ᮧ⥫    ꥪ    
⥬  殬.  ᫥ ꥪ,   :  * 
    * ⮫ *  ࠭祭 *   * 裡   * 
    * ᥣ ⪠ * 窨 ࠭ * ᫥⥫쭮 * 
   ᨭ * ⠡ * ⠡ ࠭⢠ * 짮⥫ * 

         ࠢ  ꥪ⮢               

 ꥪ⮢   稭 ᫥騬 ࠢ:

1.   ꥪ          1  30
   ᨬ (஬  ꥪ⮢,  ࠭祭 ᥬ ᨬ).
2.    ᮤঠ 祪.
3.    ॣ⢨⥫
4.   稭  㪢.
5.   ᮤঠ ⮫쪮 ᨬ A-Z, 0-9, _,$  # (ᯮ짮 $  # 
   ᯥ樠쭮 ਢ).
6.     㡫஢ १ࢨ஢ ᫮ ORACLE (᫥  
   ᫥饬 ࠧ).
7.      㡫஢  -  ꥪ  ,  
   楬 ண    짮⥫.
8. (, ᫥⥫쭮, ⠡  ).  ꥪ   

                                    -- 28 --



      쭥襬 ।    짮⥫ - 
     ꥪ.  ਬ, ஬   EMP     
   ᯮ짮   SCOTT.EMP.   ⠪  ஡ ࠢ  
   ᫥  窨,    ⭮  ᮣ襭.
9.   ᮤঠ   ᨬ    砥 祭   
   窨  ࠢ 3-6  .  ( ⮬ 砥   ⠪ 
   ᮤঠ  ஡).

 ⠡  ⮫殢,     ꥪ⠬ ,  
᫥ 㪠 ࠢ.
ਬ 䨪஢:

ENAME
HORSE
SCOTT.hiredate
"SELECT"
"EVEN THIS & THAT!"
A_VERY_VERY_VERY_LONG_NAME


            ꥪ⮢     

 ᪮쪮  㪠    ꥪ⮢  :
* ᯮ  ,  ᫮  ꥪ⮢ (  - 
    ॢ).
* ᯮ   ⢥ ᫥.
* ᯮ ⨢稢 .
* ᯮ           ⮩  魮  
  ਡ  ࠧ ⠡.

   ꥪ⠬     ࠢ  tॡ:
ᤥ     (  ᯮ짮)  ᫥  (  
祭 ).   砥 ᮬ     室  롨  
 , ⠪   設⢮ ⥬ ᯮ  쬨  
祭  .    १        
६, ⮡  ⥬, ᫨   ꥪ PMDD  
PAYMENT_DUE_DATE.

 ᮣ襭      ⢥  ᫥, ਬ  -  
ᯮ  EMPLOYEE  EMPLOYEES.      
ਠ  ᯮ짮   ⢥ .   ⠪  - 
  祭 ⠡   ᬮ.

ᯮ짮 ᮣᮢ ࠢ    짮⥫  
 祭 ⠡  襬 ਫ.    ⠪ ࠢ   
祭  ᥬ  ⠡栬, ⭮騬  ⥬ FINANCE, 䨪 FIN_.

室 ᯮ짮    ࠧ ⠡    ⮫殢  
⨯묨 묨.  ਬ,   ⠡ EMP, ⠪  DEPT ⮫   
⤥ 뢠 DEPTNO.


         १ࢨ஢ ᫮                       

ਢ  ᫮ १ࢨ  SQL.   ᯮ짮   ⢥ 
 ꥪ⮢   (᫨     窨).



                                    -- 29 --



, ⬥祭 窮 (*),  ⠪  १ࢨ஢묨  ᫮ 
ANSI.  ,  祭   (+)    ORACLE RDBMS 
Version 6.

          ACCESS             DEFAULT*            INDEX
          ADD                DELETE*             INITIAL
          ALL*               DESC*               INSERT*
          ALTER*             DISTINCT*           INTEGER*
          AND*               DROP                INTERSECT
          ANY*                                   INTO*
          AS*                ELSE+               IS*
          ASC*               EXCLUSIVE
          AUDIT              EXISTS*             LEVEL
                                                 LIKE
          BETWEEN*           FILE                LOCK
          BT*                FLOAT*              LONG
                             FOR*
          CHAR*              FROM*               MAXEXTEMNS
          CHECK*                                 MINUS
          CLUSTER            GRANT*              MODE
          COLUMN+            GRAPHIC             MODIFY*
          COMMENT            GROUP*
          COMPRESS                               NOAUDIT
          CONNECT            HAVING*             NOCOMPRESS
          CREATE*                                NOT
          CURRENT*           IDENTIFIED          NOWAIT
                             IF+                 NULL*
          DATE               IMMEDIATE*          NUMBER
          DBA                IN*
          DECIMAL*           INCREMENT           OF*+

          OFFLINE+           ROWNUM              UID
          ON*                ROWS                UNION*
          ONLINE+                                UNIQUE*
          OPTION*            SELECT*             UPDATE*
          OR*                SESSION*            USER
          ORDER*             SET*+
                             SHARE               VALIDATE
          PCTFREE            SIZE                VALUES*
          PRIOR              SMALLINT*           VARCHAR*
          PRIVILEGES*        START+              VARGRAPHIC
          PUBLIC*            SUCCSESSFUL         VIEW*
                             SYNONYM
          RAW                SYSDATE             WHENEVER*+
          RENAME                                 WHERE*
          RESOURCE           TABLE*              WITH*
          REVOKE*            THEN+
          ROW                TO*
          ROWID              TRIGGER+


         祢 ᫮                                

騥 祢 ᫮  ᯥ樠쭮 祭   몥 SQL, ন-
 ORACLE RDBMS,     १ࢨ஢묨 ᫮ , ᫥⥫쭮,
  䨪ࠬ.    ᫮   १ࢨ஢묨 
 饬. १ࢨ஢ ᫮  ANSI  ⬥祭 窮 (*); 祢 
᫮,    ᨨ 6, ⬥祭 ᮬ (+).

                                    -- 30 --



          ARCHIVELOG+        ESCAPE*+            MAXVALUE+
          AUTHORIZATION*+    EVENTS+             MINEXTENTS+
                             EXEC*+              MINVALUE+
          BACKUP+                                MODULE*+
          BEGIN*+            FETCH*+             MOUNT+
                             FOREIGN*+
          CACHE+             FORTRAN*+           NEXT*+
          CHARACTER*+        FOUND*+             NOARCHIVELOG+
          CLOSE*+                                NOCACHE+
          COBOL*+            GO*+                NOCYCLE+
          COMMIT*+           GOTO*+              NOMAXVALUE+
          CONSTRAINT*+                           NOMINVALUE+
          CONTENTS+          INCLUDING+          NOORDER+
          CONTINUE*+         INDICATOR*+         NORMAL+
          CONTROLFILE+       INITRANS+           NOSORT+
          CRASH              INT*+               NUMERIC*+
          CURSOR*+
          CYCLE+             KEY*+               ONLY*+
                                                 OPEN*+
          DATABASE           LANGUAGE*+
          DATAFILE+          LINK                PASCAL*+
          DEC*+              LOGFILE+            PCTINCREASE+
          DECLARE*+                              PCTUSED+
          DISMOUNT+          MAXDATAFILES+       PL1*+
          DOUBLE*+           MAXINSTANCES+       PRECISION*+
                             MAXLOGFILES+        PRIMARY*+
          END*+              MAXTRANS+           PROCEDURE*+

          READ*+             SEQUENCE+           TABLES+
          REAL*+             SHARED+             TABLESPACE+
          REFERENCES*+       SOME*+              TEMPORARY*+
          RELEASE+           SORT+               TRANSACTION*+
          RESETLOGS+         SPECIFIED+
          REUSE+             SQL*+               USING*+
          ROLLBACK*+         SQLCODE*+
                             SQLERROR*+          WRITE*+
          SAVEPOINT+         STATEMENT+          WORK*+
          SCHEMA*+           STORAGE+
          SECTION*+          SWITCH+
          SEGMENT+           SYSTEM*+


         ନ ⥬ ORACLE                        

         ࠫ                              

ନ: literal,  constant, value (ࠫ, ⠭, 祭)  ORACLE 
   祭;    ।⠢ ।   ଠ樨.  
ਬ  -  'JACK',  'BLUE ISLAND', '101' - ᨬ ࠫ;  '01-JAN-89' 
- ࠫ ⨯ ; 5001 - ஢ ࠫ. ,  ᨬ  
 ࠫ 祭      窨.  窨  ORACLE 
⫨  ꥪ⮢    ᨬ   ࠫ.

         ६                            





                                    -- 31 --



६  ⥬ ORACLE 㦠 ⮬  饭 ࠫ. ६  
ORACLE ࠡ 筮 ६  몠 ணࠬ஢.   
  ६ ६    ⮩,   ࠭ 
ࠫ.  ६  ᭮ ᯮ   SQL.


                                             

 ࠫ   ६,   묨 ࠡ⠥ ⥬ ORACL,  
। ⨯ .    樨  䨪஢ ஬ 
᢮,    祭.   ᢮  ORACLE 
ࠧ ⨯  . ਬ  -  ᫮   믮  묨 
⨯a NUMBER,    묨 RAW.

  ⠪ ࠭稢    祭,    ਭ  
 .  ਬ - ⨯  DATE   ਭ 祭 29 
䥢ࠫ, ᫨   ᮪.     ⨯     ਭ 
祭 2  'SHOE'.

祭    । ⮣   ⨯,     ⨯ ⮫,  
஬  ਭ.   ᯥ   ALTER 
TABLE,  CREATE CLUSTER   CREATE TABLE.   ⮫ ⠡ 砥 
। ⨯ ,  ᫥⥫쭮 -   祭, ਭ饬 
 ⮫.  ORACLE 砥 ⨯   祭 室  
⥪  ᯮ짮.  ਬ, ᫨  ⠢  '01-JAN-89'    
⮫  ⨯ DATE,  ORACLE ᫥ ஢ન  ࠢ쭮 㤥  ࠪ⮢  
ᨬ ப '01-JAN-89'  祭 ⨯ DATE.


         蠭 ⨯: ८ࠧ ⨯    

 饬 砥  ࠦ       ᬥ襭  ⨯ . ਬ 
- ࠦ   ᮤঠ ந 5  10  ⥬ ᫮   
'JAMES'.

, ORACLE 㤥 믮  ८ࠧ    ⨯   㣮 
᫨   .  ਬ, ࠫ쭠 ப '10'  ⨯ CHAR,  
ORACLE ८ࠧ   NUMBER, ᫨  ᯮ  ᫮ ࠦ.


           CHAR  VARCHAR                    

  CHAR  ᯮ    樨    ᫮ ⥪.   
 ࠭祭,  祬 㣨 ⨯  , ᫥⥫쭮,    
᢮,   㣨 ⨯ . ਬ,    ⨯  CHAR  
࠭   ⥪,   ⨯ NUMBER - ⮫쪮 ᫮.

 ࠭  ப ६    ASCII  EBCDIC -  
ᨬ  ᯮ㥬 .  ᯮ짮 ⠭ ᨬ 
  ᭨  ७ᨬ ਫ  設 ࠧ ⥪.

 饥 ६ ⨯  CHAR   VARCHAR  .   ⨯  
।祭  ࠭ ᨬ ( ⭮ ஢) .   
CHAR  VARCHAR  ᯮ짮 ࠢ筮,   䥪⮬.





                                    -- 32 --



᮫ ᨬ ᫠ ᨬ,    ࠭  ⮫, 
।  CHAR  VARCHAR,  ࠢ 255. ᨬ쭮 ᫮  ᨬ  
⭮ ⮫ 㪠뢠  ᮧ ⠡,        
   ALTER TABLE.


        ⮫ CHAR  VARCHAR  ᫮  ࠭  VARCHAR.

   ६  CHAR  VARCHAR  ᨨ 6 ࠪ ⭮, ,  
    ORACLE RDBMS  CHAR 㤥 䨪஢ ,  VARCHAR 
- ६.


        Text                                          

祭     ஢ ࠫ ⨯ "ப ᨬ"
।뫪    

⠪      '[char]...'

祢 ᫮  char             ⮢ ᨬ쭮
 ࠬ                     (.. ASCII, EBCDIC),
                               ᯥ㥬 ࠬ஬ 䠩 
                               INIT.ORA - LANGUAGE.

砭    ⮢ ࠫ       255
ᯮ짮  ᨬ.  砥   窨; ᠬ 窠 
               ।⠢  ࠫ  騬  窠.

               砭:    㪮⢥ ନ ᨬ-
                ࠫ  ⥪⮢ ࠫ ᯮ-
                ࠧ.

ਬ        'Hello'
               'ORACLE.dbs'
               'Jackie''s raincoat'
               'Happy Birthday, Tom!'
               '09-MAR-88'.

易       "Integer"  "Number"   ⮩ -
ࠧ        ; ᨭ⠪᪮ ᠭ condition   expr
                 4 - "  㭪樨"  㬥.


          NUMBER                             

  NUMBER ᯮ  ࠭ ᥫ (  䨪஢  
饩 窮).   ࠭ ᫠ ࠪ᪨  ࠧ - 
筮  38 . ࠭  ᫠    1.0*10    (-129  ⥯)  
  9.99*10  124 ⥯.

 ᫮ ⮫  ᯥ஢:

        * NUMBER
        * NUMBER  筮 (饥 ⢮     1  38)
        * NUMBER  筮   ⠡ (⢮  ᫥ 筮 
                 窨    -84  127)


                                    -- 33 --



⠪  ⨯ NUMBER ᫥騩:

        column_name NUMBER [ ( precision [,scale] ) ]

ਬ:
        CREATE TABLE MINI (WEENUMBERS NUMBER (2,1))


        ᯮ짮 ⠡  筮             

᫮    ᯥ஢  饥 ᫮   ᫮  
権 (᫥ ⮩).    믮   室  ⥫  
஢  楫⭮.  䨪 ᨬ쭮 ⢠ ,  
室 ࠭,  ॡ, ⮡  ᫠ 뫨 䨪஢ . ᫨ 
祭 ॢ蠥 ᨬ  ⠡,  ᫮ 㤥 㣫.   ᫥饩  
⠡  ਬ ⮣,      ࠧ 
祭  ⠡.

           ஢      ࠭

7,456,123.89             NUMBER               7456123.89
7,456,123.89             NUMBER(9)            7456124
7,456,123.89             NUMBER(9,2)          7456123.89
7,456,123.89             NUMBER(9,1)          7456123.9
7,456,123.8              NUMBER(6)            筮 ॢ襭
7,456,123.8              NUMBER(15,1)         7456123.8
7,456,123.89             NUMBER(7,-2)         7456100
7,456,123.89             NUMBER(7,2)          筮 ॢ襭


        ⥫ ⠡                         

᫨ ⠡  ⥫,  ॠ  㣫  㪠 ᫠ 
権   筮  窨.  ਬ, ᯥ䨪 (10,-2) 砥 
㣫  ⥭.

        ⠡  筮                       

  ᯮ   ,   㤥 訡 㪠 ⠡  
筮. ᫨ ⠪,  筮 ᯥ ᨬ쭮 ᫮   
᫥  筮 窨.       묨 ⨯ NUMBER,  ᫨ 祭 
ॢ蠥 ᨬ 筮,  뤠 ᮮ饭  訡,  ᫨ 
祭 ॢ蠥  ᨬ  ⠡,   㣫.  ਬ, ᫨ 
⮫ ।  NUMBER(4,5),   ॡ   ⢥ ࢮ  
᫥ 筮 窨 - ,    ᫥ 窨, 稭  ⮩, 
 㣫.

 ⠡ 뢠 䥪,    ⠡   筮.

           ஢      ࠭


.01234                   NUMBER(4,5)          .01234
.00012                   NUMBER(4,5)          .00012
.000127                  NUMBER(4,5)          .00013
.0000012                 NUMBER(2,7)          .0000012
.00000123                NUMBER(2,7)          .0000012


                                    -- 34 --




        ᯮ樠쭮 ।⠢                

     ।⠢  ⠪   ᯮ樠쭮 ଠ.  
ࠦ ᫮,  ᫥ 㪢 ""   ᫮  1  128. 
ਬ, ᫮ 123456 ।⠢   1.23456,   0.0987 -  9.87.  
 ।  ORACLE ᥫ  ᯮ樠쭮 ।⠢  
 ࠧ "NUMBER" ⮩ .



        ⢮ FLOAT                            

ORACLE ন 楯 ᫠  饩 窮   ⨯  
FLOAT.   ⨯  ᮣᮢ뢠  ⠭⮬ ANSI  ᥫ   
饩  窮.    祭  ⨯  FLOAT   筮 窨 
 㪠     ࢮ  ᫥  ( ).  ⠡ 
    ਬ     㪠 ⮫쪮  ᫥ 筮 
窨, ᪮쪮  ( ॢ ᨬ쭮 祭 筮).

FLOAT  ᯥ஢  FLOAT, FLOAT(*), FLOAT(binary_precision).  
FLOAT    FLOAT(*)     ।⠢ ᨬ  筮  126 
 .  126   ਬ୮  37  ࠬ.

ᨬ 筮  ᯥ஢   ᨭ⠪ 
FLOAT(binary_precision).  ⮡ ८ࠧ  筮  , 
室 㬭 筮 祭  0.30103. ⮡ ८ࠧ  
筮 筮  , 㬭 筮 祭  3.32193.

        㣨  NUMBER                           

 ᮢ⨬  㣨 ⥬ ࠢ   ORACLE 
ন ᨭ⠪ ப   ᫮ ⨯   
DECIMAL,  INTEGER, DOUBLE_PRECISION  REAL.   ⨯ ᫮  ॠ쭮 
    ⮬  ७ ଠ ORACLE.  ⥫ ⨯ 
᫮ ଠ⮢   筮  ⠡. ਬ, DECIMAL(5) 
ࠧ㬥 ⠡ 0. 稢 祭  ࠧ  ᫮  
  ਢ     ࠧ "  ᫮ ⨯ ".


        Integer                                       

祭.....஢ ᫮   (楫).    ਬ,
               integer  ।⠢ ࠧ  .
।뫪    .

⠪      [ + | - ]digit[digit]...[K|M]

祢 ᫮ digit             0,1,2,3,4,5,6,7,8,9.
 ࠬ

砭  ᯮ짮  
᫨  integer ᫥  "",  ⢨⥫쭮 祭 砥  㬭  
ᯥ஢ ᫠  1024. ᫨ ᫥ "", 祭 砥  ᫥  
㬭  ᫠   1048576.  饬 砥  integer ।⠢ ;   - 
砥    - .   ""  ""   
ᯮ짮 ,   ࠧ襭 ᯮ짮 ᫮ ࠦ.


                                    -- 35 --



ᨬ쭮 integer  ࠭ 38 .
ਬ        7
               255
               29
               6

易       "Integer"  "Number"   ⮩ -
ࠧ        ; ᨭ⠪᪮ ᠭ condition   expr
                 4 - "  㭪樨"  㬥.


        Number                                        

祭     ।⠢ ᫮ ࠫ.
।뫪    .

⠪      digit[digit...].[digit...][{exponent|multiplier}]

祢 ᫮ digit             0,1,2,3,4,5,6,7,8,9.
 ࠬ
               exponent        {e|E}[+|-]digit[digit]...

               multiplier        . 砥 ᫮,  ஥ 
                               㬭   - 1024,  - 1048576.

砭     ᯮ짮    ।⠢  
ᯮ짮  楫,  ⠪  ⢨⥫ ᥫ. ᯮ-
               樠쭠    ᮢ⨬    㪠 ⥫.
               ⥫  㪠뢠 ⮫쪮  ।⠢ 楫 ᥫ
               ᨬ쭮 number   ࠭ 38 .

ਬ        25
               6.34
               0.5
               7E2
               25e-03
               256K
               1M

易       "Integer"  "Number"   ⮩ -
ࠧ        ; ᨭ⠪᪮ ᠭ condition   expr
                 4 - "  㭪樨"  㬥.


          DATE                               

   DATE ᯮ  ࠭ ଠ樨    ६.   
ଠ       ६     ।⠢ ⨯  CHAR 
 NUMBER,  ORACLE 樨  ⨬ ⨯ ᯥ樠 ᢮⢠.

          祭  :
          * 
          * 
          * 
          * 
          * 
          * 
          * 㭤

                                    -- 36 --



६   24 - ᮢ ଠ.  㬮砭 ६  DATE  
祭 12:00:00 a.m. () - ᫨ ६   㪠뢠.    㬮砭  
    DATE  ਭ 祭 ࢮ  ⥪饣 .  㭪 
SYSDATE 頥 ⥪   ⥪饥 ६.

⠭ ଠ ORACLE  ⨯    DATE  DD-MON-YY, ਬ -  
13-NOV-88.        ⠭⭮  ORACLE ଠ 室 
ᯮ짮 㭪 TO_DATE  ᮮ⢥饩 ᪮ ଠ.

       ६ 室 ⠪ ᯮ짮 㭪樥 TO_DATE, 
 ᪠  ᮤঠ 㪠 ६, ਬ:

INSERT INTO BIRTHDAYS (BNAME, BDAY)
    VALUES ('ANNIE',
       TO_DATE('13-NOV-85 10:56 A.M.','DD-MON-YY HH:MI A.M.')

 ࠢ ,    ᢮ ⠢ ६,   ஢ 
६ ᯮ짮 㭪 TRUNC.


        䬥⨪                         

     㬭      ,  ⠬  
ਡ     ᫮  ⠭   㣨 .  ਬ  
SYSDATE  +  1  砥 "",   SYSDATE - 7 -        ࠭  
⥪饩.  ⠭ SYSDATE  ⮫ HIREDATE  ᫮ ,   
㦠騩 ࠡ⠥   ࣠樨.

ORACLE । 㭪樨   権  ⠬. ਬ, 㭪 
ADD_MONTHS          . 㭪 
MONTHS_BETWEEN  頥 ⢮ 楢   ⠬;  ஡ 
 १ ।⠢  ᥡ  31 -  .   -
஡ ଠ  㭪  ᬮ ᪠   4  "  
㭪樨".

    ᮤন  ६, 設⢮ १⮢ 
権  ⠬ ᮤঠ ஡ ,    . ਬ 1.5 
 = 36 ᮢ.


        ᯮ짮 ᪮                   

᪠  -  ᫮ ,  襤  1 ﭢ  4712   襩 
.  ᪠  砥 ᫥⥫쭮 ஢  饩 窨.  
 ᪮   ⥬ ORACLE    ६.   
ᯮ짮 ᪮   㭪 TO_CHAR   TO_DATE ਬ ᪠ 
ଠ "J". ਬ:

        SELECT TO_CHAR(TO_DATE('01-JAN-89'),'J') FROM DUAL
୥:
        2447528


          LONG                               





                                    -- 37 --



⮫, ।    LONG,    ࠭ ᨬ ப ६ 
  65535 ᨬ.     LONG ⫨砥  VARCHAR ⮫쪮 
ࠧ஬ ࠭ ப.   ⨯ LONG   ᯮ짮    
࠭  ᨢ ᨬ   ⪨ 㬥⮢.

 ᫮   । ஢ ࠭  ⮫  ⨯  LONG. 
⮫ ⨯ LONG  ᯮ짮:
          *  ᯨ᪠ ஢ SELECT
          *  ࠧ SET । UPDATE
          *   INSERT


        ࠭祭  ᯮ짮  LONG      

   ⨯ LONG 뢠  ࠭祭.   ⠡  
 ⮫쪮  ⮫ ⨯ LONG.  ஬ ⮣, ⠪ ⮫  
ᯮ짮:
          *  
          *  ࠧ WHERE, GROUP BY, ORDER BY, CONNECT BY, DISTINCT
          *  㭪 (⠪  SUBSTR  INSTR)
          *  ࠦ
          *   ᯨ᪠  SELECT   ,  易  㣨  
                UNION, INTERSECT, MINUS
          *  ।  (   ᯮ    
            SQL*Plus - COPY)


          RAW  LONGRAW                     


 RAW    LONGRAW ᯮ   - ਥ஢  (ਬ 
-     ப  ⮢)   ࠭ ᨬ  ப  
᫥⥫쭮⥩ ᪨ ᨬ. ORACLE 뤠  ⨯ RAW   
⭠筮 .   ⨯  RAW  CHAR ( LONGRAW - LONG) 
 ᪫祭 ⮣,   ।   SQL*Net  ⨯  CHAR  
  ८ࠧ뢠  ASCII  EBCDIC  ⭮.

 ⨯ RAW 室   ⭠筮 .


          DB2  SQL/DS                      

⥫쭮  ⨯  ORACLE SQL -   ᮧ ⠡    
,  ਭ騥  ⨯  த⮢  IBM: SQL/DS  DB2  
८ࠧ뢠   ⨯  ORACLE ᫥騬 ࠧ:

  SQL/DS  DB2               ORACLE 

SMALLINT                              NUMBER(38)
INTEGER                               NUMBER(38)
DECIMAL(m,n)                          NUMBER(m,n)
FLOAT                                 NUMBER
VARCHAR(n)                            CHAR(n)
LONG VARCHAR                          LONG





                                    -- 38 --



- ⢨  ORACLE ᮮ⢥饣  ⨯      
ᯮ짮 ⨯:
          * GRAPHIC
          * VARGRAPHIC
          * LONG VARGRAPHIC

    ᯮ짮   ꥪ⮢ , ⠪   
 १ࢨ஢묨 ᫮ SQL/DS.


          ROWID                              

 易   ப ᥢ⮫,   ᮮ⢥  
ப.      ࠭ SQL - ஬ ᯮ १ࢨ-
 ᫮ ROWID.     ᫥饬 ਬ,  , 롨騩 
ROWID, 頥  ⭠筮  祭  롨ࠥ ப:

SELECT ROWID, ENAME FROM EMP WHERE DEPTNO = 20

ROWID                ENAME
-------------------  ----------
0000000F.000.0002    SMITH
0000000F.003.0002    JONES
0000000F.007.0002    SCOTT
0000000F.00A.0002    ADAMS
0000000F.00C.0002    FORD

ROWID 頥    ଠ樨,  室  宦 ப:
          *    䠩  
          *  ப   (ࢠ ப 0)
          *  䠩   ( 䠩 1)


         祣 ᯮ ROWID ?                 

ROWID  ᪮쪮  ਬ:
          *   ᪮३訩  ⮤  㯠  । ப.
          *   ᯮ짮,  ⮡ ᬮ,  ॠ쭮 ࠭ 
             ப ⠡.
          *   㭨 䨪஬  ப   ⠡

ROWID  ப ⠥  ﭭ    殮  ᥣ ६   
ப.      ࠪ⮢ ROWID  ᭮ ,  ⠪   
   㤠  ୮    ப,  ਬ -  
ᯮ짮 ⨫ Export/Import.   ⮣,  ᫥ 㤠 ன 
ப ORACLE   ROWID   ப.

 ROWID      ᯮ짮    ࠧ  SELECT  WHERE,   
     ,  ᫥⥫쭮,   塞묨 
묨. 㣨 ᫮ -  믮  ROWID 樨 UPDATE, 
INSERT  DELETE.


        ८ࠧ ⨯                    

ࠧ WHERE  ࠦ (㫥,  䬥᪨  )  ᯮ-
  ࠢ  ࠧ ⨯.       믮   
 ORACLE 易⥫쭮 ᯮ  ८ࠧ  .   ᫥ 

                                    -- 39 --



ਬ ORACLE ⮬᪨ 믮 室  ८ࠧ :
SELECT ENAME FROM EMP WHERE ENAME = 135
SELECT ENAME FROM EMP WHERE EMPNO = '7936'
SELECT ENAME FROM EMP WHERE HIREDATE = '12-MAR-86'
SELECT ENAME FROM EMP WHERE ROWID = '00002514.0001.0001'

 믮 ८ࠧ ORACLE :
          * ८ࠧ ⠭  ⨯  ⮫
          * ८ࠧ 祭  ⮫    ⨯    ⠭
          * ८ࠧ ⨯  ⮫   ⨯  
            㣮 ⮫

㭮 3-1 뢠 짮⥫᪨ 㭪樨,   믮 
८ࠧ   ⨯   㣮:

            
                     CHAR         NUMBER          DATE
        Ŀ
                                                        
       CHAR              TO_NUMBER     TO_DATE    
                                                        
                Ĵ
                                                        
       NUMBER      TO_CHAR             TO_DATE    
                                                        
                Ĵ
                                                        
       DATE        TO_CHAR       ୮          
                                                        
                
    㭮 3-1 㭪樨 ८ࠧ ⨯ 

८ࠧ   ⥪⭮ - ᨬ묨, ⮬  
,      㤥  믮    ८ࠧ.  
 ⮣, ⮡     ⮬᪨ ८ࠧ, 
室 㪠뢠  ८ࠧ, ᯥ稢 㭪ﬨ SQL.  
 ᫥騬 ᮮࠦﬨ:

          * ᫨  ਬ 㭪樨    ८ࠧ-
          , SQL -  ⠭   
          * ⮬᪮ ८ࠧ   ⨢   
          ந⥫쭮,  ᮡ ᫨ ⮫ ८ࠧ뢠  ⨯ 
           ⠭
          *   ८ࠧ    ᨨ  
          ᨨ    த  ORACLE   㣮 , ᫥⥫쭮, 
            ८ࠧ  ।᪠㥬.


        ࠢ ࠢ ⨯                 

ਢ ᯨ᮪ ࠢ ࠢ 祭 ࠧ ⨯:
᫮ 祭                             

 ⥫ ᥫ ࠢ 筮.  ⥫ ᫠ "" 
⥫.   ࠧ: -1  100,  -100  祬 -1.

        祭                                  


                                    -- 40 --



   ᬠਢ "",  祬  ࠭. ਬ,  
'29-MAR-88'  ""  祬   '05-JAN-89',    '1:35pm'  祬 '10:09am'.

         祭                           

祭 ࠢ ᨬ  ᨬ,   㦨 ᮢ.  
 ப  訩 ᨬ    ⮩ 樨,    ⠥ "". 
᫨  ப   ᥬ ᨬ  ⪮  ப,      
 ⠥ .

 ࠢ    ᮮ⢥⢨  "᫥⥫쭮 ᫨ﭨ" 
,  ஬ ࠡ⠥ ORACLE.  ᨬ  㣮,  ᫨    
室 ᫥   ᫥⥫쭮 ᫨ﭨ.

設⢮ ஢  ᯮ    ᫥⥫쭮 ᫨ﭨ, 
뢠   ASCII   (American  Standard  Code  for Information Interchange)   
EBCDIC  (Extended  Binary  Coded Decimal Interchange  Code).    
।⠢   ᫥ ࠭.

砭: ORACLE ᯮ ᫥⥫쭮 ᫨ﭨ ᢮ .  
㪢 孥   ॣ஢  .  ASCII  㪢    
ॣ     㪢 ,  EBCDIC ୮ ⭮.

 ASCII  ᨬ  ࠫ  '0'  '9'   䠢,  
EBCDIC ⠪ ୮ ⭮.

 ᫥  ⠡ ਢ ᫥⥫쭮 ஢  ASCII  
EBCDIC.

        ᫥⥫쭮 ஢ ASCII           

            筮                筮
            祭            祭       
            
            32           ஡       59             ;
            33           !            60             <
            34           "            61             =
            35           #            62             >
            36           $            63             ?
            37           %            64             @
            38           &            65-90          A-Z
            39           '            91             [
            40           (            92
            41           )            93             ]
            42           *            94             ^
            43           +            95             _
            44           ,            96             `
            45           -            97-122         a-z
            46           .            123            {
            47           /            124            |
            48-57        0-9          125            }
            58           :            126            ~
            


        ᫥⥫쭮 ஢ EBCDIC          



                                    -- 41 --



            筮                筮
            祭            祭       
            
            64           ஡       108            %
            74           (業)       109            _
            75            .           110            >
            76            <           111            ?
            77            (           122            :
            78            +           123            #
            79            |           124            @
            80            &           125            '
            90            !           126            =
            91            $           127            "
            92            *           129-137        a-i
            93            )           145-153        j-r
            94            ;           162-169        s-z
            95                       193-201        A-I
            96            -           209-217        J-R
            97            /           226-233        S-Z
            107           ,           240-249        0-9
            


          ⨯                         

 ᮧ ⠡   㪠     ⮫ ⨯ ,  
     ࠭.  SQL ᯮ ⨯ , ਢ  
᫥饩 ⠡. ᫨   ࠢ쭮  祭,  SQL 뤠 
ᮮ饭  訡  믮  ⮣  ROLLBACK.
 ᫥饬 ᯨ᪥   ⨯    ORACLE.   ᠭ   
  ⨯      । ࠧ.


                     ᠭ        
          
          CHAR(size)              ६ ; 
                              ᨬ ࠧ । 祭 size. 
                              ᮫ ᨬ 255, 㬮-  1 ᨬ.
          CHARACTER            ,   CHAR.
          VARCHAR              ,   CHAR,    ᯥ஢ 
                              size.     ORACLE   㤥 
                              । CHAR - 䨪- ஢ ,    
                              VARCHAR  - ६ .
          DATE                ࠢ     1 ﭢ 4712  
                                  襩     31   4712  
                              襩 .  稢 ଠ DD-MON-YY 
                              ('01-JAN-89').
          LONG                    ६     65535  
                              ᨬ.   ⠡  । ⮫쪮 
                               ⮫ ⠪ ⨯.
          LONG VARCHAR         ,   LONG.
          RAW(size)           ࠡ⠭    size 
                              ⮢.  Size ᯥ஢ 易⥫쭮.  
                              ᮫ ᨬ 255 ⮢.    
                                  ⭠筮 ।⠢.
          LONG RAW            ࠡ⠭     ⠫쭮  
                              宦  LONG.           
                              ⭠筮  ।⠢.

                                    -- 42 --



          ROWID               祭, ஥    㭨쭮  
                              ப  ⠡- .  ⨯  롨ࠥ  
                               ᥢ⮫ ROWID      
                              ८ࠧ   ⨯ CHAR       㭪樨 
                              ROWIDTOCHAR.    ᠬ ᮧ    
                              ⠡  ⮫ ⠪ ⨯.


           ᫮ ⨯                        

᫨  ᯥ஢        ...     

                                筮    ⠡
     NUMBER              NUMBER    38          null
     NUMBER(*)           NUMBER    38          null
     NUMBER(*,s)         NUMBER    38          s
     NUMBER(p)           NUMBER    p           0
     NUMBER(p,s)         NUMBER    p           s

     DECIMAL             NUMBER    38          0
     DECIMAL(*)          NUMBER    38          0
     DECIMAL(*,s)        NUMBER    38          s
     DECIMAL(p)          NUMBER    p           0
     DECIMAL(p,s)        NUMBER    p           s

     INTEGER             NUMBER    38          0
     SMALLINT            NUMBER    38          0

     FLOAT               NUMBER    38          null
     FLOAT(*)            NUMBER    38          null
     FLOAT(b)            NUMBER    b           null
     REAL                NUMBER    63          null
                                   binary (18 decimal)

     DOUBLE PRECISION    NUMBER    38          null


 "p" (筠 筮)  1  38.   "s" (⠡)  -84 
 127.  "b" (筠 筮)  1  126.

DEC   NUMERIC  ᨭ  DECIMAL,   INT -  INTEGER.

⠡ null ࠧ㬥  ,  -null - 䨪஢ .

  ᠭ ⢨ 筮  ⠡   ࠧ 
  "  NUMBER".


         祭 Null                                 

᫨  । ⮫ ப  ,    
祭 null. ⮫  묨  ⨯  ᮤঠ 祭 null,  
᫨ ⮫쪮   ᯥ樠쭮   ᠭ  NOT NULL   ᮧ.

祭 null  ᫥騬 ᢮⢠:
* ᢠ,  ⢨⥫쭮 祭 ⭮  ᫥



                                    -- 43 --



*  ⭮ 祭 
* 㤥 ॢ  null  ࠦ.  ਬ NULL 㬭  10 
   NULL.

 ६ ८ࠧ null  ⢨⥫쭮 祭 ᯮ 
㭪 NVL. ਬ NVL(COMM,0) 頥 0, ᫨ 祭   ⮫ COMM 
- null  ⢨⥫쭮 祭, ᫨   null.

設⢮ 㯯 㭪権  祭 null. ਬ  ,  
騩 ।   祭:  1000, NULL, NULL, NULL, 2000  
1500, ⠪  (1000+2000)/2 =1500.

   祭ﬨ null  ࠡ ⮫쪮 樨 ࠢ (IS 
NULL  IS NOT NULL).  ᫨  祭 null ᯮ   㣮 
,  १ ᥣ .    NULL ।⠢ ᮡ 
⢨ ,     ࠢ   ࠢ  㣮 
祭, ஬ null.

ORACLE ࠪ ᫮, ਢ騥  ⭮ १  FALSE.  
ਬ, ᫨ ᫮ COMM = NULL ᥣ ⭮,  SELECT  ⨬ 
᫮  ࠧ  WHERE  㤥    ப.  ,   
⠪ 樨 ORACLE  頥 ᮮ饭  訡.

 ⠡ 뢠 १ ࠢ   祭 null:

᫨  ࠢ:         ࠢ              

10                    A IS NULL             FALSE
10                    A IS NOT NULL         TRUE
NULL                  A IS NULL             TRUE
NULL                  A IS NOT NULL         FALSE
10                    A =NULL               
10                    A !=NULL              
NULL                  A =NULL               
NULL                  A !=NULL              


        ᥢ⮫                                 

ᥢ⮫  ᥡ 筮 ⮫栬 ⠡,  ॠ쭮  ⠡  
࠭.    ६        ᥢ⮫栬,  
᫥    , 㤠  .

 ᫥饩 ⠡ ਢ ᠭ ᥢ⮫殢:

 ᥢ⮫          頥 祭   
 
 sequence_name. 頥 ⥪饥    祭
 CURRVAL        㪠 ᫥⥫쭮.    ᯥ஢ 
                sequence_name.
 sequence_name. 頥  ᫥饥 祭
 NEXTVAL        㪠 ᫥⥫쭮.    ᯥ஢ 
                sequence_name.
                  ᠭ ᫥⥫쭮⥩    
                CREATE SEQUENCE   5  㪮⢠ ("ࠢ-  
                 SQL - ࠬ").
 ROWID          頥 ROWID    ப.   ଠ樥  ROWID 
                    ࠧ "  ROWID".

                                    -- 44 --



 ROWNUM         頥 ᫥⥫  뤠 ப  ⠡ 
                 ꥤ ப. ࢠ ࠭ ப  ROWNUM 
                =1,  2  .. ROWNUM   ࠧ  
                ࠭祭  ᫠  ப, 頥 ᮬ (ਬ - 
                WHERE ROWNUM < 10).    ⠪ ᯮ짮  
                祭 㭨쭮 祭  ப ⠡ (UPDATE 
                table SET column =ROWNUM) ROWNUM  砥,  ப 
                頥     冷, 砥 ࠧ ORDER 
                BY (..   砥  㯮冷祭).

                ,  ࠧ WHERE ROWNUM >  ⥫쭮 ᫠  
                -   ୥ ப.  砥, ⮬  ROWNUM 
                砥  浪  뤠 ப.  
                ਬ, ࢮ 뤠 ப  砥 ROWNUM = 1,  
                ᫮  WHERE ROWNUM > 1  FALSE  ப  ᢥ稢.
                  ࠭ ப  ⠪ ROWNUM  = 1  ⮦ 
                 뤠 , ᫥⥫쭮,  뤠   ப.

 LEVEL       ᯮ   ࠧ CONNECT BY  SELECT; 頥 1 
              ୥ 㧫, 2    ॡ   ..  ୥ 㧥 
             ।  訩 㧥  ஢ ॢ.  Child 
             (ॡ) -   ୥ 㧥.  Parent (த⥫) -  
             ப,   child. Leaf () -  ப,   
             child. ਬ ஢ ॢ ਢ  .  3-2,  
             砭    ᯮ짮 ࠧ LEVEL    6 ⮣ 
             㪮⢠    ࠧ "ࠧ CONNECT BY  START WITH".

                           Ŀ
                            root/                           Level  I
                 Ĵ parent    Ŀ
                                   
          Ŀ                      Ŀ
           parent/                           parent/  
            child                             child              II
                                
  Ŀ Ŀ         Ŀ  Ŀ
    child/      parent/             child/       parent/  
     leaf        child   Ŀ       leaf          child      III
             
                                                         
             Ŀ Ŀ             Ŀ
                child/     child/                  child/   
                leaf       leaf                    leaf        IV
                           
                     㭮 3-2 ᪮ ॢ














                                    -- 45 --
