sql the complete reference, 3rd edition - james, andy, paul

911

Upload: praveen-rai

Post on 06-Sep-2015

37 views

Category:

Documents


3 download

DESCRIPTION

sql books for database

TRANSCRIPT

  • 31,4HE#OMPLETE2EFERENCE

    4HIRD%DITION

  • This page intentionally left blank

  • 31,4HE#OMPLETE2EFERENCE

    4HIRD%DITION0AUL7EINBERG*AMES'ROFF

    !NDREW/PPEL

    .EW9ORK#HICAGO3AN&RANCISCO,ISBON,ONDON-ADRID-EXICO#ITY

    -ILAN.EW$ELHI3AN*UAN3EOUL3INGAPORE3YDNEY4ORONTO

  • Copyright 2010 by The McGraw-Hill Companies. All rights reserved. Except as permitted under the United States Copyright Act of 1976,no part of this publication may be reproduced or distributed in any form or by any means, or stored in a database or retrieval system, withoutthe prior written permission of the publisher.

    ISBN: 978-0-07-159256-7

    MHID: 0-07-159256-3

    The material in this eBook also appears in the print version of this title: ISBN: 978-0-07-159255-0, MHID: 0-07-159255-5.

    All trademarks are trademarks of their respective owners. Rather than put a trademark symbol after every occurrence of a trademarked name,we use names in an editorial fashion only, and to the benefit of the trademark owner, with no intention of infringement of the trademark. Wheresuch designations appear in this book, they have been printed with initial caps.

    McGraw-Hill eBooks are available at special quantity discounts to use as premiums and sales promotions, or for use in corporate training pro-grams. To contact a representative please e-mail us at [email protected].

    Information has been obtained by McGraw-Hill from sources believed to be reliable. However, because of the possibility of human or mechan-ical error by our sources, McGraw-Hill, or others, McGraw-Hill does not guarantee the accuracy, adequacy, or completeness of any informa-tion and is not responsible for any errors or omissions or the results obtained from the use of such information.

    TERMS OF USE

    This is a copyrighted work and The McGraw-Hill Companies, Inc. (McGraw-Hill) and its licensors reserve all rights in and to the work. Useof this work is subject to these terms. Except as permitted under the Copyright Act of 1976 and the right to store and retrieve one copy of thework, you may not decompile, disassemble, reverse engineer, reproduce, modify, create derivative works based upon, transmit, distribute, dis-seminate, sell, publish or sublicense the work or any part of it without McGraw-Hills prior consent. You may use the work for your own non-commercial and personal use; any other use of the work is strictly prohibited. Your right to use the work may be terminated if you fail to com-ply with these terms.

    THE WORK IS PROVIDED AS IS. McGRAW-HILL AND ITS LICENSORS MAKE NO GUARANTEES OR WARRANTIES AS TO THEACCURACY, ADEQUACY OR COMPLETENESS OF OR RESULTS TO BE OBTAINED FROM USING THE WORK, INCLUDING ANY INFORMATION THAT CAN BE ACCESSED THROUGH THE WORK VIA HYPERLINK OR OTHERWISE, AND EXPRESSLY DIS-CLAIM ANY WARRANTY, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO IMPLIED WARRANTIES OF MER-CHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. McGraw-Hill and its licensors do not warrant or guarantee that the func-tions contained in the work will meet your requirements or that its operation will be uninterrupted or error free. Neither McGraw-Hill nor itslicensors shall be liable to you or anyone else for any inaccuracy, error or omission, regardless of cause, in the work or for any damages result-ing therefrom. McGraw-Hill has no responsibility for the content of any information accessed through the work. Under no circumstances shallMcGraw-Hill and/or its licensors be liable for any indirect, incidental, special, punitive, consequential or similar damages that result from theuse of or inability to use the work, even if any of them has been advised of the possibility of such damages. This limitation of liability shallapply to any claim or cause whatsoever whether such claim or cause arises in contract, tort or otherwise.

  • !BOUTTHE!UTHORS*AMES2'ROFFIS#%/OF0"WORKSWHOSEHOSTEDCOLLABORATIONSOFTWAREHELPSTEAMSOFPEOPLEWORKTOGETHERMOREEFFECTIVELYANDEFFICIENTLY%ARLIER'ROFFWAS#%/OF4IMES4ENTHELEADINGPROVIDEROFINMEMORY31,DATABASES(ELED4IMES4ENFROMITSEARLYDAYSTHROUGHEIGHTYEARSOFGROWTHANDASUCCESSFULACQUISITIONBY/RACLEINWHEREHESERVEDASASENIORVICEPRESIDENTAND/RACLE4IMES4ENBECAME/RACLESFLAGSHIPREALTIMEDATABASEPRODUCT'ROFFWASTHECOFOUNDERWITH0AUL7EINBERGOF.ETWORK)NNOVATIONS#ORPORATIONADEVELOPEROF31,BASEDNETWORKINGSOFTWAREANDCOAUTHORWITHHIMOF5NDERSTANDING5.)8!#ONCEPTUAL'UIDEASWELLASTHISBOOK'ROFFHASALSOHELDSENIORDIVISIONMANAGEMENTANDMARKETINGPOSITIONSAT!PPLE#OMPUTERAND(EWLETT0ACKARD(EHOLDSA"3IN-ATHEMATICSFROMTHE-ASSACHUSETTS)NSTITUTEOF4ECHNOLOGYANDAN-"!FROM(ARVARD5NIVERSITY0AUL.7EINBERGISASENIORVICEPRESIDENTAT3!0WHEREHERUNSCORE-$--ASTER$ATA

    -ANAGEMENTDEVELOPMENT0RIORTOWORKINGAT3!07EINBERGWASPRESIDENTOF!I)NCWHICHWASACQUIREDBY3!0INFORITSENTERPRISEWIDEPLATFORMFORPRODUCTCONTENTMANAGEMENTANDCATALOGPUBLISHING7EINBERGWASTHECOFOUNDERWITH*AMES'ROFFOF.ETWORK)NNOVATIONS#ORPORATIONAPIONEERINCLIENTSERVERDATABASEACCESSTHATWASACQUIREDBY!PPLE#OMPUTERINANDCOAUTHORWITHHIMOF5NDERSTANDING5.)8!#ONCEPTUAL'UIDEASWELLASTHISBOOK(EHASALSOHELDSOFTWAREDEVELOPMENTANDMARKETINGPOSITIONSAT"ELL,ABORATORIES(EWLETT0ACKARDAND0LEXUS#OMPUTERS)NHECOLLABORATEDON4HE3IMPLE3OLUTIONTO2UBIKS#UBETHENUMBERONEBESTSELLINGBOOKOFTHATYEARWITHOVERMILLIONCOPIESSOLD(EHOLDSA"3FROMTHE5NIVERSITYOF-ICHIGANANDAN-3FROM3TANFORD5NIVERSITYBOTHIN#OMPUTER3CIENCE!NDREW*!NDY/PPELISLEADDATAMODELERAT"LUE3HIELDOF#ALIFORNIA)NADDITIONHEHAS

    SERVEDASAPARTTIMEINSTRUCTORINDATABASETECHNOLOGYWITHTHE5NIVERSITYOF#ALIFORNIAAT"ERKELEY%XTENSIONFORMORETHANYEARS!NDYHASDESIGNEDANDIMPLEMENTEDHUNDREDSOFDATABASESFORAWIDERANGEOFAPPLICATIONSINCLUDINGHEATHCAREBANKINGINSURANCEAPPARELMANUFACTURINGTELECOMMUNICATIONSWIRELESSCOMMUNICATIONSANDHUMANRESOURCES(EISTHEAUTHOROF$ATABASES$EMYSTIFIED31,$EMYSTIFIEDAND$ATABASES!"EGINNERS'UIDEANDISCOAUTHOROF31,!"EGINNERS'UIDE(EHOLDSA"!IN#OMPUTER3CIENCEFROM4RANSYLVANIA5NIVERSITY,EXINGTON+9

    !BOUTTHE4ECHNICAL%DITOR!ARON$AVENPORTHASBEENWORKINGWITH31,BASED2$"-3TECHNOLOGIESFOROVERTENYEARS(EISCURRENTLYAPRINCIPALAT,#34ECHNOLOGIES)NCA3ACRAMENTOAND3AN&RANCISCO"AY!READATABASECONSULTINGFIRMSPECIALIZINGINPERFORMANCETUNINGAPPLICATIONDEVELOPMENTANDDATABASEARCHITECTURE0RIORTOJOINING,#3!ARONHADTENURESAT9AHOO'AP)NCAND"LUE3HIELDOF#ALIFORNIA

  • This page intentionally left blank

  • VII

    #ONTENTSATA'LANCE

    0ART) !N/VERVIEWOF31, )NTRODUCTION

    !1UICK4OUROF31,

    31,IN0ERSPECTIVE

    2ELATIONAL$ATABASES

    0ART)) 2ETRIEVING$ATA 31,"ASICS

    3IMPLE1UERIES

    -ULTITABLE1UERIES*OINS

    3UMMARY1UERIES

    3UBQUERIESAND1UERY%XPRESSIONS

    0ART))) 5PDATING$ATA $ATABASE5PDATES

    $ATA)NTEGRITY

    4RANSACTION0ROCESSING

    0ART)6 $ATABASE3TRUCTURE #REATINGA$ATABASE

    6IEWS

    31,3ECURITY

    4HE3YSTEM#ATALOG

    VII

  • VIII 3 1 , 4 H E # O M P L E T E 2 E F E R E N C E

    0ART6 0ROGRAMMINGWITH31, %MBEDDED31,

    $YNAMIC31,

    31,!0)S

    0ART6) 31,4ODAYAND4OMORROW $ATABASE0ROCESSINGAND3TORED0ROCEDURAL31,

    31,AND$ATA7AREHOUSING

    31,AND!PPLICATION3ERVERS

    31,.ETWORKINGAND$ISTRIBUTED$ATABASES

    31,AND/BJECTS

    31,AND8-,

    3PECIALTY$ATABASES

    4HE&UTUREOF31,

    0ART6)) !PPENDIXES ! 4HE3AMPLE$ATABASE

    " $"-36ENDOR0ROlLES

    # 31,3YNTAX2EFERENCE

    )NDEX

  • # O N T E N T S IX

    IX

    #ONTENTS!CKNOWLEDGMENTS XXIII)NTRODUCTION XXV

    0ART) !N/VERVIEWOF31, )NTRODUCTION

    4HE31,,ANGUAGE 4HE2OLEOF31, 31,3UCCESS&ACTORS

    6ENDOR)NDEPENDENCE 0ORTABILITY!CROSS#OMPUTER3YSTEMS /FlCIAL31,3TANDARDS %ARLY)"-#OMMITMENT -ICROSOFT3UPPORT 2ELATIONAL&OUNDATION (IGH,EVEL%NGLISH,IKE3TRUCTURE )NTERACTIVE!D(OC1UERIES 0ROGRAMMATIC$ATABASE!CCESS -ULTIPLE6IEWSOF$ATA #OMPLETE$ATABASE,ANGUAGE $YNAMIC$ATA$ElNITION #LIENT3ERVER!RCHITECTURE %NTERPRISE!PPLICATION3UPPORT %XTENSIBILITYAND/BJECT4ECHNOLOGY )NTERNET$ATABASE!CCESS *AVA)NTEGRATION*$"# /PEN3OURCE3UPPORT )NDUSTRY)NFRASTRUCTURE

    !1UICK4OUROF31, !3IMPLE$ATABASE 2ETRIEVING$ATA 3UMMARIZING$ATA !DDING$ATATOTHE$ATABASE $ELETING$ATA 5PDATINGTHE$ATABASE 0ROTECTING$ATA #REATINGA$ATABASE 3UMMARY

    IX

  • X 3 1 , 4 H E # O M P L E T E 2 E F E R E N C E

    31,IN0ERSPECTIVE 31,ANDTHE%VOLUTIONOF$ATABASE-ANAGEMENT !"RIEF(ISTORYOF31,

    4HE%ARLY9EARS %ARLY2ELATIONAL0RODUCTS )"-0RODUCTS #OMMERCIAL!CCEPTANCE

    31,3TANDARDS 4HE!.3))3/3TANDARDS /THER%ARLY31,3TANDARDS /$"#ANDTHE31,!CCESS'ROUP *$"#AND!PPLICATION3ERVERS 31,AND0ORTABILITY

    31,AND.ETWORKING #ENTRALIZED!RCHITECTURE &ILE3ERVER!RCHITECTURE #LIENT3ERVER!RCHITECTURE -ULTITIER!RCHITECTURE

    4HE0ROLIFERATIONOF31, 31,ON-AINFRAMES 31,ON-INICOMPUTERS 31,ON5.)8"ASED3YSTEMS 31,ON0ERSONAL#OMPUTERS 31,AND4RANSACTION0ROCESSING 31,AND7ORKGROUP$ATABASES 31,$ATA7AREHOUSINGAND"USINESS)NTELLIGENCE 31,AND)NTERNET!PPLICATIONS

    3UMMARY

    2ELATIONAL$ATABASES %ARLY$ATA-ODELS

    &ILE-ANAGEMENT3YSTEMS (IERARCHICAL$ATABASES .ETWORK$ATABASES

    4HE2ELATIONAL$ATA-ODEL 4HE3AMPLE$ATABASE 4ABLES 0RIMARY+EYS 2ELATIONSHIPS &OREIGN+EYS

    #ODDS2ULESFOR2ELATIONAL$ATABASES 3UMMARY

  • # O N T E N T S XI

    0ART)) 2ETRIEVING$ATA 31,"ASICS

    3TATEMENTS .AMES

    4ABLE.AMES #OLUMN.AMES

    $ATA4YPES #ONSTANTS

    .UMERIC#ONSTANTS 3TRING#ONSTANTS $ATEAND4IME#ONSTANTS 3YMBOLIC#ONSTANTS

    %XPRESSIONS "UILT)N&UNCTIONS -ISSING$ATA.5,,6ALUES 3UMMARY

    3IMPLE1UERIES 4HE3%,%#43TATEMENT

    4HE3%,%#4#LAUSE 4HE&2/-#LAUSE

    1UERY2ESULTS 3IMPLE1UERIES

    #ALCULATED#OLUMNS 3ELECTING!LL#OLUMNS3%,%#4 $UPLICATE2OWS$)34).#4 2OW3ELECTION7(%2%#LAUSE 3EARCH#ONDITIONS 4HE#OMPARISON4EST

    4HE2ANGE4EST"%47%%. 4HE3ET-EMBERSHIP4EST). 4HE0ATTERN-ATCHING4EST,)+% 4HE.ULL6ALUE4EST)3.5,, #OMPOUND3EARCH#ONDITIONS!.$/2AND./4

    3ORTING1UERY2ESULTS/2$%2"9#LAUSE 2ULESFOR3INGLE4ABLE1UERY0ROCESSING

    #OMBINING1UERY2ESULTS5.)/. 5NIONSAND$UPLICATE2OWS 5NIONSAND3ORTING -ULTIPLE5.)/.S

    3UMMARY

  • XII 3 1 , 4 H E # O M P L E T E 2 E F E R E N C E

    -ULTITABLE1UERIES*OINS !4WO4ABLE1UERY%XAMPLE 3IMPLE*OINS%QUI*OINS

    0ARENT#HILD1UERIES !N!LTERNATIVE7AYTO3PECIFY*OINS *OINSWITH2OW3ELECTION#RITERIA -ULTIPLE-ATCHING#OLUMNS .ATURAL*OINS 1UERIESWITH4HREEOR-ORE4ABLES /THER%QUI*OINS

    .ON%QUI*OINS 31,#ONSIDERATIONSFOR-ULTITABLE1UERIES

    1UALIlED#OLUMN.AMES !LL#OLUMN3ELECTIONS 3ELF*OINS 4ABLE!LIASES

    -ULTITABLE1UERY0ERFORMANCE 4HE3TRUCTUREOFA*OIN

    4ABLE-ULTIPLICATION 2ULESFOR-ULTITABLE1UERY0ROCESSING

    /UTER*OINS ,EFTAND2IGHT/UTER*OINS /LDER/UTER*OIN.OTATION

    *OINSANDTHE31,3TANDARD )NNER*OINSIN3TANDARD31, /UTER*OINSIN3TANDARD31, #ROSS*OINSIN3TANDARD31, -ULTITABLE*OINSIN3TANDARD31,

    3UMMARY

    3UMMARY1UERIES #OLUMN&UNCTIONS

    #OMPUTINGA#OLUMN4OTAL35- #OMPUTINGA#OLUMN!VERAGE!6' &INDING%XTREME6ALUES-).AND-!8 #OUNTING$ATA6ALUES#/5.4 #OLUMN&UNCTIONSINTHE3ELECT,IST .5,,6ALUESAND#OLUMN&UNCTIONS $UPLICATE2OW%LIMINATION$)34).#4

    'ROUPED1UERIES'2/50"9#LAUSE -ULTIPLE'ROUPING#OLUMNS 2ESTRICTIONSON'ROUPED1UERIES .5,,6ALUESIN'ROUPING#OLUMNS

  • # O N T E N T S XIII

    'ROUP3EARCH#ONDITIONS(!6).'#LAUSE 2ESTRICTIONSON'ROUP3EARCH#ONDITIONS .5,,6ALUESAND'ROUP3EARCH#ONDITIONS (!6).'7ITHOUT'2/50"9

    3UMMARY

    3UBQUERIESAND1UERY%XPRESSIONS 5SING3UBQUERIES

    7HAT)SA3UBQUERY 3UBQUERIESINTHE7(%2%#LAUSE /UTER2EFERENCES

    3UBQUERY3EARCH#ONDITIONS 4HE3UBQUERY#OMPARISON4EST 4HE3ET-EMBERSHIP4EST). 4HE%XISTENCE4EST%8)343 1UANTIlED4ESTS!.9AND!,,

    3UBQUERIESAND*OINS .ESTED3UBQUERIES #ORRELATED3UBQUERIES 3UBQUERIESINTHE(!6).'#LAUSE 3UBQUERY3UMMARY !DVANCED1UERIES

    3CALAR6ALUED%XPRESSIONS 2OW6ALUED%XPRESSIONS 4ABLE6ALUED%XPRESSIONS 1UERY%XPRESSIONS

    31,1UERIES!&INAL3UMMARY

    0ART))) 5PDATING$ATA $ATABASE5PDATES

    !DDING$ATATOTHE$ATABASE 4HE3INGLE2OW).3%243TATEMENT 4HE-ULTIROW).3%243TATEMENT "ULK,OAD5TILITIES

    $ELETING$ATAFROMTHE$ATABASE 4HE$%,%4%3TATEMENT $ELETING!LL2OWS $%,%4%WITH3UBQUERY

    -ODIFYING$ATAINTHE$ATABASE 4HE50$!4%3TATEMENT 5PDATING!LL2OWS 50$!4%WITH3UBQUERY

    3UMMARY

  • XIV 3 1 , 4 H E # O M P L E T E 2 E F E R E N C E

    $ATA)NTEGRITY 7HAT)S$ATA)NTEGRITY 2EQUIRED$ATA 3IMPLE6ALIDITY#HECKING

    #OLUMN#HECK#ONSTRAINTS $OMAINS

    %NTITY)NTEGRITY /THER5NIQUENESS#ONSTRAINTS 5NIQUENESSAND.5,,6ALUES

    2EFERENTIAL)NTEGRITY 2EFERENTIAL)NTEGRITY0ROBLEMS $ELETEAND5PDATE2ULES #ASCADED$ELETESAND5PDATES 2EFERENTIAL#YCLES &OREIGN+EYSAND.5,,6ALUES

    !DVANCED#ONSTRAINT#APABILITIES !SSERTIONS 31,#ONSTRAINT4YPES $EFERRED#ONSTRAINT#HECKING

    "USINESS2ULES 7HAT)SA4RIGGER 4RIGGERSAND2EFERENTIAL)NTEGRITY 4RIGGER!DVANTAGESAND$ISADVANTAGES 4RIGGERSANDTHE31,3TANDARD

    3UMMARY

    4RANSACTION0ROCESSING 7HAT)SA4RANSACTION 4HE!.3))3/31,4RANSACTION-ODEL

    4HE34!2442!.3!#4)/.AND3%442!.3!#4)/.3TATEMENTS 4HE3!6%0/).4AND2%,%!3%3!6%0/).43TATEMENTS 4HE#/--)4AND2/,,"!#+3TATEMENTS

    4RANSACTIONS"EHINDTHE3CENES 4RANSACTIONSAND-ULTIUSER0ROCESSING

    4HE,OST5PDATE0ROBLEM 4HE5NCOMMITTED$ATA0ROBLEM 4HE)NCONSISTENT$ATA0ROBLEM 4HE0HANTOM)NSERT0ROBLEM #ONCURRENT4RANSACTIONS

    ,OCKING ,OCKING,EVELS 3HAREDAND%XCLUSIVE,OCKS $EADLOCKS !DVANCED,OCKING4ECHNIQUES

  • # O N T E N T S XV

    6ERSIONING 6ERSIONINGIN/PERATION 6ERSIONING!DVANTAGESAND$ISADVANTAGES

    3UMMARY

    0ART)6 $ATABASE3TRUCTURE #REATINGA$ATABASE

    4HE$ATA$ElNITION,ANGUAGE #REATINGA$ATABASE 4ABLE$ElNITIONS

    #REATINGA4ABLE#2%!4%4!",% 2EMOVINGA4ABLE$2/04!",% #HANGINGA4ABLE$ElNITION!,4%24!",%

    #ONSTRAINT$ElNITIONS !SSERTIONS $OMAINS

    !LIASESAND3YNONYMS#2%!4%$2/0!,)!3 )NDEXES#2%!4%$2/0).$%8 -ANAGING/THER$ATABASE/BJECTS $ATABASE3TRUCTURE

    3INGLE$ATABASE!RCHITECTURE -ULTIDATABASE!RCHITECTURE -ULTILOCATION!RCHITECTURE $ATABASESON-ULTIPLE3ERVERS

    $ATABASE3TRUCTUREANDTHE!.3))3/3TANDARD #ATALOGS 3CHEMAS

    3UMMARY

    6IEW 7HAT)SA6IEW (OWTHE$"-3(ANDLES6IEWS !DVANTAGESOF6IEWS $ISADVANTAGESOF6IEWS

    #REATINGA6IEW#2%!4%6)%7 (ORIZONTAL6IEWS 6ERTICAL6IEWS 2OW#OLUMN3UBSET6IEWS 'ROUPED6IEWS *OINED6IEWS

    5PDATINGA6IEW 6IEW5PDATESANDTHE!.3))3/3TANDARD 6IEW5PDATESIN#OMMERCIAL31,0RODUCTS #HECKING6IEW5PDATES#(%#+/04)/.

  • XVI 3 1 , 4 H E # O M P L E T E 2 E F E R E N C E

    $ROPPINGA6IEW$2/06)%7 -ATERIALIZED6IEWS 3UMMARY

    31,3ECURITY 31,3ECURITY#ONCEPTS

    5SER)DS 3ECURITY/BJECTS 0RIVILEGES

    6IEWSAND31,3ECURITY 'RANTING0RIVILEGES'2!.4

    #OLUMN0RIVILEGES 0ASSING0RIVILEGES'2!.4/04)/.

    2EVOKING0RIVILEGES2%6/+% 2%6/+%ANDTHE'2!.4/04)/. 2%6/+%ANDTHE!.3))3/3TANDARD

    2OLE"ASED3ECURITY 3UMMARY

    4HE3YSTEM#ATALOG 7HAT)STHE3YSTEM#ATALOG

    4HE#ATALOGAND1UERY4OOLS 4HE#ATALOGANDTHE!.3))3/3TANDARD #ATALOG#ONTENTS

    4ABLE)NFORMATION #OLUMN)NFORMATION 6IEW)NFORMATION 2EMARKS 2ELATIONSHIP)NFORMATION 5SER)NFORMATION 0RIVILEGES)NFORMATION 4HE31,)NFORMATION3CHEMA /THER#ATALOG)NFORMATION 3UMMARY

    0ART6 0ROGRAMMINGWITH31, %MBEDDED31,

    0ROGRAMMATIC31,4ECHNIQUES $"-33TATEMENT0ROCESSING %MBEDDED31,#ONCEPTS $EVELOPINGAN%MBEDDED31,0ROGRAM 2UNNINGAN%MBEDDED31,0ROGRAM

  • # O N T E N T S XVII

    3IMPLE%MBEDDED31,3TATEMENTS $ECLARING4ABLES %RROR(ANDLING 5SING(OST6ARIABLES

    $ATA2ETRIEVALIN%MBEDDED31, 3INGLE2OW1UERIES -ULTIROW1UERIES

    #URSOR"ASED$ELETESAND5PDATES #URSORSAND4RANSACTION0ROCESSING 3UMMARY

    $YNAMIC31, ,IMITATIONSOF3TATIC31, $YNAMIC31,#ONCEPTS $YNAMIC3TATEMENT%XECUTION%8%#54%)--%$)!4% 4WO3TEP$YNAMIC%XECUTION

    4HE02%0!2%3TATEMENT 4HE%8%#54%3TATEMENT

    $YNAMIC1UERIES 4HE$%3#2)"%3TATEMENT 4HE$%#,!2%#523/23TATEMENT 4HE$YNAMIC/0%.3TATEMENT 4HE$YNAMIC&%4#(3TATEMENT 4HE$YNAMIC#,/3%3TATEMENT

    $YNAMIC31,$IALECTS $YNAMIC31,IN/RACLE

    $YNAMIC31,ANDTHE31,3TANDARD "ASIC$YNAMIC31,3TATEMENTS 4HE3TANDARD31,$! 4HE31,3TANDARDAND$YNAMIC31,1UERIES

    3UMMARY

    31,!0)S !0)#ONCEPTS 4HEDBLIB!0)31,3ERVER

    "ASIC31,3ERVER4ECHNIQUES 31,3ERVER1UERIES 0OSITIONED5PDATES $YNAMIC1UERIES

    /$"#ANDTHE31,#,)3TANDARD 4HE#ALL,EVEL)NTERFACE3TANDARDIZATION #,)3TRUCTURES #,)3TATEMENT0ROCESSING #,)%RRORSAND$IAGNOSTIC)NFORMATION #,)!TTRIBUTES #,))NFORMATION#ALLS

  • XVIII 3 1 , 4 H E # O M P L E T E 2 E F E R E N C E

    4HE/$"#!0) 4HE3TRUCTUREOF/$"# /$"#AND$"-3)NDEPENDENCE /$"##ATALOG&UNCTIONS %XTENDED/$"##APABILITIES

    4HE/RACLE#ALL)NTERFACE/#) /#)(ANDLES /RACLE3ERVER#ONNECTION 3TATEMENT%XECUTION 1UERY2ESULTS0ROCESSING $ESCRIPTOR(ANDLING 4RANSACTION-ANAGEMENT

    *AVA$ATABASE#ONNECTIVITY*$"# *$"#(ISTORYAND6ERSIONS *$"#)MPLEMENTATIONSAND$RIVER4YPES 4HE*$"#!0)

    3UMMARY

    0ART6) 31,4ODAYAND4OMORROW $ATABASE0ROCESSINGAND3TORED0ROCEDURAL31,

    0ROCEDURAL31,#ONCEPTS !"ASIC%XAMPLE 5SING3TORED0ROCEDURES

    #REATINGA3TORED0ROCEDURE #ALLINGA3TORED0ROCEDURE 3TORED0ROCEDURE6ARIABLES 3TATEMENT"LOCKS &UNCTIONS 2ETURNING6ALUESVIA0ARAMETERS #ONDITIONAL%XECUTION 2EPEATED%XECUTION /THER&LOWOF#ONTROL#ONSTRUCTS #URSOR"ASED2EPETITION (ANDLING%RROR#ONDITIONS

    !DVANTAGESOF3TORED0ROCEDURES 3TORED0ROCEDURE0ERFORMANCE 3YSTEM$ElNED3TORED0ROCEDURES %XTERNAL3TORED0ROCEDURES 4RIGGERS

    !DVANTAGESAND$ISADVANTAGESOF4RIGGERS 4RIGGERSIN4RANSACT31, 4RIGGERSIN)NFORMIX30, 4RIGGERSIN/RACLE0,31, /THER4RIGGER#ONSIDERATIONS

  • # O N T E N T S XIX

    3TORED0ROCEDURES&UNCTIONS4RIGGERSANDTHE31,3TANDARD 4HE31,03-3TORED0ROCEDURES3TANDARD 4HE31,03-4RIGGERS3TANDARD

    3UMMARY

    31,AND$ATA7AREHOUSING $ATA7AREHOUSING#ONCEPTS

    #OMPONENTSOFA$ATA7AREHOUSE 4HE%VOLUTIONOF$ATA7AREHOUSING

    $ATABASE!RCHITECTUREFOR7AREHOUSING &ACT#UBES 3TAR3CHEMAS -ULTILEVEL$IMENSIONS 31,%XTENSIONSFOR$ATA7AREHOUSING

    7AREHOUSE0ERFORMANCE ,OAD0ERFORMANCE 1UERY0ERFORMANCE

    3UMMARY

    31,AND!PPLICATION3ERVERS 31,AND7EB3ITES%ARLY)MPLEMENTATIONS !PPLICATION3ERVERSAND4HREE4IER7EB3ITE!RCHITECTURES $ATABASE!CCESSFROM!PPLICATION3ERVERS

    %*"4YPES 3ESSION"EAN$ATABASE!CCESS %NTITY"EAN$ATABASE!CCESS %*"%NHANCEMENTS %*"%NHANCEMENTS /PEN3OURCE!PPLICATION$EVELOPMENT

    !PPLICATION3ERVER#ACHING 3UMMARY

    31,.ETWORKINGAND$ISTRIBUTED$ATABASES 4HE#HALLENGEOF$ISTRIBUTED$ATA-ANAGEMENT $ISTRIBUTING$ATA0RACTICAL!PPROACHES

    2EMOTE$ATABASE!CCESS 2EMOTE$ATA4RANSPARENCY 4ABLE%XTRACTS 4ABLE2EPLICATION 5PDATEABLE2EPLICAS 2EPLICATION4RADE/FFS 4YPICAL2EPLICATION!RCHITECTURES

    $ISTRIBUTED$ATABASE!CCESS 2EMOTE2EQUESTS 2EMOTE4RANSACTIONS $ISTRIBUTED4RANSACTIONS $ISTRIBUTED2EQUESTS

  • XX 3 1 , 4 H E # O M P L E T E 2 E F E R E N C E

    4HE4WO0HASE#OMMIT0ROTOCOL .ETWORK!PPLICATIONSAND$ATABASE!RCHITECTURE

    #LIENT3ERVER!PPLICATIONSAND$ATABASE!RCHITECTURE #LIENT3ERVER!PPLICATIONSWITH3TORED0ROCEDURES %NTERPRISE!PPLICATIONSAND$ATA#ACHING (IGH6OLUME)NTERNET$ATA-ANAGEMENT

    3UMMARY

    31,AND/BJECTS /BJECT/RIENTED$ATABASES

    /BJECT/RIENTED$ATABASE#HARACTERISTICS 0ROSAND#ONSOF/BJECT/RIENTED$ATABASES /BJECTSANDTHE$ATABASE-ARKET

    /BJECT2ELATIONAL$ATABASES ,ARGE/BJECT3UPPORT ,/"SINTHE2ELATIONAL-ODEL 3PECIALIZED,/"0ROCESSING

    !BSTRACT3TRUCTURED$ATA4YPES $ElNING!BSTRACT$ATA4YPES -ANIPULATING!BSTRACT$ATA4YPES

    )NHERITANCE 4ABLE)NHERITANCE)MPLEMENTING/BJECT#LASSES

    3ETS!RRAYSAND#OLLECTIONS $ElNING#OLLECTIONS 1UERYING#OLLECTION$ATA -ANIPULATING#OLLECTION$ATA #OLLECTIONSAND3TORED0ROCEDURES

    5SER$ElNED$ATA4YPES -ETHODSAND3TORED0ROCEDURES /BJECT3UPPORTINTHE31,3TANDARD 3UMMARY

    31,AND8-, 7HAT)S8-, 8-,"ASICS 8-,FOR$ATA

    8-,AND31, %LEMENTSVS!TTRIBUTES

    5SING8-,WITH$ATABASES 8-,/UTPUT 8-,)NPUT 8-,$ATA%XCHANGE 8-,3TORAGEAND)NTEGRATION

  • # O N T E N T S XXI

    8-,AND-ETADATA $OCUMENT4YPE$ElNITIONS$4$S 8-,3CHEMA

    8-,AND1UERIES 81UERY#ONCEPTS 1UERY0ROCESSINGIN81UERY

    8-,$ATABASES 3UMMARY

    3PECIALTY$ATABASES 6ERY,OW,ATENCYAND)N-EMORY$ATABASES

    !NATOMYOFAN)N-EMORY$ATABASE )N-EMORY$ATABASE)MPLEMENTATIONS

    #ACHINGWITH)N-EMORY$ATABASES #OMPLEX%VENT0ROCESSINGAND3TREAM$ATABASES

    #ONTINUOUS1UERIESIN3TREAM$ATABASES 3TREAM$ATABASE)MPLEMENTATIONS 3TREAM$ATABASE#OMPONENTS

    %MBEDDED$ATABASES %MBEDDED$ATABASE#HARACTERISTICS %MBEDDED$ATABASE)MPLEMENTATIONS

    -OBILE$ATABASES -OBILE$ATABASE2OLES -OBILE$ATABASE)MPLEMENTATIONS

    3UMMARY

    4HE&UTUREOF31, $ATABASE-ARKET4RENDS

    %NTERPRISE$ATABASE-ARKET-ATURITY -ARKET$IVERSITYAND3EGMENTATION 0ACKAGED%NTERPRISE!PPLICATIONS 3OFTWAREASA3ERVICE3AA3 (ARDWARE0ERFORMANCE'AINS $ATABASE3ERVER!PPLIANCES 31,3TANDARDIZATION

    31,INTHE.EXT$ECADE $ISTRIBUTED$ATABASES -ASSIVE$ATA7AREHOUSINGFOR"USINESS/PTIMIZATION 5LTRAHIGH0ERFORMANCE$ATABASES )NTERNETAND.ETWORK3ERVICES)NTEGRATION %MBEDDED$ATABASES /BJECT)NTEGRATION #LOUD"ASEDAND(ORIZONTALLY3CALABLE$ATABASES

    3UMMARY

  • XXII 3 1 , 4 H E # O M P L E T E 2 E F E R E N C E

    0ART6)) !PPENDIXES ! 4HE3AMPLE$ATABASE

    " $"-36ENDOR0ROlLES

    # 31,3YNTAX2EFERENCE $ATA$ElNITION3TATEMENTS !CCESS#ONTROL3TATEMENTS "ASIC$ATA-ANIPULATION3TATEMENTS 4RANSACTION0ROCESSING3TATEMENTS #URSOR"ASED3TATEMENTS 1UERY%XPRESSIONS 3EARCH#ONDITIONS %XPRESSIONS 3TATEMENT%LEMENTS 3IMPLE%LEMENTS

    )NDEX

  • ) N T R O D U C T I O N XXIII

    XXIII

    !CKNOWLEDGMENTS

    3PECIALTHANKSTO!NDY/PPELOURNEWCOAUTHORFORTHISTHIRDEDITIONOF31,4HE#OMPLETE2EFERENCE(ISIMPRESSIVEHIGHLEVELMASTERYOFTHESUBJECTMATTERCOUPLEDWITHHISMETICULOUSATTENTIONTODETAILMADETHISABETTERBOOKANDWEAREFORTUNATETOHAVEHADHISINVOLVEMENT

    *IMAND0AUL

    )TSANHONORTOJOINSUCHANACCOMPLISHEDTEAMOFAUTHORSFORTHISEDITIONOF31,4HE#OMPLETE2EFERENCE-YTHANKSFORTHEEXCELLENTSUPPORTOFTHEENTIRE-C'RAW(ILLTEAMFORTHEIRTIRELESSSUPPORTINTHISEFFORT)NPARTICULAR)WISHTOTHANKTECHNICALEDITOR!ARON$AVENPORTANDCOPYEDITOR*AN*UEFORTHEIRPERSISTENCEANDATTENTIONTODETAILWHICHCONTRIBUTEDSOMUCHTOTHEOVERALLQUALITYOFTHISBOOK

    !NDY

    XXIII

  • This page intentionally left blank

  • XXV

    )NTRODUCTION

    31,4HE#OMPLETE2EFERENCE4HIRD%DITIONPROVIDESACOMPREHENSIVEINDEPTHTREATMENTOFTHE31,LANGUAGEFORBOTHTECHNICALANDNONTECHNICALUSERSPROGRAMMERSDATAPROCESSINGPROFESSIONALSANDMANAGERSWHOWANTTOUNDERSTANDTHEIMPACTOF31,INTODAYSCOMPUTERINDUSTRY4HISBOOKOFFERSACONCEPTUALFRAMEWORKFORUNDERSTANDINGANDUSING31,DESCRIBESTHEHISTORYOF31,AND31,STANDARDSANDEXPLAINSTHEROLEOF31,INVARIOUSCOMPUTERINDUSTRYSEGMENTSFROMENTERPRISEDATAPROCESSINGTODATAWAREHOUSINGTOWEBSITEARCHITECTURES4HISNEWEDITIONCONTAINSNEWCHAPTERSSPECIALLYFOCUSEDONTHEROLEOF31,INAPPLICATIONSERVERARCHITECTURESANDTHEINTEGRATIONOF31,WITH8-,ANDOTHEROBJECTBASEDTECHNOLOGIES

    4HISBOOKWILLSHOWYOUSTEPBYSTEPHOWTOUSE31,FEATURESWITHMANYILLUSTRATIONSANDREALISTICEXAMPLESTOCLARIFY31,CONCEPTS4HEBOOKALSOCOMPARES31,PRODUCTSFROMLEADING$"-3VENDORSDESCRIBINGTHEIRADVANTAGESBENEFITSANDTRADEOFFSTOHELPYOUSELECTTHERIGHTPRODUCTFORYOURAPPLICATION-OSTOFTHEEXAMPLESINTHISBOOKAREBASEDONTHESAMPLEDATABASEDESCRIBEDIN!PPENDIX!4HESAMPLEDATABASECONTAINSDATATHATSUPPORTSASIMPLEORDERPROCESSINGAPPLICATIONFORASMALLDISTRIBUTIONCOMPANY!PPENDIX!ALSOCONTAINSINSTRUCTIONSFORDOWNLOADINGTHE31,STATEMENTSREQUIREDTOCREATEANDPOPULATETHESAMPLEDATABASETABLESINA$"-3OFYOUCHOICESUCHAS/RACLE31,3ERVER-Y31,AND$"4HISALLOWSYOUTOTRYTHEEXAMPLESINTHEBOOKYOURSELFANDGAINACTUALEXPERIENCEWRITINGANDRUNNING31,STATEMENTS

    )NSOMEOFTHECHAPTERSTHESUBJECTMATTERISEXPLOREDATTWODIFFERENTLEVELSAFUNDAMENTALDESCRIPTIONOFTHETOPICANDANADVANCEDDISCUSSIONINTENDEDFORCOMPUTERPROFESSIONALSWHONEEDTOUNDERSTANDSOMEOFTHEINTERNALSBEHIND31,4HEMOREADVANCEDINFORMATIONISCOVEREDINSECTIONSMARKEDWITHANASTERISK9OUDONOTNEEDTOREADTHESESECTIONSTOOBTAINANUNDERSTANDINGOFWHAT31,ISANDWHATITDOES

    XXV

  • XXVI 3 1 , 4 H E # O M P L E T E 2 E F E R E N C E

    (OW4HIS"OOK)S/RGANIZED4HEBOOKISDIVIDEDINTOSIXPARTSTHATCOVERVARIOUSASPECTSOFTHE31,LANGUAGE

    s 0ART)h!N/VERVIEWOF31,vPROVIDESANINTRODUCTIONTO31,ANDAMARKETPERSPECTIVEOFITSROLEASADATABASELANGUAGE)TSFOURCHAPTERSDESCRIBETHEHISTORYOF31,THEEVOLUTIONOF31,STANDARDSANDHOW31,RELATESTOTHERELATIONALDATAMODELANDTOEARLIERDATABASETECHNOLOGIES0ART)ALSOCONTAINSAQUICKTOUROF31,THATBRIEFLYILLUSTRATESITSMOSTIMPORTANTFEATURESANDPROVIDESYOUWITHANOVERVIEWOFTHEENTIRELANGUAGEEARLYINTHEBOOK

    s 0ART))h2ETRIEVING$ATAvDESCRIBESTHEFEATURESOF31,THATALLOWYOUTOPERFORMDATABASEQUERIES4HEFIRSTCHAPTERINTHISPARTDESCRIBESTHEBASICSTRUCTUREOFTHE31,LANGUAGE4HENEXTFOURCHAPTERSSTARTWITHTHESIMPLEST31,QUERIESANDPROGRESSIVELYBUILDTOMORECOMPLEXQUERIESINCLUDINGMULTITABLEQUERIESSUMMARYQUERIESANDQUERIESTHATUSESUBQUERIES

    s 0ART)))h5PDATING$ATAvSHOWSHOWYOUCANUSE31,TOADDNEWDATATOADATABASEDELETEDATAFROMADATABASEANDMODIFYEXISTINGDATABASEDATA)TALSODESCRIBESTHEDATABASEINTEGRITYISSUESTHATARISEWHENDATAISUPDATEDANDHOW31,ADDRESSESTHESEISSUES4HELASTOFTHETHREECHAPTERSINTHISPARTDISCUSSESTHE31,TRANSACTIONCONCEPTAND31,SUPPORTFORMULTIUSERTRANSACTIONPROCESSING

    s 0ART)6h$ATABASE3TRUCTUREvDEALSWITHCREATINGANDADMINISTERINGA31,BASEDDATABASE)TSFOURCHAPTERSTELLYOUHOWTOCREATETHETABLESVIEWSANDINDEXESTHATFORMTHESTRUCTUREOFARELATIONALDATABASE)TALSODESCRIBESTHE31,SECURITYSCHEMETHATPREVENTSUNAUTHORIZEDACCESSTODATAANDTHE31,SYSTEMCATALOGTHATDESCRIBESTHESTRUCTUREOFADATABASE4HISPARTALSODISCUSSESTHESIGNIFICANTDIFFERENCESBETWEENTHEDATABASESTRUCTURESSUPPORTEDBYVARIOUS31,BASED$"-3PRODUCTS

    s 0ART6h0ROGRAMMINGWITH31,vDESCRIBESHOWAPPLICATIONPROGRAMSUSE31,FORDATABASEACCESS)TDISCUSSESTHEEMBEDDED31,SPECIFIEDBYTHE!.3)STANDARDANDUSEDBY)"-/RACLE)NGRES)NFORMIXANDMANYOTHER31,BASED$"-3PRODUCTS)TALSODESCRIBESTHEDYNAMIC31,INTERFACETHATISUSEDTOBUILDGENERALPURPOSEDATABASETABLESSUCHASREPORTWRITERSANDDATABASEBROWSINGPROGRAMS&INALLYTHISPARTDESCRIBESTHEPOPULAR31,!0)SINCLUDING/$"#THE)3/STANDARD#ALL,EVEL)NTERFACEAND*$"#THESTANDARDCALLLEVELINTERFACEFOR*AVAASWELLASPROPRIETARYCALLLEVELINTERFACESSUCHAS/RACLES/#)!0)

    s 0ART6)h31,4ODAYAND4OMORROWvEXAMINESTHEUSEOF31,INSEVERALOFTODAYShHOTTESTvAPPLICATIONAREASANDTHECURRENTSTATEOF31,BASED$"-3PRODUCTS4WOCHAPTERSDESCRIBETHEUSEOF31,STOREDPROCEDURESANDTRIGGERSFORONLINETRANSACTIONPROCESSINGANDTHECONTRASTINGUSEOF31,FORDATAWAREHOUSING&OURADDITIONALCHAPTERSDESCRIBE31,BASEDDISTRIBUTEDDATABASESTHEINFLUENCEOFOBJECTTECHNOLOGIESON31,SPECIALTYDATABASESANDTHEINTEGRATIONOF31,WITH8-,TECHNOLOGIES&INALLYTHELASTCHAPTEREXPLORESTHEFUTUREOF31,ANDSOMEOFTHEMOSTIMPORTANTTRENDSIN31,BASEDDATAMANAGEMENT

  • ) N T R O D U C T I O N XXVII

    #ONVENTIONS5SEDIN4HIS"OOK31,4HE#OMPLETE2EFERENCE4HIRD%DITIONDESCRIBESTHE31,FEATURESANDFUNCTIONSAVAILABLEINTHEMOSTPOPULAR31,BASED$"-3PRODUCTSANDTHOSEDESCRIBEDINTHE!.3))3/31,STANDARDS7HENEVERPOSSIBLETHE31,STATEMENTSYNTAXDESCRIBEDINTHISBOOKANDUSEDINTHEEXAMPLESAPPLIESTOALLDIALECTSOF31,7HENTHEDIALECTSDIFFERTHEDIFFERENCESAREPOINTEDOUTINTHETEXTANDTHEEXAMPLESFOLLOWTHEMOSTCOMMONPRACTICE)NTHESECASESYOUMAYHAVETOMODIFYTHE31,STATEMENTSINTHEEXAMPLESSLIGHTLYTOSUITYOURPARTICULARBRANDOF$"-3

    4HROUGHOUTTHEBOOKTECHNICALTERMSAPPEARINITALICSTHEFIRSTTIMETHEYAREUSEDANDDEFINED31,LANGUAGEELEMENTSINCLUDING31,KEYWORDSTABLEANDCOLUMNNAMESANDSAMPLE31,STATEMENTSAPPEARINAN500%2#!3%-/./30!#%FONT31,!0)FUNCTIONNAMESAPPEARINALOWERCASEMONOSPACEFONT0ROGRAMLISTINGSALSOAPPEARINMONOSPACEFONTANDUSETHENORMALCASECONVENTIONSFORTHEPARTICULARPROGRAMMINGLANGUAGEUPPERCASEFOR#/"/,AND&/242!.LOWERCASEFOR#AND*AVA.OTETHATTHESECONVENTIONSAREUSEDSOLELYTOIMPROVEREADABILITYMOST31,IMPLEMENTATIONSWILLACCEPTEITHERUPPERCASEORLOWERCASESTATEMENTS-ANYOFTHE31,EXAMPLESINCLUDEQUERYRESULTSWHICHAPPEARIMMEDIATELYFOLLOWINGTHE31,STATEMENTASTHEYWOULDINANINTERACTIVE31,SESSION)NSOMECASESLONGQUERYRESULTSARETRUNCATEDAFTERAFEWROWSTHISISINDICATEDBYAVERTICALELLIPSISxFOLLOWINGTHELASTROWOFQUERYRESULTS

    7HY4HIS"OOK)SFOR9OU31,4HE#OMPLETE2EFERENCE4HIRD%DITIONISTHERIGHTBOOKFORANYONEWHOWANTSTOUNDERSTANDANDLEARN31,INCLUDINGDATABASEUSERSDATAPROCESSINGPROFESSIONALSANDARCHITECTSPROGRAMMERSSTUDENTSANDMANAGERS)TDESCRIBESINSIMPLEUNDERSTANDABLELANGUAGELIBERALLYILLUSTRATEDWITHFIGURESANDEXAMPLESWHAT31,ISWHYITISIMPORTANTANDHOWYOUUSEIT4HISBOOKISNOTSPECIFICTOONEPARTICULARBRANDORDIALECTOF31,2ATHERITDESCRIBESTHESTANDARDCENTRALCOREOFTHE31,LANGUAGEANDTHENGOESONTODESCRIBETHEDIFFERENCESAMONGTHEMOSTPOPULAR31,PRODUCTSINCLUDING/RACLE-ICROSOFT31,3ERVER)"-S$"5NIVERSAL$ATABASEAND)NFORMIX3YBASEAND-Y31,)TALSOEXPLAINSTHEIMPORTANCEOF31,BASEDSTANDARDSSUCHAS/$"#AND*$"#ANDTHE!.3))3/STANDARDSFOR31,AND31,RELATEDTECHNOLOGIES4HISTHIRDEDITIONCONTAINSNEWCHAPTERSANDSECTIONSTHATCOVERTHELATEST31,INNOVATIONSINTHEAREASOFOBJECTRELATIONALTECHNOLOGIES8-,ANDAPPLICATIONSERVERARCHITECTURES

    )FYOUARENEWTO31,THISBOOKOFFERSCOMPREHENSIVESTEPBYSTEPTREATMENTOFTHELANGUAGEBUILDINGFROMSIMPLEQUERIESTOMOREADVANCEDCONCEPTS4HESTRUCTUREOFTHEBOOKWILLALLOWYOUTOQUICKLYSTARTUSING31,BUTTHEBOOKWILLCONTINUETOBEVALUABLEASYOUBEGINTOUSETHEMORECOMPLEXFEATURESOFTHELANGUAGE9OUCANCREATETHESAMPLEDATABASEUSINGAN31,SCRIPTAVAILABLEONTHE-C'RAW(ILLWEBSITESEE!PPENDIX!ANDUSEITTOTRYOUTTHEEXAMPLESANDBUILDYOUR31,SKILLS

    )FYOUAREADATAPROCESSINGPROFESSIONALARCHITECTORMANAGERTHISBOOKWILLGIVEYOUAPERSPECTIVEONTHEIMPACTTHAT31,ISHAVINGACROSSTHEINFORMATIONTECHNOLOGYINDUSTRYFROMPERSONALCOMPUTERSTOMAINFRAMESTODATAWAREHOUSINGTO)NTERNETWEBSITESAND)NTERNETBASEDDISTRIBUTEDAPPLICATIONS4HEEARLYCHAPTERSDESCRIBETHEHISTORYOF31,ITSROLEINTHEMARKETANDITSEVOLUTIONFROMEARLIERDATABASETECHNOLOGIES,ATERCHAPTERSDESCRIBETHEFUTUREOF31,ANDTHEDEVELOPMENTOFNEWDATABASETECHNOLOGIESSUCHASDISTRIBUTEDDATABASESOBJECTORIENTEDEXTENSIONSTO31,BUSINESSINTELLIGENCEDATABASESANDDATABASE8-,INTEGRATION

  • XXVIII 3 1 , 4 H E # O M P L E T E 2 E F E R E N C E

    )FYOUAREAPROGRAMMERTHISBOOKOFFERSAVERYCOMPLETETREATMENTOFPROGRAMMINGWITH31,5NLIKETHEREFERENCEMANUALSOFMANY$"-3PRODUCTSITOFFERSACONCEPTUALFRAMEWORKFOR31,PROGRAMMINGEXPLAININGTHEWHYASWELLASTHEHOWOFDEVELOPINGA31,BASEDAPPLICATION)TCONTRASTSTHE31,PROGRAMMINGINTERFACESOFFEREDBYALLOFTHELEADING31,PRODUCTSINCLUDINGEMBEDDED31,DYNAMIC31,/$"#*$"#ANDPROPRIETARY!0)SSUCHASTHE/RACLE#ALL)NTERFACE4HEDESCRIPTIONANDCOMPARISONOFPROGRAMMINGTECHNIQUESPROVIDESAPERSPECTIVENOTFOUNDINANYOTHERBOOK

    )FYOUARESELECTINGA$"-3PRODUCTTHISBOOKOFFERSACOMPARISONOFTHE31,FEATURESADVANTAGESANDBENEFITSOFFEREDBYTHEVARIOUS$"-3VENDORS4HEDIFFERENCESBETWEENTHELEADING$"-3PRODUCTSAREEXPLAINEDNOTONLYINTECHNICALTERMSBUTALSOINTERMSOFTHEIRIMPACTONAPPLICATIONSANDTHEIREVOLVINGCOMPETITIVEPOSITIONINTHEMARKETPLACE4HEhSAMPLEDATABASEvCANBEUSEDTOTRYTHESEFEATURESINAPROTOTYPEOFYOUROWNAPPLICATION

    )NSHORTBOTHTECHNICALANDNONTECHNICALUSERSCANBENEFITFROMTHISBOOK)TISTHEMOSTCOMPREHENSIVESOURCEOFINFORMATIONAVAILABLEABOUTTHE31,LANGUAGE31,FEATURESANDBENEFITSPOPULAR31,BASEDPRODUCTSTHEHISTORYOF31,ANDTHEIMPACTOF31,ONTHEFUTUREDIRECTIONOFTHEINFORMATIONTECHNOLOGYINDUSTRY

  • *!N/VERVIEWOF31,

    4HEFIRSTFOURCHAPTERSOFTHISBOOKPROVIDEAPERSPECTIVEANDAQUICKINTRODUCTIONTO31,#HAPTERDESCRIBESWHAT31,ISANDEXPLAINSITSMAJORFEATURESANDBENEFITS)N#HAPTERAQUICKTOUROF31,SHOWSYOUMANYOFITSCAPABILITIESWITHSIMPLERAPIDFIREEXAMPLES#HAPTEROFFERSAMARKETPERSPECTIVEOF31,BYTRACINGITSHISTORYDESCRIBINGTHE31,STANDARDSANDTHEMAJORVENDORSOF31,BASEDPRODUCTSANDBYIDENTIFYINGTHEREASONSFOR31,SPROMINENCETODAY#HAPTERDESCRIBESTHERELATIONALDATAMODELUPONWHICH31,ISBASEDANDCOMPARESITWITHEARLIERDATAMODELS

    #(!04%2)NTRODUCTION$)"15&3!1UICK4OUROF31,$)"15&331,IN0ERSPECTIVE$)"15&32ELATIONAL$ATABASES

    0!24

  • This page intentionally left blank

  • )NTRODUCTION

    4HE31,LANGUAGEANDRELATIONALDATABASESYSTEMSBASEDONITCONSTITUTEONEOFTHEMOSTIMPORTANTFOUNDATIONTECHNOLOGIESINTHECOMPUTERINDUSTRY/VERTHELASTTHREEDECADES31,HASGROWNFROMITSFIRSTCOMMERCIALUSEINTOACOMPUTERPRODUCTANDSERVICESMARKETSEGMENTWORTHTENSOFBILLIONSOFDOLLARSPERYEARAND31,STANDSTODAYASTHESTANDARDCOMPUTERDATABASELANGUAGE(UNDREDSOFDATABASEPRODUCTSNOWSUPPORT31,RUNNINGONCOMPUTERSYSTEMSFROMMAINFRAMESTOPERSONALCOMPUTERS!31,BASEDDATABASEMAYEVENBEEMBEDDEDINYOURMOBILEPHONEOR0$!ORINTHEENTERTAINMENTSYSTEMOFYOURCAR!NOFFICIALINTERNATIONAL31,STANDARDHASBEENADOPTEDANDEXPANDEDSEVERALTIMES%VERYMAJORENTERPRISESOFTWAREPRODUCTRELIESON31,FORITSDATAMANAGEMENTAND31,ISATTHECOREOFTHEFLAGSHIPDATABASEPRODUCTSFROM-ICROSOFT/RACLEAND)"-THREEOFTHELARGESTSOFTWARECOMPANIESINTHEWORLD31,ISALSOATTHEHEARTOFOPENSOURCEDATABASEPRODUCTSSUCHAS-Y31,AND0OSTGRESTHATAREHELPINGTOFUELTHEPOPULARITYOF,INUXANDTHEOPENSOURCEMOVEMENT&ROMITSOBSCUREBEGINNINGSASAN)"-RESEARCHPROJECT31,HASGROWNTOBECOMEBOTHANIMPORTANTPIECEOFINFORMATIONTECHNOLOGYANDAPOWERFULMARKETFORCE

    7HATEXACTLYIS31,7HYISITIMPORTANT7HATCANITDOANDHOWDOESITWORK)F31,ISREALLYASTANDARDWHYDOWEHAVESOMANYDIFFERENTVERSIONSANDDIALECTS(OWDOPOPULAR31,PRODUCTSLIKE31,3ERVER/RACLE-Y31,3YBASEAND$"COMPARE(OWDOES31,RELATETO-ICROSOFTSTANDARDSSUCHAS/$"#AND.%4(OWDOES*$"#LINK31,TOTHEWORLDOF*AVAANDOBJECTTECHNOLOGY7HATROLEDOESITPLAYINTHE3ERVICE/RIENTED!RCHITECTURE3/!ANDWEBSERVICESBEINGEMBRACEDBYENTERPRISE)4ORGANIZATIONS$OES31,REALLYSCALEFROMMAINFRAMESTOHANDHELDDEVICES(ASITREALLYDELIVEREDTHEPERFORMANCENEEDEDFORHIGHVOLUMETRANSACTIONPROCESSING(OWWILL31,IMPACTTHEWAYYOUUSECOMPUTERSANDHOWCANYOUGETTHEMOSTOUTOFTHISIMPORTANTDATAMANAGEMENTTOOL4HISBOOKANSWERSTHOSEQUESTIONSBYGIVINGYOUACOMPLETEPERSPECTIVEANDASOLIDWORKINGKNOWLEDGEOF31,

    #(!04%2

  • 0 A R T ) ! N / V E R V I E W O F 3 1 ,

    4HE31,,ANGUAGE31,ISATOOLFORORGANIZINGMANAGINGANDRETRIEVINGDATASTOREDBYACOMPUTERDATABASE4HEORIGINALNAMEGIVENITBY)"-WAS3TRUCTURED%NGLISH1UERY,ANGUAGESHORTENEDTOTHEACRONYM3%15%,7HEN)"-DISCOVEREDTHAT3%15%,WASATRADEMARKOWNEDBYTHE(AWKER3IDDELEY!IRCRAFT#OMPANYOFTHE5NITED+INGDOMTHEYSHORTENEDTHEACRONYMTO31,4HEWORDh%NGLISHvWASTHENDROPPEDFROMTHESPELLEDOUTNAMETOMATCHTHENEWACRONYM4OTHISDAYYOUWILLHEARTHEACRONYM31,PRONOUNCEDASEITHERAWORDhSEQUELvORASASTRINGOFLETTERSh31,vANDWHILETHELATTERISGENERALLYPREFERREDBOTHARECONSIDEREDCORRECT!STHENAMEIMPLIES31,ISACOMPUTERLANGUAGETHATYOUUSETOINTERACTWITHADATABASE)NFACT31,WORKSWITHONESPECIFICTYPEOFDATABASECALLEDARELATIONALDATABASEWHICHHASBECOMETHEMAINSTREAMWAYTOORGANIZEDATAACROSSAVERYBROADRANGEOFCOMPUTERAPPLICATIONS

    &IGURESHOWSHOW31,WORKS4HECOMPUTERSYSTEMINTHEFIGUREHASADATABASETHATSTORESIMPORTANTINFORMATION)FTHECOMPUTERSYSTEMISINABUSINESSTHEDATABASEMIGHTSTOREINVENTORYPRODUCTIONSALESORPAYROLLDATA/NAPERSONALCOMPUTERTHEDATABASEMIGHTSTOREDATAABOUTTHECHECKSYOUHAVEWRITTENLISTSOFPEOPLEANDTHEIRPHONENUMBERSORDATAEXTRACTEDFROMALARGERCOMPUTERSYSTEM4HECOMPUTERPROGRAMTHATCONTROLSTHEDATABASEISCALLEDADATABASEMANAGEMENTSYSTEM$"-3

    7HENYOUNEEDTORETRIEVEDATAFROMADATABASEYOUUSETHE31,TOMAKETHEREQUEST4HE$"-3PROCESSESTHE31,REQUESTRETRIEVESTHEREQUESTEDDATAANDRETURNSITTOYOU4HISPROCESSOFREQUESTINGDATAFROMADATABASEANDRECEIVINGTHERESULTSISCALLEDADATABASEQUERYHENCETHENAME3TRUCTURED1UERY,ANGUAGE

    h3TRUCTURED1UERY,ANGUAGEvISACTUALLYSOMEWHATOFAMISNOMER&IRSTOFALL31,ISFARMORETHANAQUERYTOOLALTHOUGHTHATWASITSORIGINALPURPOSEANDRETRIEVINGDATAISSTILLONEOFITSMOSTIMPORTANTFUNCTIONS31,ISUSEDTOCONTROLALLOFTHEFUNCTIONSTHATA$"-3PROVIDESFORITSUSERSINCLUDING

    1, 1}-+v`>>L>i>VVi

  • # H A P T E R ) N T R O D U C T I O N

    0!24)

    s $ATADEFINITION 31,LETSAUSERDEFINETHESTRUCTUREANDORGANIZATIONOFTHESTOREDDATAANDRELATIONSHIPSAMONGTHESTOREDDATAITEMS

    s $ATARETRIEVAL 31,ALLOWSAUSERORANAPPLICATIONPROGRAMTORETRIEVESTOREDDATAFROMTHEDATABASEANDUSEIT

    s $ATAMANIPULATION 31,ALLOWSAUSERORANAPPLICATIONPROGRAMTOUPDATETHEDATABASEBYADDINGNEWDATAREMOVINGOLDDATAANDMODIFYINGPREVIOUSLYSTOREDDATA

    s !CCESSCONTROL 31,CANBEUSEDTORESTRICTAUSERSABILITYTORETRIEVEADDANDMODIFYDATAPROTECTINGSTOREDDATAAGAINSTUNAUTHORIZEDACCESS

    s $ATASHARING 31,ISUSEDTOCOORDINATEDATASHARINGBYCONCURRENTUSERSENSURINGTHATCHANGESMADEBYONEUSERDONOTINADVERTENTLYWIPEOUTCHANGESMADEATNEARLYTHESAMETIMEBYANOTHERUSER

    s $ATAINTEGRITY 31,DEFINESINTEGRITYCONSTRAINTSINTHEDATABASEPROTECTINGITFROMCORRUPTIONDUETOINCONSISTENTUPDATESORSYSTEMFAILURES

    31,ISTHUSACOMPREHENSIVELANGUAGEFORCONTROLLINGANDINTERACTINGWITHADATABASEMANAGEMENTSYSTEM

    3ECOND31,ISNOTREALLYACOMPLETECOMPUTERLANGUAGELIKE#/"/,##OR*AVA)NSTEAD31,ISADATABASESUBLANGUAGECONSISTINGOFABOUTSTATEMENTSSPECIALIZEDFORDATABASEMANAGEMENTTASKS4HESE31,STATEMENTSCANBEEMBEDDEDINTOANOTHERLANGUAGESUCHAS#/"/,OR#TOEXTENDTHATLANGUAGEFORUSEINDATABASEACCESS!LTERNATIVELYTHESTATEMENTSCANBEEXPLICITLYSENTTOADATABASEMANAGEMENTSYSTEMFORPROCESSINGVIAACALLLEVELINTERFACEFROMALANGUAGESUCHAS##OR*AVAORVIAMESSAGESSENTOVERACOMPUTERNETWORK

    31,ALSODIFFERSFROMOTHERCOMPUTERLANGUAGESBECAUSEITDESCRIBESWHATTHEUSERWANTSTHECOMPUTERTODORATHERTHANHOWTHECOMPUTERSHOULDDOIT)NMORETECHNICALTERMS31,ISADECLARATIVEORDESCRIPTIVELANGUAGERATHERTHANAPROCEDURALONE31,CONTAINSNO)&STATEMENTFORTESTINGCONDITIONSANDNO'/4/$/OR&/2STATEMENTSFORPROGRAMFLOWCONTROL2ATHER31,STATEMENTSDESCRIBEHOWACOLLECTIONOFDATAISTOBEORGANIZEDORWHATDATAISTOBERETRIEVEDORADDEDTOTHEDATABASE4HESEQUENCEOFSTEPSTODOTHOSETASKSISLEFTFORTHE$"-3TODETERMINE

    &INALLY31,ISNOTAPARTICULARLYSTRUCTUREDLANGUAGEESPECIALLYWHENCOMPAREDWITHHIGHLYSTRUCTUREDLANGUAGESSUCHAS#0ASCALOR*AVA)NSTEAD31,STATEMENTSRESEMBLE%NGLISHSENTENCESCOMPLETEWITHhNOISEWORDSvTHATDONTADDTOTHEMEANINGOFTHESTATEMENTBUTMAKEITREADMORENATURALLY4HE31,HASQUITEAFEWINCONSISTENCIESANDALSOSOMESPECIALRULESTOPREVENTYOUFROMCONSTRUCTING31,STATEMENTSTHATLOOKPERFECTLYLEGALBUTTHATDONTMAKESENSE

    $ESPITETHEINACCURACYOFITSNAME31,HASEMERGEDASTHESTANDARDLANGUAGEFORUSINGRELATIONALDATABASES31,ISBOTHAPOWERFULLANGUAGEANDONETHATISRELATIVELYEASYTOLEARN4HEQUICKTOUROF31,IN#HAPTERWILLGIVEYOUAGOODOVERVIEWOFTHELANGUAGEANDITSCAPABILITIES

  • 0 A R T ) ! N / V E R V I E W O F 3 1 ,

    4HE2OLEOF31,31,ISNOTITSELFADATABASEMANAGEMENTSYSTEMNORISITASTANDALONEPRODUCT9OUCANNOTGOTOACOMPUTERRETAILERORAWEBSITESELLINGCOMPUTERSOFTWAREANDBUY31,)NSTEAD31,ISANINTEGRALPARTOFADATABASEMANAGEMENTSYSTEMALANGUAGEANDATOOLFORCOMMUNICATINGWITHTHE$"-3&IGURESHOWSSOMEOFTHECOMPONENTSOFATYPICAL$"-3ANDHOW31,LINKSTHEMTOGETHER

    4HEDATABASEENGINEISTHEHEARTOFTHE$"-3RESPONSIBLEFORACTUALLYSTRUCTURINGSTORINGANDRETRIEVINGTHEDATAINTHEDATABASE)TACCEPTS31,REQUESTSFROMOTHER$"-3COMPONENTSSUCHASAFORMSFACILITYREPORTWRITERORINTERACTIVEQUERYFACILITYFROMUSERWRITTENAPPLICATIONPROGRAMSANDEVENFROMOTHERCOMPUTERSYSTEMS!STHEFIGURESHOWS31,PLAYSMANYDIFFERENTROLES

    s 31,ISANINTERACTIVEQUERYLANGUAGE5SERSTYPE31,COMMANDSINTOANINTERACTIVE31,PROGRAMTORETRIEVEDATAANDDISPLAYITONTHESCREENPROVIDINGACONVENIENTEASYTOUSETOOLFORADHOCDATABASEQUERIES

    s 31,ISADATABASEPROGRAMMINGLANGUAGE0ROGRAMMERSEMBED31,COMMANDSINTOTHEIRAPPLICATIONPROGRAMSTOACCESSTHEDATAINADATABASE"OTHUSERWRITTENPROGRAMSANDDATABASEUTILITYPROGRAMSSUCHASREPORTWRITERSANDDATAENTRYTOOLSUSETHISTECHNIQUEFORDATABASEACCESS

    1, iv>V>`>>L>i>>}iii

  • # H A P T E R ) N T R O D U C T I O N

    0!24)

    s 31,ISADATABASEADMINISTRATIONLANGUAGE4HEDATABASEADMINISTRATORRESPONSIBLEFORMANAGINGAMINICOMPUTERORMAINFRAMEDATABASEUSES31,TODEFINETHEDATABASESTRUCTUREANDTOCONTROLACCESSTOTHESTOREDDATA

    s 31,ISACLIENTSERVERLANGUAGE0ERSONALCOMPUTERPROGRAMSUSE31,TOCOMMUNICATEOVERANETWORKWITHDATABASESERVERSTHATSTORESHAREDDATA4HISCLIENTSERVERARCHITECTUREISUSEDBYMANYPOPULARENTERPRISECLASSAPPLICATIONS

    s 31,ISAN)NTERNETDATAACCESSLANGUAGE)NTERNETWEBSERVERSTHATINTERACTWITHCORPORATEDATAAND)NTERNETAPPLICATIONSERVERSALLUSE31,ASASTANDARDLANGUAGEFORACCESSINGCORPORATEDATABASESOFTENBYEMBEDDING31,DATABASEACCESSWITHINPOPULARSCRIPTINGLANGUAGESLIKE0(0OR0ERL

    s 31,ISADISTRIBUTEDDATABASELANGUAGE$ISTRIBUTEDDATABASEMANAGEMENTSYSTEMSUSE31,TOHELPDISTRIBUTEDATAACROSSMANYCONNECTEDCOMPUTERSYSTEMS4HE$"-3SOFTWAREONEACHSYSTEMUSES31,TOCOMMUNICATEWITHTHEOTHERSYSTEMSSENDINGREQUESTSFORDATAACCESS

    s 31,ISADATABASEGATEWAYLANGUAGE)NACOMPUTERNETWORKWITHAMIXOFDIFFERENT$"-3PRODUCTS31,ISOFTENUSEDINAGATEWAYTHATALLOWSONEBRANDOF$"-3TOCOMMUNICATEWITHANOTHERBRAND

    31,HASTHUSEMERGEDASAUSEFULPOWERFULTOOLFORLINKINGPEOPLECOMPUTERPROGRAMSANDCOMPUTERSYSTEMSTOTHEDATASTOREDINARELATIONALDATABASE

    31,3UCCESS&ACTORS)NHISTORICALTERMS31,HASBEENANEXTRAORDINARILYSUCCESSFULINFORMATIONTECHNOLOGY4HINKABOUTTHECOMPUTERMARKETINTHEMIDSWHEN31,FIRSTSTARTEDTOBECOMEIMPORTANT-AINFRAMESANDMINICOMPUTERSDOMINATEDCORPORATECOMPUTING4HE)"-PERSONALCOMPUTERHADBEENINTRODUCEDONLYAFEWYEARSBEFOREANDTHE-3$/3COMMANDLINEWASITSUSERINTERFACE)"-SMAINFRAMEOPERATINGSYSTEMSANDMINICOMPUTEROPERATINGSYSTEMSFROM$IGITAL%QUIPMENT$ATA'ENERAL(EWLETT0ACKARDANDOTHERSDOMINATEDBUSINESSCOMPUTING0ROPRIETARYNETWORKINGSCHEMESLIKE)"-S3.!OR$IGITAL%QUIPMENTS$%#NETLINKEDCOMPUTERSTOGETHER4HE)NTERNETWASSTILLATOOLFORCOLLABORATIONAMONGRESEARCHLABSANDTHE7ORLD7IDE7EBHADNOTYETAPPEAREDONTHESCENE#/"/,#AND0ASCALWEREDOMINANTCOMPUTERLANGUAGESOBJECTORIENTEDPROGRAMMINGWASONLYBEGINNINGTOEMERGEAND*AVAHADNOTBEENINVENTED

    !CROSSALLOFTHESEAREASOFCOMPUTERTECHNOLOGYFROMCOMPUTERHARDWARETOOPERATINGSYSTEMSTONETWORKINGTOLANGUAGESTHEIMPORTANTKEYTECHNOLOGIESOFTHEMIDSHAVEFADEDORBECOMEOBSOLETEREPLACEDBYSIGNIFICANTNEWONES"UTINTHEWORLDOFDATAMANAGEMENTTHERELATIONALDATABASEAND31,CONTINUETODOMINATETHELANDSCAPE4HEYHAVEEXPANDEDOVERTHEYEARSTOSUPPORTNEWHARDWAREOPERATINGSYSTEMSNETWORKSANDLANGUAGESBUTDESPITEMANYATTEMPTSTODETHRONETHEMTHECORERELATIONALMODELANDTHE31,HAVETHRIVEDANDREMAINTHEDOMINANTFORCESINDATAMANAGEMENT(EREARESOMEOFTHEMAJORFEATURESANDMARKETFORCESTHATHAVECONTRIBUTEDTOTHISSUCCESSOVERTHEPASTYEARS

    s 6ENDORINDEPENDENCEs 0ORTABILITYACROSSCOMPUTERSYSTEMS

  • 0 A R T ) ! N / V E R V I E W O F 3 1 ,

    s /FFICIAL31,STANDARDSs %ARLY)"-COMMITMENTs -ICROSOFTSUPPORTs 2ELATIONALFOUNDATIONs (IGHLEVEL%NGLISHLIKESTRUCTUREs )NTERACTIVEADHOCQUERIESs 0ROGRAMMATICDATABASEACCESSs -ULTIPLEVIEWSOFDATAs #OMPLETEDATABASELANGUAGEs $YNAMICDATADEFINITIONs #LIENT3ERVERARCHITECTUREs %NTERPRISEAPPLICATIONSUPPORTs %XTENSIBILITYANDOBJECTTECHNOLOGYs )NTERNETDATABASEACCESSs *AVAINTEGRATION*$"#s /PENSOURCESUPPORTs )NDUSTRYINFRASTRUCTURE

    4HESECTIONSTHATFOLLOWBRIEFLYDESCRIBEEACHOFTHESEANDHOWTHEYCONTRIBUTEDTO31,SSUCCESS

    6ENDOR)NDEPENDENCE31,ISOFFEREDBYALLOFTHELEADING$"-3VENDORSANDNONEWDATABASEPRODUCTOVERTHELASTDECADEHASBEENHIGHLYSUCCESSFULWITHOUT31,SUPPORT!31,BASEDDATABASEANDTHEPROGRAMSTHATUSEITCANBEMOVEDFROMONE$"-3TOANOTHERVENDORS$"-3WITHMINIMALCONVERSIONEFFORTANDLITTLERETRAININGOFPERSONNEL$ATABASETOOLSSUCHASQUERYTOOLSREPORTWRITERSANDAPPLICATIONGENERATORSWORKWITHMANYDIFFERENTBRANDSOF31,DATABASES4HEVENDORINDEPENDENCETHUSPROVIDEDBY31,WASONEOFTHEMOSTIMPORTANTREASONSFORITSEARLYPOPULARITYANDREMAINSANIMPORTANTFEATURETODAY

    0ORTABILITY!CROSS#OMPUTER3YSTEMS31,BASEDDATABASEPRODUCTSRUNONCOMPUTERSYSTEMSRANGINGFROMMAINFRAMESANDMIDRANGESYSTEMSTOPERSONALCOMPUTERSWORKSTATIONSAWIDERANGEOFSPECIALIZEDSERVERCOMPUTERSANDEVENHANDHELDDEVICES4HEYOPERATEONSTANDALONECOMPUTERSYSTEMSINDEPARTMENTALLOCALAREANETWORKSANDINENTERPRISEWIDEOR)NTERNETWIDENETWORKS31,BASEDAPPLICATIONSTHATBEGINONSINGLEUSERORDEPARTMENTALSERVERSYSTEMSCANBEMOVEDTOLARGERSERVERSYSTEMSASTHEYGROW$ATAFROMCORPORATE31,BASEDDATABASESCANBEEXTRACTEDANDDOWNLOADEDINTODEPARTMENTALORPERSONALDATABASES&INALLYECONOMICALPERSONALCOMPUTERSCANBEUSEDTOTESTAPROTOTYPEOFA31,BASEDDATABASEAPPLICATIONBEFOREMOVINGITTOANEXPENSIVEMULTIUSERSYSTEM

  • # H A P T E R ) N T R O D U C T I O N

    0!24)

    /FFICIAL31,3TANDARDS!NOFFICIALSTANDARDFOR31,WASINITIALLYPUBLISHEDBYTHE!MERICAN.ATIONAL3TANDARDS)NSTITUTE!.3)ANDTHE)NTERNATIONAL3TANDARDS/RGANIZATION)3/INANDWASEXPANDEDINANDAGAININAND31,ISALSOA53&EDERAL)NFORMATION0ROCESSING3TANDARD&)03MAKINGITAKEYREQUIREMENTFORLARGEGOVERNMENTCOMPUTERCONTRACTS/VERTHEYEARSOTHERINTERNATIONALGOVERNMENTANDVENDORGROUPSHAVEPIONEEREDTHESTANDARDIZATIONOFNEW31,CAPABILITIESSUCHASCALLLEVELINTERFACESOROBJECTBASEDEXTENSIONS-ANYOFTHESENEWINITIATIVESHAVEBEENINCORPORATEDINTOTHE!.3))3/STANDARDOVERTIME4HEEVOLVINGSTANDARDSSERVEASANOFFICIALSTAMPOFAPPROVALFOR31,ANDHAVESPEEDEDITSMARKETACCEPTANCE

    %ARLY)"-#OMMITMENT31,WASORIGINALLYINVENTEDBY)"-RESEARCHERSANDFAIRLYQUICKLYBECAMEASTRATEGICPRODUCTFOR)"-BASEDONITSFLAGSHIP$"DATABASE31,SUPPORTISAVAILABLEONALLMAJOR)"-PRODUCTFAMILIESFROMPERSONALCOMPUTERSTHROUGHMIDRANGESYSTEMSAND5.)8BASEDSERVERSTO)"-MAINFRAMES)"-SINITIALWORKPROVIDEDACLEARSIGNALOF)"-SDIRECTIONFOROTHERDATABASEANDSYSTEMVENDORSTOFOLLOWEARLYINTHEDEVELOPMENTOF31,ANDRELATIONALDATABASES,ATER)"-SCOMMITMENTANDBROADSUPPORTSPEEDEDTHEMARKETACCEPTANCEOF31,)NTHES)"-WASTHEDOMINANTFORCEINBUSINESSCOMPUTINGSOITSEARLYANDSUSTAINEDSUPPORTASTHEINVENTORANDCHAMPIONOF31,ENSUREDITSEARLYIMPORTANCE

    -ICROSOFT3UPPORT-ICROSOFTHASLONGCONSIDEREDDATABASEACCESSAKEYPARTOFITS7INDOWSPERSONALCOMPUTERSOFTWAREARCHITECTURE"OTHDESKTOPANDSERVERVERSIONSOF7INDOWSPROVIDESTANDARDIZEDRELATIONALDATABASEACCESSTHROUGH/PEN$ATABASE#ONNECTIVITY/$"#A31,BASEDCALLLEVEL!0)APPLICATIONPROGRAMMINGINTERFACE,EADING7INDOWSSOFTWAREAPPLICATIONSSPREADSHEETSWORDPROCESSORSDATABASESETCFROM-ICROSOFTANDOTHERVENDORSSUPPORT/$"#ANDALLLEADING31,DATABASESPROVIDE/$"#ACCESS-ICROSOFTHASENHANCED/$"#SUPPORTWITHHIGHERLEVELMOREOBJECTORIENTEDDATABASEACCESSLAYERSOVERTHEYEARSINCLUDINGDATAMANAGEMENTSUPPORTIN.%4TODAY"UTTHESENEWTECHNOLOGIESCOULDALWAYSINTERACTWITHRELATIONALDATABASESTHROUGHTHE/$"#31,LAYERSBELOW7HEN-ICROSOFTBEGANITSEFFORTINTHELATESTOMAKE7INDOWSAVIABLESERVEROPERATINGSYSTEMITINTRODUCED31,3ERVERASITSOWN31,BASEDOFFERING31,3ERVERCONTINUESTODAYASAFLAGSHIP-ICROSOFTPRODUCTANDASAKEYCOMPONENTOFTHE-ICROSOFT.%4ARCHITECTUREFORWEBSERVICES

    2ELATIONAL&OUNDATION31,ISALANGUAGEFORRELATIONALDATABASESANDITHASBECOMEPOPULARALONGWITHTHERELATIONALDATABASEMODEL4HETABULARROWCOLUMNSTRUCTUREOFARELATIONALDATABASEISINTUITIVETOUSERSKEEPINGTHE31,SIMPLEANDEASYTOUNDERSTAND4HERELATIONALMODELALSOHASASTRONGTHEORETICALFOUNDATIONTHATHASGUIDEDTHEEVOLUTIONANDIMPLEMENTATIONOFRELATIONALDATABASES2IDINGAWAVEOFACCEPTANCEBROUGHTABOUTBYTHESUCCESSOFTHERELATIONALMODEL31,HASBECOMETHEDATABASELANGUAGEFORRELATIONALDATABASES

  • 0 A R T ) ! N / V E R V I E W O F 3 1 ,

    (IGH,EVEL%NGLISH,IKE3TRUCTURE31,STATEMENTSLOOKLIKESIMPLE%NGLISHSENTENCESMAKING31,RELATIVELYEASYTOLEARNANDUNDERSTAND4HISISINPARTBECAUSE31,STATEMENTSDESCRIBETHEDATATOBERETRIEVEDRATHERTHANSPECIFYINGHOWTOFINDTHEDATA4ABLESANDCOLUMNSINA31,DATABASECANHAVELONGDESCRIPTIVENAMES!SARESULTMOST31,STATEMENTShSAYWHATTHEYMEANvANDCANBEREADASCLEARNATURALSENTENCES

    )NTERACTIVE!D(OC1UERIES31,ISANINTERACTIVEQUERYLANGUAGETHATGIVESUSERSADHOCACCESSTOSTOREDDATA5SING31,INTERACTIVELYAUSERCANGETANSWERSEVENTOCOMPLEXQUESTIONSINMINUTESORSECONDSINSHARPCONTRASTTOTHEDAYSORWEEKSITWOULDTAKEFORAPROGRAMMERTOWRITEACUSTOMREPORTPROGRAM"ECAUSEOFTHE31,ADHOCQUERYPOWERDATAISMOREACCESSIBLEANDCANBEUSEDTOHELPANORGANIZATIONMAKEBETTERMOREINFORMEDDECISIONS31,SADHOCQUERYCAPABILITYWASANIMPORTANTADVANTAGEOVERNONRELATIONALDATABASESEARLYINITSEVOLUTIONANDMORERECENTLYHASCONTINUEDASAKEYADVANTAGEOVERPUREOBJECTBASEDDATABASES

    0ROGRAMMATIC$ATABASE!CCESS31,ISALSOADATABASELANGUAGEUSEDBYPROGRAMMERSTOWRITEAPPLICATIONSTHATACCESSADATABASE4HESAME31,STATEMENTSAREUSEDFORBOTHINTERACTIVEANDPROGRAMMATICACCESSSOTHEDATABASEACCESSPARTSOFAPROGRAMCANBETESTEDFIRSTWITHINTERACTIVE31,ANDTHENEMBEDDEDINTOTHEPROGRAM)NCONTRASTNONRELATIONALOROBJECTORIENTEDDATABASESPROVIDEDONESETOFTOOLSFORPROGRAMMATICACCESSANDASEPARATEQUERYFACILITYFORADHOCREQUESTSWITHOUTANYSYNERGYBETWEENTHETWOMODESOFACCESS

    -ULTIPLE6IEWSOF$ATA5SING31,THECREATOROFADATABASECANGIVEDIFFERENTUSERSOFTHEDATABASEDIFFERENTVIEWSOFITSSTRUCTUREANDCONTENTS&OREXAMPLETHEDATABASECANBECONSTRUCTEDSOTHATEACHUSERSEESDATAONLYFORHISORHERDEPARTMENTORSALESREGION)NADDITIONDATAFROMSEVERALDIFFERENTPARTSOFTHEDATABASECANBECOMBINEDANDPRESENTEDTOTHEUSERASASIMPLEROWCOLUMNTABLE31,VIEWSCANTHUSBEUSEDTOENHANCETHESECURITYOFADATABASEANDTOTAILORITTOTHEPARTICULARNEEDSOFINDIVIDUALUSERSWHILEPRESERVINGTHEFUNDAMENTALROWCOLUMNSTRUCTUREOFTHEDATA

    #OMPLETE$ATABASE,ANGUAGE31,WASFIRSTDEVELOPEDASANADHOCQUERYLANGUAGEBUTITSPOWERSNOWGOFARBEYONDDATARETRIEVAL31,PROVIDESACOMPLETECONSISTENTLANGUAGEFORCREATINGADATABASEMANAGINGITSSECURITYUPDATINGITSCONTENTSRETRIEVINGDATAANDSHARINGDATAAMONGMANYCONCURRENTUSERS31,CONCEPTSTHATARELEARNEDINONEPARTOFTHELANGUAGECANBEAPPLIEDTOOTHER31,COMMANDSMAKINGUSERSMOREPRODUCTIVE

    $YNAMIC$ATA$EFINITION5SING31,THESTRUCTUREOFADATABASECANBECHANGEDANDEXPANDEDDYNAMICALLYEVENWHILEUSERSAREACCESSINGDATABASECONTENTS4HISISAMAJORADVANCEOVERSTATICDATADEFINITIONLANGUAGESWHICHPREVENTEDACCESSTOTHEDATABASEWHILEITSSTRUCTUREWASBEINGCHANGED31,THUSPROVIDESMAXIMUMFLEXIBILITYALLOWINGADATABASETOADAPTTOCHANGINGREQUIREMENTSWHILEONLINEAPPLICATIONSCONTINUEUNINTERRUPTED

  • # H A P T E R ) N T R O D U C T I O N

    0!24)

    #LIENT3ERVER!RCHITECTURE31,ISANATURALVEHICLEFORIMPLEMENTINGAPPLICATIONSUSINGADISTRIBUTEDCLIENTSERVERARCHITECTURE)NTHISROLE31,SERVESASTHELINKBETWEENhFRONTENDvCOMPUTERSYSTEMSOPTIMIZEDFORUSERINTERACTIONANDhBACKENDvSYSTEMSSPECIALIZEDFORDATABASEMANAGEMENTALLOWINGEACHSYSTEMTODOWHATITDOESBEST31,ALSOALLOWSPERSONALCOMPUTERSTOFUNCTIONASFRONTENDSTONETWORKSERVERSORTOLARGERMINICOMPUTERANDMAINFRAMEDATABASESPROVIDINGACCESSTOCORPORATEDATAFROMPERSONALCOMPUTERAPPLICATIONS

    %NTERPRISE!PPLICATION3UPPORT4HELARGESTENTERPRISEAPPLICATIONSTHATSUPPORTTHEDAILYOPERATIONOFLARGECOMPANIESANDORGANIZATIONSALLUSE31,BASEDDATABASESTOSTOREANDORGANIZETHEIRDATA)NTHESDRIVENBYTHEIMPENDINGDEADLINEFORSUPPORTINGDATESINTHEYEARANDBEYONDTHESOCALLEDh9+vPROBLEMLARGEENTERPRISESMOVEDENMASSETOABANDONTHEIRHOMEGROWNSYSTEMSANDCONVERTTOPACKAGEDENTERPRISEAPPLICATIONSFROMVENDORSLIKE3!0/RACLE0EOPLE3OFT3IEBELANDOTHERS4HEDATAPROCESSEDBYTHESEAPPLICATIONSORDERSSALESAMOUNTSCUSTOMERSINVENTORYLEVELSPAYMENTAMOUNTSETCTENDSTOHAVEASTRUCTUREDRECORDSANDFIELDSFORMATWHICHCONVERTSEASILYINTOTHEROWCOLUMNFORMATOF31,"YCONSTRUCTINGTHEIRAPPLICATIONSTOUSEENTERPRISECLASS31,DATABASESTHEMAJORAPPLICATIONVENDORSELIMINATEDTHENEEDTODEVELOPTHEIROWNDATAMANAGEMENTSOFTWAREANDBENEFITEDFROMEXISTINGTOOLSANDPROGRAMMINGSKILLS"ECAUSEEVERYMAJORENTERPRISEAPPLICATIONREQUIRESA31,BASEDDATABASEFORITSOPERATIONNEWSALESOFENTERPRISEAPPLICATIONSAUTOMATICALLYGENERATEhDRAGALONGvDEMANDFORNEWCOPIESOFDATABASESOFTWARE

    %XTENSIBILITYAND/BJECT4ECHNOLOGY4HEMAJORCHALLENGETO31,SCONTINUEDDOMINANCEASADATABASESTANDARDHASCOMEFROMTHEEMERGENCEOFOBJECTBASEDPROGRAMMINGTHROUGHLANGUAGESSUCHAS*AVAAND#ANDFROMTHEINTRODUCTIONOFOBJECTBASEDDATABASESASANEXTENSIONOFTHEBROADMARKETTRENDTOWARDOBJECTBASEDTECHNOLOGY31,BASEDDATABASEVENDORSHAVERESPONDEDTOTHISCHALLENGEBYSLOWLYEXPANDINGANDENHANCING31,TOINCLUDEOBJECTFEATURES4HESEhOBJECTRELATIONALvDATABASESWHICHCONTINUETOBEBASEDON31,HAVEEMERGEDASAMOREPOPULARALTERNATIVETOhPUREOBJECTvDATABASESANDHAVEPERPETUATED31,SDOMINANCETHROUGHTHELASTDECADE4HENEWESTWAVEOFOBJECTTECHNOLOGYEMBODIEDINTHE8-,STANDARDANDWEBSERVICESARCHITECTURESONCEAGAINCREATEDACROPOFh8-,DATABASESvANDALTERNATIVEQUERYLANGUAGESTOCHALLENGE31,INTHEEARLYS"UTONCEAGAINTHEMAJORVENDORSOF31,BASEDDATABASESRESPONDEDBYADDING8-,BASEDEXTENSIONSMEETINGTHECHALLENGEANDSECURING31,SCONTINUINGIMPORTANCE(ISTORYSUGGESTSTHATTHIShEXTENDANDINTEGRATEvAPPROACHWILLBESUCCESSFULINWARDINGOFFNEWCHALLENGESINTHEFUTUREASWELL

    )NTERNET$ATABASE!CCESS7ITHTHEEXPLODINGPOPULARITYOFTHE)NTERNETANDTHE7ORLD7IDE7EBANDTHEIRSTANDARDSBASEDFOUNDATION31,FOUNDANEWROLEINTHELATESASAN)NTERNETDATAACCESSSTANDARD%ARLYINTHEDEVELOPMENTOFTHE7EBDEVELOPERSNEEDEDAWAYTORETRIEVEANDPRESENTDATABASEINFORMATIONONWEBPAGESANDUSED31,ASACOMMONLANGUAGEFORDATABASEGATEWAYS-ORERECENTLYTHEEMERGENCEOFTHREETIERED)NTERNETARCHITECTURESWITHDISTINCTTHINCLIENTAPPLICATIONSERVERANDDATABASESERVERLAYERSHASESTABLISHED31,ASTHESTANDARDLINKBETWEENTHEAPPLICATIONANDDATABASETIERS4HEROLEOF31,INMULTITIER

  • 0 A R T ) ! N / V E R V I E W O F 3 1 ,

    ARCHITECTURESISNOWBEGINNINGTOEXTENDBEYONDTHEBACKENDDATABASELAYERTOINCLUDEDATACACHINGANDREALTIMEDATAMANAGEMENTINORNEARTHEAPPLICATIONTIER

    *AVA)NTEGRATION*$"#!MAJORAREAOF31,DEVELOPMENTOVERTHELASTFIVETOTENYEARSHASBEENTHEINTEGRATIONOF31,WITH*AVA3EEINGTHENEEDTOLINKTHE*AVALANGUAGETOEXISTINGRELATIONALDATABASES3UN-ICROSYSTEMSTHECREATOROF*AVAINTRODUCED*AVA$ATABASE#ONNECTIVITY*$"#ASTANDARD!0)THATALLOWS*AVAPROGRAMSTOUSE31,FORDATABASEACCESS*$"#RECEIVEDAFURTHERBOOSTWHENITWASADOPTEDASTHEDATAACCESSSTANDARDWITHINTHE*AVA%NTERPRISE%DITION*%%SPECIFICATIONWHICHDEFINESTHEOPERATINGENVIRONMENTPROVIDEDBYMOSTOFTHELEADING)NTERNETAPPLICATIONSERVERS)NADDITIONTOTHEROLEOF*AVAASAPROGRAMMINGLANGUAGEFROMWHICHDATABASESAREUSEDMANYOFTHELEADINGDATABASEVENDORSHAVEALSOANNOUNCEDORIMPLEMENTED*AVASUPPORTWITHINTHEIRDATABASESYSTEMSALLOWING*AVATOBEUSEDASALANGUAGEFORSTOREDPROCEDURESANDBUSINESSLOGICWITHINTHEDATABASEITSELF4HISTRENDTOWARDINTEGRATIONBETWEEN*AVAAND31,WILLENSURETHECONTINUEDIMPORTANCEOF31,INTHENEWERAOF*AVABASEDPROGRAMMING

    /PEN3OURCE3UPPORT/NEOFTHENEWERIMPORTANTDEVELOPMENTSINTHECOMPUTERINDUSTRYISTHEEMERGENCEOFANhOPENSOURCEvAPPROACHTOBUILDINGCOMPLEXSOFTWARESYSTEMS7ITHTHISAPPROACHTHESOURCECODETHATDEFINESTHEOPERATIONOFASOFTWARESYSTEMISOPENANDFREELYAVAILABLEANDMANYDIFFERENTPROGRAMMERSCANCONTRIBUTETOITADDINGFEATURESFIXINGBUGSENHANCINGITSFUNCTIONALITYANDPROVIDINGSUPPORTFORITSUSE4HISCOMMUNITYOFPROGRAMMERSPOTENTIALLYSPREADACROSSTHOUSANDSOFDIFFERENTORGANIZATIONSANDAROUNDTHEGLOBEWITHSOMECOORDINATIONBECOMESTHEENGINETHATDRIVESTHEFURTHERDEVELOPMENTOFTHETECHNOLOGY/PENSOURCESOFTWAREISGENERALLYAVAILABLEATVERYLOWPRICESORFREEADDINGTOITSAPPEAL3EVERALSUCCESSFULOPENSOURCE31,BASEDDATABASESHAVEBEENBUILTINTHELASTDECADEANDONEOFTHESE-Y31,ISASTANDARDCOMPONENTOFTHEMOSTPOPULAROPENSOURCEhSTACKvOFSOFTWARETHE,!-0STACKWHICHALSOINCLUDES,INUXTHE!PACHEWEBSERVERANDTHE0(0SCRIPTINGLANGUAGE4HEWIDESPREADAVAILABILITYOFFREE31,BASEDOPENSOURCEDATABASESHASEXPOSED31,TOANEVENBROADERRANGEOFPROGRAMMERSCONTINUINGTOBUILDITSPOPULARITY

    )NDUSTRY)NFRASTRUCTURE0ERHAPSTHEMOSTIMPORTANTFACTORCONTRIBUTINGTOTHEGROWINGIMPORTANCEOF31,ISTHEEMERGENCEOFANENTIRECOMPUTERINDUSTRYINFRASTRUCTUREBASEDON31,31,BASEDRELATIONALDATABASESYSTEMSAREANIMPORTANTPARTOFTHISINFRASTRUCTURE%NTERPRISEAPPLICATIONSTHATUSE31,ANDREQUIREA31,BASEDDATABASEAREANOTHERIMPORTANTPARTASAREREPORTINGTOOLSDATAENTRYTOOLSDESIGNTOOLSPROGRAMMINGTOOLSANDAHOSTOFOTHERTOOLSTHATSIMPLIFYTHEUSEOF31,!LARGEPOOLOFEXPERIENCED31,PROGRAMMERSISACRITICALPARTOFTHEINFRASTRUCTURE!NOTHERIMPORTANTPARTISTHETRAININGANDSUPPORTSERVICESTHATSURROUND31,ANDHELPTOCREATEANDPERPETUATE31,EXPERTISE!NENTIRESUBINDUSTRYHASEMERGEDAROUND31,CONSULTINGOPTIMIZATIONANDPERFORMANCETUNING!LLPARTSOFTHISINFRASTRUCTURETENDTOREINFORCEONEANOTHERANDTOCONTRIBUTETOTHEONGOINGSUCCESSOFTHEOTHERPARTS3IMPLYSTATEDTOSOLVEDATAMANAGEMENTPROBLEMSTHEEASIESTLOWESTRISKLOWESTCOSTSOLUTIONISALMOSTALWAYSASOLUTIONBASEDON31,

  • !1UICK4OUROF31,

    "EFOREWEDIVEINTOTHEDETAILSOF31,ITSAGOODIDEATODEVELOPANOVERALLPERSPECTIVEONTHELANGUAGEANDHOWITWORKS4HISCHAPTERCONTAINSAQUICKTOUROF31,THATILLUSTRATESITSMAJORFEATURESANDFUNCTIONS4HEGOALOFTHEQUICKTOURISNOTTOMAKEYOUPROFICIENTINWRITING31,STATEMENTSTHATSTHEGOALOF0ART))OFTHISBOOK2ATHERBYTHETIMEYOUVEFINISHEDTHISCHAPTERYOUWILLHAVEABASICFAMILIARITYWITHTHE31,ANDANOVERVIEWOFITSCAPABILITIES

    !3IMPLE$ATABASE4HEEXAMPLESINTHISQUICKTOURAREBASEDONASIMPLERELATIONALDATABASEFORASMALLDISTRIBUTIONCOMPANY4HEDATABASESHOWNIN&IGURESTORESTHEINFORMATIONNEEDEDTOIMPLEMENTASMALLORDERPROCESSINGAPPLICATION9OUWILLFINDINSTRUCTIONSFORCREATINGTHESAMPLEDATABASEIN!PPENDIX!SOYOUCANTRYTHESEQUERIESYOURSELFASYOUREAD3PECIFICALLYITSTORESTHEFOLLOWINGINFORMATION

    s 4HECUSTOMERSWHOBUYTHECOMPANYSPRODUCTSs 4HEORDERSPLACEDBYTHOSECUSTOMERSs 4HESALESPEOPLEWHOSELLTHEPRODUCTSTOCUSTOMERSs 4HESALESOFFICESWHERETHOSESALESPEOPLEWORK

    4HISDATABASELIKEMOSTOTHERSISAMODELOFTHEhREALWORLDv4HEDATASTOREDINTHEDATABASEREPRESENTSREALENTITIESCUSTOMERSORDERSSALESPEOPLEANDOFFICES%ACHDIFFERENTKINDOFENTITYHASASEPARATETABLEOFDATA&OREXAMPLEINTHE3!,%32%03TABLEEACHSALESPERSONISREPRESENTEDBYONEROWANDEACHCOLUMNHOLDSONETYPEOFINFORMATIONABOUTSALESPEOPLESUCHASTHEIRNAMEORTHESALESOFFICEWHERETHEYAREASSIGNED$ATABASEREQUESTSTHATYOUMAKEUSINGTHE31,PARALLELREALWORLDACTIVITIESASCUSTOMERSPLACECANCELANDCHANGEORDERSASYOUHIREANDFIRESALESPEOPLEANDSOON,ETSSEEHOWYOUCANUSE31,TOMANIPULATEDATA

    #(!04%2

  • 0 A R T ) ! N / V E R V I E W O F 3 1 ,

    2ETRIEVING$ATA&IRSTLETSLISTTHESALESOFFICESSHOWINGTHECITYWHEREEACHONEISITSOFFICENUMBERANDITSYEARTODATESALES4HE31,STATEMENTTHATRETRIEVESDATAFROMTHEDATABASEISCALLED3%,%#44HIS31,STATEMENTRETRIEVESTHEDATAYOUWANT

    3%,%#4#)49/&&)#%3!,%3&2/-/&&)#%3#)49/&&)#%3!,%3

    $ENVER.EW9ORK#HICAGO!TLANTA,OS!NGELES

    1, ii>>`>>L>i

  • # H A P T E R ! 1 U I C K 4 O U R O F 3 1 ,

    0!24)

    4HE3%,%#4STATEMENTASKSFORTHREEPIECESOFDATATHECITYTHEOFFICENUMBERANDTHEAMOUNTOFSALESFOREACHOFFICE)TALSOSPECIFIESTHATALLOFTHISDATACOMESFROMTHE/&&)#%3TABLEWHICHSTORESDATAABOUTSALESOFFICES4HERESULTSOFTHEQUERYAPPEARINTABULARFORMIMMEDIATELYAFTERTHEREQUEST.OTETHATTHEFORMATTINGOFTHEQUERYRESULTSWILLVARYFROMONE31,IMPLEMENTATIONTOANOTHER

    4HE3%,%#4STATEMENTISUSEDFORALL31,QUERIES&OREXAMPLEHEREISAQUERYTHATLISTSTHENAMESANDYEARTODATESALESFOREACHSALESPERSONINTHEDATABASE)TALSOSHOWSTHEQUOTASALESTARGETANDTHEOFFICENUMBERWHEREEACHPERSONWORKS)NTHISCASETHEDATACOMESFROMTHE3!,%32%03TABLE

    3%,%#4.!-%2%0?/&&)#%3!,%315/4!&2/-3!,%32%03.!-%2%0?/&&)#%3!,%315/4!

    "ILL!DAMS-ARY*ONES3UE3MITH3AM#LARK"OB3MITH$AN2OBERTS4OM3NYDER.5,,.5,,,ARRY&ITCH0AUL#RUZ.ANCY!NGELLI

    4HE.5,,VALUESFOR4OM3NYDERREPRESENTMISSINGORUNKNOWNDATA(EISNEWTOTHECOMPANYANDHASNOTYETBEENASSIGNEDTOASALESOFFICEORBEENGIVENASALESQUOTA(OWEVERHEHASALREADYMADESOMESALES4HEDATAINHISROWOFQUERYRESULTSSHOWSTHISCLEARLY

    31,ALSOLETSYOUASKFORCALCULATEDRESULTS&OREXAMPLEYOUCANASK31,TOCALCULATETHEAMOUNTBYWHICHEACHSALESPERSONISOVERORUNDERQUOTA

    3%,%#4.!-%3!,%315/4!3!,%3n15/4!&2/-3!,%32%03.!-%3!,%315/4!3!,%3n15/4!

    "ILL!DAMS-ARY*ONES3UE3MITH3AM#LARK"OB3MITHn$AN2OBERTS4OM3NYDER.5,,.5,,,ARRY&ITCH0AUL#RUZ.ANCY!NGELLIn

    4HEREQUESTEDDATAINCLUDINGTHECALCULATEDDIFFERENCEBETWEENSALESANDQUOTAFOREACHSALESPERSONONCEAGAINAPPEARSINAROWCOLUMNTABLE0ERHAPSYOUWOULDLIKETOFOCUSONTHESALESPEOPLEWHOSESALESARELESSTHANTHEIRQUOTAS31,LETSYOURETRIEVETHAT

  • 0 A R T ) ! N / V E R V I E W O F 3 1 ,

    KINDOFSELECTIVEINFORMATIONVERYEASILYBYADDINGAMATHEMATICALCOMPARISONTOTHEPREVIOUSREQUEST

    3%,%#4.!-%3!,%315/4!3!,%3n15/4!&2/-3!,%32%037(%2%3!,%315/4!.!-%3!,%315/4!3!,%3n15/4!

    "OB3MITHn.ANCY!NGELLIn

    9OUCANUSETHESAMETECHNIQUETOLISTLARGEORDERSINTHEDATABASEANDFINDOUTWHICHCUSTOMERPLACEDTHEORDERWHICHPRODUCTWASORDEREDANDINWHATQUANTITY9OUCANALSOASK31,TOSORTTHEORDERSBASEDONTHEORDERAMOUNT

    3%,%#4/2$%2?.5-#53402/$5#4149!-/5.4&2/-/2$%237(%2%!-/5.4/2$%2"9!-/5.4/2$%2?.5-#53402/$5#4149!-/5.4

    9#!,!2

    3UMMARIZING$ATA31,NOTONLYRETRIEVESINDIVIDUALPIECESOFDATAFROMTHEDATABASEBUTITALSOCANSUMMARIZETHEDATABASECONTENTS7HATSTHEAVERAGESIZEOFANORDERINTHEDATABASE4HISREQUESTASKS31,TOLOOKATALLTHEORDERSANDFINDTHEAVERAGEAMOUNT

    3%,%#4!6'!-/5.4&2/-/2$%23!6'!-/5.4

    9OUCOULDALSOASKFORTHEAVERAGEORDERSIZEFORAPARTICULARCUSTOMER

    3%,%#4!6'!-/5.4&2/-/2$%237(%2%#534!6'!-/5.4

  • # H A P T E R ! 1 U I C K 4 O U R O F 3 1 ,

    0!24)

    &INALLYLETSFINDOUTTHETOTALVALUEOFTHEORDERSPLACEDBYEACHCUSTOMER4ODOTHISYOUCANASK31,TOGROUPTHEORDERSTOGETHERBYCUSTOMERNUMBERANDTHENTOTALTHEORDERSFOREACHCUSTOMER

    3%,%#4#53435-!-/5.4&2/-/2$%23'2/50"9#534#53435-!-/5.4

    !DDING$ATATOTHE$ATABASE9OUALSOUSE31,TOADDNEWDATATOTHEDATABASE&OREXAMPLESUPPOSEYOUJUSTOPENEDANEW7ESTERNREGIONSALESOFFICEIN$ALLASWITHTARGETSALESOF(ERESTHE).3%24STATEMENTTHATADDSTHENEWOFFICETOTHEDATABASEASOFFICENUMBER

    ).3%24).4//&&)#%3#)492%')/.4!2'%43!,%3/&&)#%6!,5%3g$ALLASgg7ESTERNgROWINSERTED

    3IMILARLYIF-ARY*ONESEMPLOYEENUMBERSIGNSUPANEWCUSTOMER!CME)NDUSTRIESTHIS).3%24STATEMENTADDSTHECUSTOMERTOTHEDATABASEASCUSTOMERNUMBERWITHACREDITLIMIT

    ).3%24).4/#534/-%23#/-0!.9#534?2%0#534?.5-#2%$)4?,)-)46!,5%3g!CME)NDUSTRIESgROWINSERTED

    9OUMAYHAVENOTICEDTHATTHE31,ENGINERETURNEDFEEDBACKROWINSERTEDTOTELLYOUTHATTHESTATEMENTSWORKED4HEEXACTWORDINGANDFORMATTINGOFTHISFEEDBACKWILLVARYFROMONE31,IMPLEMENTATIONTOANOTHER

  • 0 A R T ) ! N / V E R V I E W O F 3 1 ,

    $ELETING$ATA*USTASTHE31,).3%24STATEMENTADDSNEWDATATOTHEDATABASETHE31,$%,%4%STATEMENTREMOVESDATAFROMTHEDATABASE)F!CME)NDUSTRIESDECIDESAFEWDAYSLATERTOSWITCHTOACOMPETITORYOUCANDELETE!CMESCUSTOMERINFORMATIONFROMTHEDATABASEWITHTHISSTATEMENT

    $%,%4%&2/-#534/-%237(%2%#/-0!.9g!CME)NDUSTRIESgROWDELETED

    !NDIFYOUDECIDETOTERMINATEALLSALESPEOPLEWHOSESALESARELESSTHANTHEIRQUOTASYOUCANREMOVETHEMFROMTHEDATABASEWITHTHIS$%,%4%STATEMENT

    $%,%4%&2/-3!,%32%037(%2%3!,%315/4!ROWSDELETED

    5PDATINGTHE$ATABASE9OUCANUSE31,TOMODIFYDATATHATISALREADYSTOREDINTHEDATABASE&OREXAMPLETOINCREASETHECREDITLIMITFOR&IRST#ORPTOYOUWOULDUSETHE31,50$!4%STATEMENT

    50$!4%#534/-%233%4#2%$)4?,)-)47(%2%#/-0!.9g&IRST#ORPgROWUPDATED

    4HE50$!4%STATEMENTCANALSOMAKEMANYCHANGESINTHEDATABASEATONCE&OREXAMPLETHIS50$!4%STATEMENTRAISESTHEQUOTAFORALLSALESPEOPLEBY

    50$!4%3!,%32%033%415/4!15/4!ROWSUPDATED

    0ROTECTING$ATA!NIMPORTANTROLEOFADATABASEISTOPROTECTTHESTOREDDATAFROMACCESSORMODIFICATIONBYUNAUTHORIZEDUSERS&OREXAMPLESUPPOSEYOURASSISTANT-ARYHASADATABASEACCOUNTBUTHASNOTBEENPREVIOUSLYAUTHORIZEDTOINSERTDATAABOUTNEWCUSTOMERSINTOTHEDATABASE4HIS31,STATEMENTGRANTSHERTHATPERMISSION

    '2!.4).3%24/.#534/-%234/-!290RIVILEGEGRANTED

  • # H A P T E R ! 1 U I C K 4 O U R O F 3 1 ,

    0!24)

    3IMILARLYTHEFOLLOWING31,STATEMENTGIVES-ARYPERMISSIONTOUPDATEDATAABOUTCUSTOMERSANDTORETRIEVECUSTOMERDATAWITHTHE3%,%#4STATEMENT

    '2!.450$!4%3%,%#4/.#534/-%234/-!290RIVILEGEGRANTED

    )F-ARYISNOLONGERALLOWEDTOADDNEWCUSTOMERSTOTHEDATABASETHIS2%6/+%STATEMENTWILLDISALLOWIT

    2%6/+%).3%24/.#534/-%23&2/--!290RIVILEGEREVOKED

    3IMILARLYTHIS2%6/+%STATEMENTWILLREVOKEALLOF-ARYSPRIVILEGESTOACCESSORMODIFYCUSTOMERDATAINANYWAY

    2%6/+%!,,/.#534/-%23&2/--!290RIVILEGEREVOKED

    #REATINGA$ATABASE"EFOREYOUCANSTOREDATAINADATABASEYOUMUSTFIRSTDEFINETHESTRUCTUREOFTHEDATA3UPPOSEYOUWANTTOEXPANDTHESAMPLEDATABASEBYADDINGATABLEOFDATAABOUTTHEPRODUCTSYOURCOMPANYSELLS&OREACHPRODUCTTHEDATATOBESTOREDINCLUDESTHEFOLLOWING

    s !THREECHARACTERMANUFACTURER)$CODEs !FIVECHARACTERPRODUCT)$CODEs !PRODUCTDESCRIPTIONOFUPTOCHARACTERSs 4HEPRICEOFTHEPRODUCTs 4HEQUANTITYCURRENTLYONHAND

    4HIS31,#2%!4%4!",%STATEMENTDEFINESANEWTABLETOSTORETHEPRODUCTSDATA

    #2%!4%4!",%02/$5#43-&2?)$#(!202/$5#4?)$#(!2$%3#2)04)/.6!2#(!202)#%$%#)-!,149?/.?(!.$).4%'%24ABLECREATED

  • 0 A R T ) ! N / V E R V I E W O F 3 1 ,

    !LTHOUGHMORECRYPTICTHANTHEPREVIOUS31,STATEMENTEXAMPLESTHE#2%!4%4!",%STATEMENTISSTILLFAIRLYSTRAIGHTFORWARD)TASSIGNSTHENAME02/$5#43TOTHENEWTABLEANDSPECIFIESTHENAMEANDTYPEOFDATASTOREDINEACHOFITSFIVECOLUMNS4HEMANUFACTURERANDPRODUCT)$SARESTOREDASFIXEDLENGTHSEQUENCESOFCHARACTERSTHEPRODUCTDESCRIPTIONISAVARIABLELENGTHCHARACTERSTRINGTHEPRICEISDECIMALDATAAREALNUMBERANDTHEQUANTITYISANINTEGER

    /NCETHETABLEHASBEENCREATEDYOUCANFILLITWITHDATA(ERESAN).3%24STATEMENTFORANEWSHIPMENTOFSIZEWIDGETSPRODUCT!#)WHICHCOSTAPIECE

    ).3%24).4/02/$5#43-&2?)$02/$5#4?)$$%3#2)04)/.02)#%149?/.?(!.$6!,5%3g!#)gggg3IZE7IDGETgROWINSERTED

    &INALLYIFYOUDISCOVERLATERTHATYOUNOLONGERNEEDTOSTORETHEPRODUCTSDATAINTHEDATABASEYOUCANERASETHETABLEANDALLOFTHEDATAITCONTAINSWITHTHE$2/04!",%STATEMENT

    $2/04!",%02/$5#434ABLEDROPPED

    3UMMARY4HISQUICKTOUROF31,SHOWEDYOUWHAT31,CANDOANDILLUSTRATEDTHESTYLEOFTHE31,BYUSINGEIGHTOFTHEMOSTCOMMONLYUSED31,STATEMENTS4OSUMMARIZE

    s 5SE31,TORETRIEVEDATAFROMTHEDATABASEBYUSINGTHE3%,%#4STATEMENT9OUCANRETRIEVEALLORPARTOFTHESTOREDDATASORTITANDASK31,TOSUMMARIZETHEDATAUSINGTOTALSANDAVERAGES

    s 5SE31,TOUPDATETHEDATABASEBYADDINGNEWDATAWITHTHE).3%24STATEMENTDELETINGDATAWITHTHE$%,%4%STATEMENTANDMODIFYINGEXISTINGDATAWITHTHE50$!4%STATEMENT

    s 5SE31,TOCONTROLACCESSTOTHEDATABASEBYGRANTINGANDREVOKINGSPECIFICPRIVILEGESFORSPECIFICUSERSWITHTHE'2!.4AND2%6/+%STATEMENTS

    s 5SE31,TOCREATEMODIFYTHEDATABASEBYDEFININGTHESTRUCTUREOFNEWTABLESANDDROPPINGTABLESWHENTHEYARENOLONGERNEEDEDBYUSINGTHE#2%!4%AND$2/0STATEMENTS

  • 31,IN0ERSPECTIVE

    31,ISTHESTANDARDLANGUAGEFORDATABASEMANAGEMENTTODAY7HATDOESITMEANFOR31,TOBEASTANDARD(OWDIDITBECOMEASTANDARD7HATROLEDOESTHEOFFICIAL31,STANDARDPLAY(OWBROADLYADOPTEDISITANDWHYARETHERESTILLDIALECTSOF31,DESPITETHESTANDARD(OWBROADIS31,SIMPACTONVARIOUSSEGMENTSOFTHE)4LANDSCAPE4OANSWERTHESEQUESTIONSTHISCHAPTERTRACESTHEHISTORYOF31,ANDDESCRIBESITSCURRENTROLEINTHECOMPUTERMARKET

    31,ANDTHE%VOLUTIONOF$ATABASE-ANAGEMENT/NEOFTHEMAJORTASKSOFACOMPUTERSYSTEMISTOSTOREANDMANAGEDATA4OHANDLETHISTASKSPECIALIZEDCOMPUTERPROGRAMSKNOWNASDATABASEMANAGEMENTSYSTEMSBEGANTOAPPEARINTHELATESANDEARLYS!DATABASEMANAGEMENTSYSTEMOR$"-3HELPEDCOMPUTERUSERSTOORGANIZEANDSTRUCTURETHEIRDATAANDALLOWEDTHECOMPUTERSYSTEMTOPLAYAMOREACTIVEROLEINMANAGINGTHEDATA!LTHOUGHDATABASEMANAGEMENTSYSTEMSWEREFIRSTDEVELOPEDONLARGEMAINFRAMESYSTEMSTHEIRPOPULARITYQUICKLYSPREADTOMINICOMPUTERSANDTHENTOCOMPUTERWORKSTATIONSPERSONALCOMPUTERSANDSPECIALIZEDSERVERCOMPUTERS

    $ATABASEMANAGEMENTHASALSOPLAYEDAKEYROLEINTHEEXPLOSIONOFCOMPUTERNETWORKINGANDTHE)NTERNET%ARLYDATABASESYSTEMSRANONLARGEMONOLITHICCOMPUTERSYSTEMSWHERETHEDATATHEDATABASEMANAGEMENTSOFTWAREANDTHEUSERSORAPPLICATIONPROGRAMSACCESSINGTHEDATABASEALLOPERATEDONTHESAMESYSTEM4HESANDSSAWTHEEXPLOSIONOFANEWCLIENTSERVERMODELFORDATABASEACCESSINWHICHAUSERORANAPPLICATIONPROGRAMRUNNINGONAPERSONALCOMPUTERACCESSESADATABASEONASEPARATECOMPUTERSYSTEMBYUSINGANETWORK)NTHELATESTHEINCREASINGPOPULARITYOFTHE)NTERNETANDTHE7ORLD7IDE7EBIMPACTEDTHEARCHITECTUREOFDATAMANAGEMENTAGAIN4ODAYUSERSREQUIRELITTLEMORETHANAWEBBROWSERTOACCESSANDINTERACTWITHDATABASESNOTONLYWITHINTHEIROWNORGANIZATIONSBUTALSOAROUNDTHEWORLD4HESE)NTERNETBASEDARCHITECTURESUSUALLYINVOLVETHREEORMORECOMPUTERSYSTEMSONETHATRUNSTHEWEBBROWSERANDINTERACTSWITHTHEUSERCONNECTEDOVERTHE)NTERNETTOASECONDSYSTEMTHATRUNSANAPPLICATIONPROGRAMORAPPLICATIONSERVERWHICHISINTURNCONNECTEDTOATHIRDSYSTEMTHATRUNSTHEDATABASEMANAGEMENTSYSTEM

    $ATABASEMANAGEMENTHASBECOMEAVERYBIGBUSINESS)NDEPENDENTSOFTWARECOMPANIESANDCOMPUTERVENDORSSHIPBILLIONSOFDOLLARSWORTHOFDATABASEMANAGEMENTPRODUCTSEVERYYEAR6IRTUALLYALLENTERPRISECLASSCOMPUTERAPPLICATIONSTHATSUPPORTTHEDAILYOPERATION

    #(!04%2

  • 0 A R T ) ! N / V E R V I E W O F 3 1 ,

    OFLARGECOMPANIESANDOTHERORGANIZATIONSUSEDATABASES4HESEAPPLICATIONSINCLUDESOMEOFTHEFASTESTGROWINGAPPLICATIONCATEGORIESSUCHAS%NTERPRISE2ESOURCE0LANNING%20#USTOMER2ELATIONSHIP-ANAGEMENT#2-3UPPLY#HAIN-ANAGEMENT3#-3ALES&ORCE!UTOMATION3&!ANDFINANCIALAPPLICATIONS3PECIALIZEDHIGHPERFORMANCESERVERCOMPUTERSOPTIMIZEDTORUNTHEMOSTPOPULARDATABASESOFTWARECONSTITUTEAMULTIBILLIONDOLLARMARKETANDLOWCOSTSERVERSUSEDEXCLUSIVELYFORDATAMANAGEMENTADDBILLIONSMORE$ATABASESPROVIDETHEINTELLIGENCEBEHINDMOSTTRANSACTIONORIENTEDWEBSITESANDTHEYAREUSEDTOCAPTUREANDANALYZEUSERINTERACTIONSWITHWEBSITES$ATABASEMANAGEMENTTHUSTOUCHESEVERYSEGMENTOFTHECOMPUTERMARKET

    3INCETHELATESASPECIFICTYPEOF$"-3CALLEDARELATIONALDATABASEMANAGEMENTSYSTEM2$"-3HASBECOMESOPOPULARTHATITISTHESTANDARDDATABASEFORM2ELATIONALDATABASESORGANIZEDATAINASIMPLETABULARFORMANDPROVIDEMANYADVANTAGESOVEREARLIERTYPESOFDATABASES31,ISSPECIFICALLYARELATIONALDATABASELANGUAGEUSEDTOWORKWITHRELATIONALDATABASES

    !"RIEF(ISTORYOF31,4HEHISTORYOFTHE31,ISINTIMATELYINTERTWINEDWITHTHEDEVELOPMENTOFRELATIONALDATABASES4ABLESHOWSSOMEOFTHEEARLYMILESTONESINITSYEARHISTORY4HERELATIONALDATABASECONCEPTWASORIGINALLYDEVELOPEDBY%DGAR&RANKh4EDv#ODDAN)"-RESEARCHER)N*UNE#ODDPUBLISHEDANARTICLEENTITLEDh!2ELATIONAL-ODELOF$ATAFOR,ARGE3HARED$ATA"ANKSvWHICHOUTLINEDAMATHEMATICALTHEORYOFHOWDATACOULDBESTOREDANDMANIPULATEDUSINGATABULARSTRUCTURE2ELATIONALDATABASESAND31,TRACETHEIRORIGINSTOTHISARTICLEWHICHAPPEAREDINTHE#OMMUNICATIONSOFTHE!SSOCIATIONFOR#OMPUTING-ACHINERY

    4HE%ARLY9EARS#ODDSARTICLETRIGGEREDAFLURRYOFRELATIONALDATABASERESEARCHINCLUDINGAMAJORRESEARCHPROJECTWITHIN)"-4HEGOALOFTHEPROJECTCALLED3YSTEM2WASTOPROVETHEWORKABILITYOFTHERELATIONALCONCEPTANDTOPROVIDESOMEEXPERIENCEINACTUALLYIMPLEMENTINGARELATIONAL$"-37ORKON3YSTEM2BEGANINTHEMIDSAT)"-S3ANTA4ERESALABORATORIESIN3AN*OSE#ALIFORNIA

    )NANDTHEFIRSTPHASEOFTHE3YSTEM2PROJECTPRODUCEDAMINIMALPROTOTYPEOFARELATIONAL$"-3)NADDITIONTOTHE$"-3ITSELFTHE3YSTEM2PROJECTINCLUDEDWORKONDATABASEQUERYLANGUAGES/NEOFTHESELANGUAGESWASCALLED3%15%,ANACRONYMFOR3TRUCTURED%NGLISH1UERY,ANGUAGE)NANDTHE3YSTEM2RESEARCHPROTOTYPEWASREWRITTENFROMSCRATCHANDTHENEWIMPLEMENTATIONWASDISTRIBUTEDTOSELECTED)"-CUSTOMERSFOREVALUATIONINAND4HESEEARLYCUSTOMERSITESPROVIDEDSOMEACTUALUSEREXPERIENCEWITH3YSTEM2ANDITSDATABASELANGUAGEWHICHFORLEGALREASONSHADBEENRENAMED31,OR3TRUCTURED1UERY,ANGUAGE)NTHE3YSTEM2RESEARCHPROJECTCAMETOANENDWITH)"-CONCLUDINGTHATRELATIONALDATABASESWERENOTONLYFEASIBLEBUTALSOCOULDBETHEBASISFORAUSEFULCOMMERCIALPRODUCT

    %ARLY2ELATIONAL0RODUCTS4HE3YSTEM2PROJECTANDITS31,DATABASELANGUAGEWEREWELLCHRONICLEDINTECHNICALJOURNALSDURINGTHES3EMINARSONDATABASETECHNOLOGYFEATUREDDEBATESONTHEMERITSOFTHENEWANDHERETICALRELATIONALMODEL"YITWASAPPARENTTHAT)"-WASBECOMINGENTHUSIASTICABOUTRELATIONALDATABASETECHNOLOGYANDTHATITWASMAKINGAMAJORCOMMITMENTTO31,

  • # H A P T E R 3 1 , I N 0 E R S P E C T I V E

    0!24)

    9i> i ```ivii>>`>>L>i`i{ Li}-i,iV{ >Vi`iVL}i-+1>}>}iLi`n -i,Vii>iV`Vi` ">Vi`VivViV>,-n ,i>>/iV}`Vi}in >Vi-+-n -v-+>`>`Viin >Vin --+>`>`>vi`n -L>i`Vi,-v>>VVi}n -"-+>`>`>vi`nn />i>`Vv>Vi-+-iiv"-n /*LiV>/*Li` /*LiV>Li` -+VVi`>>L>i>VViiVvV>Li` VvLi"iVvV> --+>`>`-+>vi` /*

    "/*LiV>Li` -iV>i`-+`>>>i}i>ii`vivi "`V>ii`vivi{ *>>i`>>L>iiiiV}i`ViV>x "iVi-+vii>i` ->`>`*v"*`>>L>i>VVi>`"*LiV>Li` 1vi>ViVi>V>`ii`>v >-i`>Vi>>i}>>i}in Vv-+-ii`iiiiii`>>L>iv7` /n ">VinI`i`>>L>iiii}>>`i>>vViii`in iV>i`>>L>i`V>ii`vivi

    >`>`i`>>L>i>VViv>V>ii --"-+\>`>`>vi`]>``}LiVii`VVi>}>}i ">Vi`Vi>V>iii}>i``>>L>iV>V} Vv`Vi-+-ii]>i`>iii>V> 8i}>V>>Li>i>>i>,-`V >Viv`>>L>iLi >i>>`>>L>ii`]>}">Vi --"-+\>vi`]>``}-+8 --"-+\>vi`]}vV>i>`}-+8>`LiVii`VV >`>i`i">Vii>`}>i>in -+>Vi`L-Vin --"-+\n>vi`

    / ii-+iii

  • 0 A R T ) ! N / V E R V I E W O F 3 1 ,

    4HEPUBLICITYABOUT3YSTEM2ATTRACTEDTHEATTENTIONOFAGROUPOFENGINEERSIN-ENLO0ARK#ALIFORNIAWHODECIDEDTHAT)"-SRESEARCHFORESHADOWEDACOMMERCIALMARKETFORRELATIONALDATABASES)NTHEYFORMEDACOMPANY2ELATIONAL3OFTWARE)NCTOBUILDARELATIONAL$"-3BASEDON31,4HEIRPRODUCTNAMED/RACLESHIPPEDINANDBECAMETHEFIRSTCOMMERCIALLYAVAILABLERELATIONAL$"-3/RACLEBEAT)"-SFIRSTPRODUCTTOMARKETBYAFULLTWOYEARSAND/RACLERANON$IGITALS6!8MINICOMPUTERSWHICHWERELESSEXPENSIVETHAN)"-MAINFRAMES4HECOMPANYAGGRESSIVELYSOLDTHEMERITSOFTHENEWRELATIONALSTYLEOFDATABASEMANAGEMENTANDEVENTUALLYRENAMEDITSELFAFTERITSFLAGSHIPPRODUCT4ODAY/RACLE#ORPORATIONISTHELEADINGVENDOROFRELATIONALDATABASEMANAGEMENTSYSTEMSANDAMAJORVENDOROFENTERPRISEAPPLICATIONSBASEDONTHE/RACLEDATABASEWITHANNUALSALESOFTENSOFBILLIONSOFDOLLARS

    0ROFESSORSATTHE5NIVERSITYOF#ALIFORNIAS"ERKELEYCOMPUTERLABORATORIESWEREALSORESEARCHINGRELATIONALDATABASESINTHEMIDS,IKETHE)"-RESEARCHTEAMTHEYBUILTAPROTOTYPEOFARELATIONAL$"-3ANDCALLEDTHEIRSYSTEM)NGRES4HE)NGRESPROJECTINCLUDEDAQUERYLANGUAGENAMED15%,THATALTHOUGHMORESTRUCTUREDTHAN31,WASLESS%NGLISHLIKE-ANYDATABASEPIONEERSKEYDATABASEDEVELOPERSANDFOUNDERSOFDATABASESTARTUPCOMPANIESTRACETHEIRHISTORYBACKTOTHE"ERKELEY)NGRESPROJECT

    )NSEVERALPROFESSORSLEFT"ERKELEYANDFOUNDED2ELATIONAL4ECHNOLOGY)NCTOBUILDACOMMERCIALVERSIONOF)NGRESWHICHWASANNOUNCEDIN)NGRESAND/RACLEQUICKLYBECAMEBITTERARCHRIVALSBUTTHEIRRIVALRYHELPEDTOCALLATTENTIONTORELATIONALDATABASETECHNOLOGYINTHISEARLYSTAGE$ESPITEITSTECHNICALSUPERIORITYINMANYAREAS)NGRESBECAMEACLEARSECONDPLACEPLAYERINTHEMARKETCOMPETINGAGAINSTTHE31,BASEDCAPABILITIESANDTHEAGGRESSIVEMARKETINGANDSALESSTRATEGIESOF/RACLE4HEORIGINAL15%,QUERYLANGUAGEWASEFFECTIVELYREPLACEDBY31,INATESTIMONYTOTHEMARKETPOWEROFTHE31,STANDARD"YTHEMIDSTHE)NGRESTECHNOLOGYHADBEENSOLDTO#OMPUTER!SSOCIATESALEADINGMAINFRAMESOFTWAREVENDOR#OMPUTER!SSOCIATESSOLDITSINTERESTIN)NGRESTOAPRIVATEEQUITYCOMPANYIN

    )"-0RODUCTS7HILE/RACLEAND)NGRESRACEDTOBECOMECOMMERCIALPRODUCTS)"-S3YSTEM2PROJECTHADALSOTURNEDINTOANEFFORTTOBUILDACOMMERCIALPRODUCTNAMED31,$ATA3YSTEM31,$3)"-ANNOUNCED31,$3INANDBEGANSHIPPINGTHEPRODUCTIN)N)"-ANNOUNCEDAVERSIONOF31,$3FOR6-#-3ANOPERATINGSYSTEMTHATWASFREQUENTLYUSEDON)"-MAINFRAMESINCORPORATEINFORMATIONCENTERAPPLICATIONS

    )N)"-ALSOINTRODUCED$ATABASE$"ANOTHERRELATIONAL$"-3FORITSMAINFRAMESYSTEMS$"OPERATEDUNDER)"-S-63OPERATINGSYSTEMTHEWORKHORSEOPERATINGSYSTEMUSEDINLARGEMAINFRAMEDATACENTERS4HEFIRSTRELEASEOF$"BEGANSHIPPINGINAND)"-OFFICIALSHAILEDITASASTRATEGICPIECEOF)"-SOFTWARETECHNOLOGY$"HASSINCEBECOME)"-SFLAGSHIPRELATIONAL$"-3ANDWITH)"-SWEIGHTBEHINDIT$"S31,BECAMETHEDEFACTOSTANDARDDATABASELANGUAGE$"TECHNOLOGYHASNOWMIGRATEDACROSSALL)"-PRODUCTLINESFROMPERSONALCOMPUTERSTONETWORKSERVERSTOMAINFRAMES)N)"-TOOKTHE$"CROSSPLATFORMSTRATEGYEVENFURTHERBYANNOUNCING$"VERSIONSFORSERVERSFROM)"-HARDWARERIVALS3UN-ICROSYSTEMSAND(EWLETT0ACKARD$"ONMAINFRAMESREMAINSTHECENTERPIECEOF)"-SDATABASESTRATEGYHOWEVERANDISAVITALFORCEINENTERPRISECOMPUTING

  • # H A P T E R 3 1 , I N 0 E R S P E C T I V E

    0!24)

    #OMMERCIAL!CCEPTANCE$URINGTHEFIRSTHALFOFTHESTHERELATIONALDATABASEVENDORSSTRUGGLEDFORCOMMERCIALACCEPTANCEOFTHEIRPRODUCTS4HERELATIONALPRODUCTSHADSEVERALDISADVANTAGESCOMPAREDWITHTHETRADITIONALDATABASEARCHITECTURES4HEPERFORMANCEOFRELATIONALDATABASESWASSERIOUSLYINFERIORTOTHATOFTRADITIONALDATABASES%XCEPTFORTHE)"-PRODUCTSTHERELATIONALDATABASESCAMEFROMSMALLUPSTARTVENDORS!NDEXCEPTFORTHE)"-PRODUCTSTHERELATIONALDATABASESTENDEDTORUNONMINICOMPUTERSRATHERTHANON)"-MAINFRAMES

    4HERELATIONALPRODUCTSDIDHAVEONEMAJORADVANTAGEHOWEVER4HEIRRELATIONALQUERYLANGUAGES31,15%,ANDOTHERSALLOWEDUSERSTOPOSEADHOCQUERIESTOTHEDATABASEANDGETIMMEDIATEANSWERSWITHOUTWRITINGPROGRAMS!SARESULTRELATIONALDATABASESBEGANSLOWLYTURNINGUPININFORMATIONCENTERAPPLICATIONSASDECISIONSUPPORTTOOLS"Y-AY/RACLEPROUDLYCLAIMEDTOHAVEOVERINSTALLATIONS)NGRESWASINSTALLEDINACOMPARABLENUMBEROFSITES$"AND31,$3WEREALSOBEINGSLOWLYACCEPTEDANDCOUNTEDTHEIRCOMBINEDINSTALLATIONSATSLIGHTLYOVERSITES

    $URINGTHELASTHALFOFTHES31,ANDRELATIONALDATABASESWERERAPIDLYACCEPTEDASTHEDATABASETECHNOLOGYOFTHEFUTURE4HEPERFORMANCEOFTHERELATIONALDATABASEPRODUCTSIMPROVEDDRAMATICALLY)NGRESAND/RACLEINPARTICULARLEAPFROGGEDWITHEACHNEWVERSIONCLAIMINGSUPERIORITYOVERTHECOMPETITORANDTWOORTHREETIMESTHEPERFORMANCEOFTHEPREVIOUSRELEASE)MPROVEMENTSINTHEPROCESSINGPOWEROFTHEUNDERLYINGCOMPUTERHARDWAREALSOHELPEDTOBOOSTPERFORMANCE

    -ARKETFORCESALSOBOOSTEDTHEPOPULARITYOF31,INTHELATES)"-STEPPEDUPITSEVANGELISMOF31,POSITIONING$"ASTHEDATAMANAGEMENTSOLUTIONFORTHES0UBLICATIONOFTHEFIRST!.3))3/STANDARDFOR31,31,INGAVE31,OFFICIALSTATUSASASTANDARD31,ALSOEMERGEDASASTANDARDON5.)8BASEDCOMPUTERSYSTEMSWHOSEPOPULARITYACCELERATEDINTHES!SPERSONALCOMPUTERSBECAMEMOREPOWERFULANDWERELINKEDINLOCALAREANETWORKS,!.STHEYNEEDEDMORESOPHISTICATEDDATABASEMANAGEMENT0#DATABASEVENDORSEMBRACED31,ASTHESOLUTIONTOTHESENEEDSANDMINICOMPUTERDATABASEVENDORSMOVEDDOWNMARKETTOCOMPETEINTHEEMERGING0#LOCALAREANETWORKMARKET

    4HROUGHTHEEARLYSSTEADILYIMPROVING31,IMPLEMENTATIONSANDDRAMATICIMPROVEMENTSINPROCESSORSPEEDSMADE31,APRACTICALSOLUTIONFORTRANSACTIONPROCESSINGAPPLICATIONS31,BECAMEAKEYPARTOFTHECLIENTSERVERARCHITECTURETHATUSED0#SLOCALAREANETWORKSANDNETWORKSERVERSTOBUILDMUCHLOWERCOSTINFORMATIONPROCESSINGSYSTEMS7HENTHE)NTERNETANDTHEDOTCOMBOOMBURSTUPONTHE)4LANDSCAPE31,FOUNDANEWROLEASTHEDATABASELANGUAGEFOR)NTERNETAPPLICATIONSANDECOMMERCE

    31,SSUPREMACYINTHEDATABASEWORLDHASNOTGONEUNCHALLENGED/BJECTORIENTEDPROGRAMMINGEMERGEDINTHESASTHEMETHODOFCHOICEFORAPPLICATIONSDEVELOPMENTESPECIALLYFORPERSONALCOMPUTERSANDTHEIRGRAPHICALUSERINTERFACES4HEOBJECTMODELWITHITSOBJECTSCLASSESMETHODSANDINHERITANCEDIDNOTFITWELLWITHTHERELATIONALMODELOFTABLESROWSANDCOLUMNSOFDATA%ARLYhOBJECTDATABASEvPRODUCTSINCLUDED3ERVIO,OGICS'EMSTONE'RAPHAELS'BASEAND/NTOLOGICS6BASE!NEWGENERATIONOFVENTURECAPITALnBACKEDOBJECTDATABASECOMPANIESSPRANGUPINTHEEARLYTOMIDSHOPINGTOMAKERELATIONALDATABASESANDTHEIRVENDORSOBSOLETEJUSTAS31,HADDONETOTHEEARLIERNONRELATIONALVENDORS4HESEPRODUCTSINCLUDED)TASCA3YSTEMS)4!3#!&UJITSUS*ASMINE-ATISSE3OFTWARES-ATISSE/BJECTIVITYS/BJECTIVITY$"/NTOS)NCSRENAMEDFROM/NTOLOGIC/.4/3/4ECHNOLOGYS/ALONGWITHPERHAPSAHALFDOZENOTHERS(OWEVER31,ANDTHERELATIONALMODELMORETHANWITHSTOODTHECHALLENGE!FEWOFTHESEPRODUCTS

  • 0 A R T ) ! N / V E R V I E W O F 3 1 ,

    REMAININTHEMARKETTODAYBUTMOSTHAVEBEENACQUIREDORSIMPLYFADEDAWAY&OREXAMPLE/4ECHNOLOGYMERGEDWITHSEVERALCOMPANIESWASACQUIREDBY)NFORMIXAND)NFORMIXWASLATERACQUIREDBY)"-4OTALANNUALREVENUESFOROBJECTORIENTEDDATABASESAREMEASUREDINTHELOWMILLIONSOFDOLLARSWHILE31,ANDRELATIONALDATABASESYSTEMSTOOLSANDSERVICESPRODUCETENSOFBILLIONSOFDOLLARSOFSALESPERYEAR

    !S31,GREWTOADDRESSANEVERWIDERVARIETYOFDATAMANAGEMENTTASKSTHEONESIZEFITSALLAPPROACHOFTHEEARLIER31,PRODUCTSSHOWEDSERIOUSSTRAIN3PECIALIZEDDATABASESYSTEMSSPRANGUPTOSUPPORTDIFFERENTMARKETNEEDS/NEOFTHEFASTESTGROWINGSEGMENTSWASDATAWAREHOUSINGWHEREDATABASESWEREUSEDTOSEARCHTHROUGHHUGEAMOUNTSOFDATATODISCOVERUNDERLYINGTRENDSANDPATTERNS!SECONDMAJORTRENDWASTHEINCORPORATIONOFNEWDATATYPESSUCHASMULTIMEDIADATAANDOBJECTORIENTEDPRINCIPLESINTO31,!THIRDIMPORTANTSEGMENTWASMOBILEDATABASESFORPORTABLEPERSONALCOMPUTERSTHATCOULDOPERATEWHENSOMETIMESCONNECTEDTOANDSOMETIMESDISCONNECTEDFROMACENTRALIZEDDATABASESYSTEM!NOTHERIMPORTANTAPPLICATIONSEGMENTWASEMBEDDEDDATABASESFORUSEWITHININTELLIGENTDEVICESSUCHASNETWORKEQUIPMENT)NMEMORYDATABASESEMERGEDASANOTHERSEGMENTDESIGNEDFORVERYHIGHLEVELSOFPERFORMANCEANDSTREAMORIENTEDDATABASESFOCUSEDONMANAGINGDATAASITFLOWEDOVERANETWORK

    $ESPITETHEEMERGENCEOFSUBSEGMENTSOFTHEDATABASEMARKET31,HASREMAINEDACOMMONDENOMINATORACROSSTHEMALL&ORTYYEARSAFTERITFIRSTEMERGED31,HASBROADENEDTREMENDOUSLYAND31,SDOMINANCEASTHEDATABASESTANDARDREMAINSVERYSTRONG.EWCHALLENGESCONTINUETOEMERGETHENEEDTOINCORPORATE8-,ANDITSHIERARCHICALDATAMODELANDTHENEEDTOSUPPORTMASSIVEQUANTITIESOFDATATOSUPPORTDATAMANAGEMENTONTHESCALEOFTHE)NTERNETARETWOOFTHEMOSTRECENT"UTTHEHISTORYOFTHEPASTYEARSINDICATESTHAT31,ANDTHERELATIONALMODELHAVEAPOWERFULABILITYTOEMBRACEANDADAPTTONEWDATAMANAGEMENTNEEDS

    31,3TANDARDS/NEOFTHEMOSTIMPORTANTDEVELOPMENTSINTHEMARKETACCEPTANCEOF31,ISTHEEMERGENCEOF31,STANDARDS2EFERENCESTOhTHE31,STANDARDvUSUALLYMEANTHEOFFICIALSTANDARDADOPTEDBYTHE!MERICAN.ATIONAL3TANDARDS)NSTITUTE!.3)ANDTHE)NTERNATIONAL/RGANIZATIONFOR3TANDARDIZATION)3/(OWEVERTHEREAREOTHERIMPORTANT31,STANDARDSINCLUDINGTHEDEFACTOSTANDARDFORSOMEPARTSOFTHE31,THATHAVEBEENDEFINEDBY)"-S$"PRODUCTFAMILYAND/RACLES31,DIALECTWHICHHASADOMINANTINSTALLEDBASEMARKETSHARE

    4HE!.3))3/3TANDARDS7ORKONTHEOFFICIAL31,STANDARDBEGANINWHEN!.3)CHARGEDITS8(COMMITTEEWITHDEFININGASTANDARDRELATIONALDATABASELANGUAGE!TFIRSTTHECOMMITTEEDEBATEDTHEMERITSOFVARIOUSPROPOSEDDATABASELANGUAGES(OWEVERAS)"-SCOMMITMENTTO31,INCREASEDAND31,EMERGEDASADEFACTOSTANDARDINTHEMARKETTHECOMMITTEESELECTED31,ASTHEIRRELATIONALDATABASELANGUAGEANDTURNEDTHEIRATTENTIONTOSTANDARDIZINGIT

  • # H A P T E R 3 1 , I N 0 E R S P E C T I V E

    0!24)

    4HERESULTING!.3)STANDARDFOR31,WASLARGELYBASEDON$"31,ALTHOUGHITCONTAINEDAFEWMAJORDIFFERENCESFROM$"!FTERSEVERALREVISIONSTHESTANDARDWASOFFICIALLYADOPTEDAS!.3)STANDARD8INANDASAN)3/STANDARDIN4HE!.3))3/STANDARDWASALSOADOPTEDASA&EDERAL)NFORMATION0ROCESSING3TANDARD&)03BYTHE53GOVERNMENT4HISEARLY31,STANDARDSLIGHTLYREVISEDANDEXPANDEDINISUSUALLYCALLEDTHE31,STANDARDOR31,

    -ANYOFTHE!.3)AND)3/STANDARDSCOMMITTEEMEMBERSWEREREPRESENTATIVESFROMDATABASEVENDORSWHOHADEXISTING31,PRODUCTSEACHIMPLEMENTINGASLIGHTLYDIFFERENT31,DIALECT,IKEDIALECTSOFHUMANLANGUAGESTHE31,DIALECTSWEREGENERALLYVERYSIMILARTOONEANOTHERBUTWEREINCOMPATIBLEINTHEIRDETAILS)NMANYAREASTHECOMMITTEESIMPLYSIDESTEPPEDTHESEDIFFERENCESBYOMITTINGSOMEPARTSOFTHELANGUAGEFROMTHESTANDARDANDSPECIFYINGOTHERSAShIMPLEMENTERDEFINEDv4HESEDECISIONSALLOWEDEXISTING31,IMPLEMENTATIONSTOCLAIMBROADADHERENCETOTHERESULTING!.3))3/STANDARDBUTMADETHEINITIALSTANDARDRELATIVELYWEAK

    4OADDRESSTHEHOLESINTHEORIGINALSTANDARDTHE!.3)COMMITTEECONTINUEDITSWORKANDDRAFTSFORANEWMORERIGOROUSh31,vSTANDARDWERECIRCULATED5NLIKETHESTANDARDTHE31,DRAFTSSPECIFIEDFEATURESCONSIDERABLYBEYONDTHOSEFOUNDINCURRENTCOMMERCIAL31,PRODUCTS%VENMOREFARREACHINGCHANGESWEREPROPOSEDFORAFOLLOWON31,STANDARD)NADDITIONTHEDRAFTSTANDARDSATTEMPTEDTOOFFICIALLYSTANDARDIZEPARTSOFTHE31,WHEREDIFFERENTPROPRIETARYSTANDARDSHADLONGSINCEBEENSETBYTHEVARIOUSMAJOR$"-3BRANDS!SARESULTTHEPROPOSED31,AND31,STANDARDSWEREAGOODDEALMORECONTROVERSIALTHANTHEINITIAL31,STANDARD4HE31,STANDARDWEAVEDITSWAYTHROUGHTHE!.3)APPROVALPROCESSANDWASFINALLYAPPROVEDIN/CTOBER7HILETHEORIGINALSTANDARDHADLESSTHANPAGESTHEREVISEDSTANDARDOFFICIALLYCALLED31,HADNEARLYPAGES

    4HESTANDARDSCOMMITTEEACKNOWLEDGEDTHELARGESTEPFROM31,TO31,BYEXPLICITLYCREATINGTHREELEVELSOF31,STANDARDSCOMPLIANCE4HELOWESTCOMPLIANCELEVEL%NTRY,EVELREQUIREDONLYMINIMALADDITIONALCAPABILITYBEYONDTHE31,STANDARD4HEMIDDLEONE)NTERMEDIATE,EVELWASCREATEDASANACHIEVABLEMAJORSTEPBEYOND31,BUTAVOIDEDTHEMOSTCOMPLEXSYSTEMDEPENDENTAND$"-3BRANDDEPENDENTISSUES4HETHIRDCOMPLIANCELEVEL&ULLREQUIREDAFULLIMPLEMENTATIONOFALLAREAS4HROUGHOUTTHEPUBLISHEDSTANDARDEACHDESCRIPTIONOFEACHFEATUREINCLUDESADEFINITIONOFTHESPECIFICASPECTSOFTHATFEATURETHATMUSTBESUPPORTEDTOACHIEVEVARIOUSLEVELSOFCOMPLIANCE4ODAYSPECIALIZEDDATABASESSUCHASTHOSEUSEDINEMBEDDEDAPPLICATIONSORSUPPORTEDBYOPENSOURCEEFFORTSSTILLOFFERLOWERLEVELSOF31,STANDARDCOMPLIANCEINSOMEAREASBUTALLOFTHEMAJORENTERPRISECLASSDATABASESYSTEMSHAVEEVOLVEDTOFULLYSUPPORTTHE31,STANDARD

    !FTERTHEADOPTIONOF31,31,STANDARDSWORKTOOKADIFFERENTDIRECTION4HESINGLESTANDARDSCOMMITTEEBROKEUPINTOANUMBEROFDIFFERENTCOMMITTEESFOCUSEDONDIFFERENTEXTENSIONSTOTHELANGUAGE3OMEOFTHESESUCHASSTOREDPROCEDURECAPABILITIESWEREALREADYFOUNDINMANYCOMMERCIAL31,PRODUCTSANDPOSEDTHESAMESTANDARDIZATIONCHALLENGESFACEDBY31,/THERSSUCHASPROPOSEDOBJECTEXTENSIONSTO31,WERENOTYETWIDELYAVAILABLEORFULLYIMPLEMENTEDBUTTHEDATABASEVENDORSWEREUNDERSIGNIFICANTPRESSURETOADDRESSTHEMASOBJECTORIENTEDTECHNOLOGIESAND8-,SURGEDINIMPORTANCE.EWREVISIONSTOTHESTANDARDWEREPRODUCEDINANDAGAININAND4HEREVISIONINCLUDEDSIGNIFICANTEXTENSIONTOTHE8-,PARTSOFTHESTANDARD

  • 0 A R T ) ! N / V E R V I E W O F 3 1 ,

    !TTHISWRITINGTHE!.3))3/STANDARDHADBEENEXPANDEDINTODEFINEDh0ARTSv!FEWOFTHEMWEREDROPPEDAFTERSOMEINITIALACTIVITYSOMEWEREMERGEDBACKINTOOTHERPARTSANDSOMECONTINUEASSTANDALONEPARALLELEFFORTSWITHINTHEOVERALLSTANDARD

    v 0ARTn31,&RAMEWORKCONTAINSCOMMONDEFINITIONSANDSERVESASAhTABLEOFCONTENTSvFORTHEOTHERPARTS

    v 0ARTn31,&OUNDATIONISTHELARGESTPARTANDCARRIESTHEMAINSTREAMDEFINITIONOFTHE31,STATEMENTSTHATDEFINETHESTRUCTUREOFADATABASEANDMANIPULATEDATA)TISTHEDESCENDANTOFTHEEARLY31,AND31,VERSIONSOFTHESTANDARD)THASBEENSIGNIFICANTLYEXTENDEDTOINCLUDE31,STRUCTURESFORBUSINESSANALYTICS

    v 0ARTn31,#,)#ALL,EVEL)NTERFACEDESCRIBESTHEPROCEDURALCALLLEVELINTERFACEBETTERKNOWNAS-ICROSOFTS/$"#STANDARD)TDEBUTEDIN

    v 0ARTn31,03-0ERSISTENT3TORED-ODULESDESCRIBESPROCEDURALEXTENSIONSTO31,PARALLELINGTHEFEATURESFOUNDINPOPULAR31,PROCEDURALLANGUAGESLIKE/RACLES0,31,

    v 0ARTn31,"INDINGSDESCRIBEDHOW31,ISEMBEDDEDINOTHERPROCEDURALLANGUAGES4HISPARTWASMERGEDINTO0ARTn31,&OUNDATIONSINTHE31,VERSIONOFTHESTANDARD

    v 0ARTn31,4RANSACTIONWASFOCUSEDONEXTENSIONSTOTHE8!DISTRIBUTEDTRANSACTIONSTANDARDBUTWASDROPPED

    v 0ARTn31,4EMPORALWASFOCUSEDONEXTENDING31,TODEALWITHTIMEORIENTEDDATABUTWASDROPPED

    v 0ARTn31,/BJECTSHELDTHEOBJECTORIENTEDEXTENSIONSTO31,DURINGTHEDEVELOPMENTOF31,4HESEEXTENSIONSWEREMERGEDBACKINTO0ARTn&OUNDATIONIN31,

    v 0ARTn31,-%$-ANAGEMENTOF%XTERNAL$ATAADDSFACILITIESTOALLOW31,TOPROCESSNONRELATIONALDATASOURCESANDAPPEAREDIN31,

    v 0ARTn31,/,"/BJECT,ANGUAGE"INDINGSDESCRIBESACCESSTO31,FROM*AVA)TISRELATEDTO*$"#ANDEMBEDDED31,FOR*AVAANDAPPEAREDIN31,

    v 0ARTn31,3CHEMATACONTAINSSTANDARDSFORTHEhDATABASECATALOGvORSYSTEMINFORMATIONTABLESTHATSELFDESCRIBEADATABASE4HISSPECIFICATIONWASIN0ARTIN31,BUTWASSEPARATEDOUTINTOITSOWNPARTIN31,

    v 0ARTn31,2EPLICATIONWASSTARTEDTODEFINESTANDARDSFORHOWREPLICATIONFROMONE31,DATABASETOANOTHERISSPECIFIEDBUTWASDROPPED

    v 0ARTn31,*24*AVA2OUTINESAND4YPESDESCRIBESROUTINESANDTYPESUSEDINTHE*AVALANGUAGETOACCESS31,DATABASESANDFIRSTAPPEAREDIN31,

    v 0ARTn31,8-,DESCRIBESHOW%XTENSIBLE-ARKUP,ANGUAGE8-,ISINTEGRATEDINTOTHE31,LANGUAGE)TFIRSTAPPEAREDIN31,ANDHASBEENSIGNIFICANTLYEXPANDEDSINCE

    &ROMAFEWHUNDREDPAGESDESCRIBINGTHECOMMONCOREFEATURESOFTHE31,LANGUAGEINTHE!.3))3/31,STANDARDHASTHUSGROWNDRAMATICALLYINCOMPLEXITYSCOPEANDLENGTH4HEhREALv31,STANDARDOFCOURSEISTHE31,IMPLEMENTEDINPRODUCTSTHATARE

  • # H A P T E R 3 1 , I N 0 E R S P E C T I V E

    0!24)

    BROADLYACCEPTEDBYTHEMARKETPLACE&ORTHEMOSTPARTPROGRAMMERSANDUSERSTENDTOSTICKWITHTHOSEPARTSOFTHELANGUAGETHATARETHESAMEACROSSABROADRANGEOFPRODUCTS4HEINNOVATIONOFTHEDATABASEVENDORSCONTINUESTODRIVETHEINVENTIONOFMOSTNEW31,EXTENSIONS3OMEOFTHESEFAILTOGAINTRACTIONANDFADEFROMTHELANGUAGEOVERTIME/THERSAREINTRODUCEDANDREMAINYEARSLATERONLYFORBACKWARDCOMPATIBILITYOTHERSFINDCOMMERCIALSUCCESSANDMOVEINTOTHEMAINSTREAMANDEVENTUALLYFINDTHEIRWAYINTOTHEOFFICIALSTANDARD

    /THER%ARLY31,3TANDARDS!LTHOUGHITWASTHEMOSTWIDELYRECOGNIZEDTHE!.3))3/STANDARDWASNOTTHEONLYSTANDARDINTHEEARLYDAYSOF31,8/0%.A%UROPEANVENDORGROUPALSOADOPTED31,ASPARTOFITSSUITEOFSTANDARDSFORAPORTABLEAPPLICATIONENVIRONMENTBASEDON5.)84HE8/0%.STANDARDSPLAYEDAMAJORROLEINTHEDEVELOPMENTOFTHE%UROPEANCOMPUTERMARKETWHEREPORTABILITYAMONGCOMPUTERSYSTEMSFROMDIFFERENTVENDORSWASAKEYCONCERN

    )"-ALSOINCLUDED31,INTHESPECIFICATIONOFITSBOLDS3YSTEMS!PPLICATION!RCHITECTURE3!!BLUEPRINTPROMISINGTHATALLOFITS31,PRODUCTSWOULDEVENTUALLYMOVETOTHIS3!!31,DIALECT!LTHOUGH3!!FAILEDTOACHIEVEITSPROMISEOFUNIFYINGTHE)"-PRODUCTLINETHEMOMENTUMTOWARDAUNIFIED)"-31,CONTINUED7ITHITSMAINFRAME$"DATABASEASTHEFLAGSHIP)"-INTRODUCED$"IMPLEMENTATIONSFOR/3ITSPERSONALCOMPUTEROPERATINGSYSTEMANDFORITS23LINEOF5.)8BASEDWORKSTATIONSANDSERVERS4HEEXPANSIONOF$"NOTONLYACROSSHARDWARESYSTEMSBUTALSOACROSSMANYDIFFERENTTYPESOFDATAWASEMBODIEDIN)"-SNAMINGONEOFITSLATERIMPLEMENTATIONS$"5NIVERSAL$ATABASEOR5$"

    /$"#ANDTHE31,!CCESS'ROUP!NIMPORTANTAREAOFDATABASETECHNOLOGYNOTADDRESSEDBYTHEEARLIEROFFICIALSTANDARDSISDATABASEINTEROPERABILITYTHEMETHODSBYWHICHDATACANBEEXCHANGEDAMONGDIFFERENTDATABASESUSUALLYOVERANETWORK)NAGROUPOFVENDORSFORMEDTHE31,!CCESS'ROUPTOADDRESSTHISPROBLEM4HERESULTING31,!CCESS'ROUPSPECIFICATIONFOR2EMOTE$ATABASE!CCESS2$!WASPUBLISHEDIN5NFORTUNATELYTHE2$!SPECIFICATIONWASCLOSELYTIEDTOTHE/3)NETWORKINGPROTOCOLSWHICHLOSTTHENETWORKINGBATTLETOTHE)NTERNETS4#0)0SUITESO2$!WASNEVERWIDELYIMPLEMENTED

    !SECONDSTANDARDFROMTHE31,!CCESS'ROUPHADFARMOREMARKETIMPACT!T-ICROSOFTSURGINGANDINSISTENCETHE31,!CCESS'ROUPEXPANDEDITSFOCUSTOINCLUDEACALLLEVELINTERFACEFOR31,"ASEDONADRAFTFROM-ICROSOFTTHERESULTING#ALL,EVEL)NTERFACE#,)SPECIFICATIONWASPUBLISHEDIN-ICROSOFTSOWN/PEN$ATABASE#ONNECTIVITY/$"#SPECIFICATIONBASEDONTHE#,)STANDARDWASPUBLISHEDTHESAMEYEAR7ITHTHEMARKETPOWEROF-ICROSOFTBEHINDITANDTHEhOPENSTANDARDSvBLESSINGOFTHE31,!CCESS'ROUP/$"#EMERGEDASTHEDEFACTOSTANDARDINTERFACEFOR0#ACCESSTO31,DATABASES!PPLEAND-ICROSOFTANNOUNCEDANAGREEMENTTOSUPPORT/$"#ON-ACINTOSHAND7INDOWSINTHESPRINGOFGIVING/$"#INDUSTRYSTANDARDSTATUSINBOTHPOPULARGRAPHICALUSERINTERFACEENVIRONMENTS/$"#IMPLEMENTATIONSFOR5.)8BASEDSYSTEMSSOONFOLLOWED)NTHE/$"#INTERFACEEFFECTIVELYBECAMEAN!.3))3/STANDARDWITHTHEPUBLICATIONOFTHE31,#ALL,EVEL)NTERFACE#,)STANDARD

    /VERTHEPASTDECADE/$"#HASCONTINUEDTOEVOLVEBUTATASLOWERPACE-ICROSOFTSTILLSUPPORTS/$"#BUTHASFOCUSEDMAJOREFFORTINTOBUILDINGHIGHERLEVELMOREOBJECTORIENTED

  • 0 A R T ) ! N / V E R V I E W O F 3 1 ,

    INTERFACESFORUNIVERSALDATABASEACCESS(OWEVER/$"#STILLPLAYSAMAJORROLEPROVIDINGPORTABILITYACROSSDATABASESFORMAJORENTERPRISEAPPLICATIONSANDFORDATABASETOOLS)TSQUITECOMMONFORADATABASETOOLORANENTERPRISEAPPLICATIONTOSUPPORTSPECIFIChDRIVERSvTHATOPTIMIZEITFORDIRECTACCESSTO/RACLEAND$"AND31,3ERVERUSINGTHEIRPROPRIETARYCALLLEVELINTERFACES4HEAPPLICATIONWILLTYPICALLYINCLUDEANADDITIONALDRIVERTHATUSES/$"#ASAWAYTOSUPPORTABROADRANGEOFOTHERDATABASES"ECAUSESOMANYAPPLICATIONSANDTOOLSADOPTTHISAPPROACHNEARLYALLDATABASEVENDORSOFFER/$"#ACCESSSOMETIMESASTHEIRPRIMARYCALLLEVELINTERFACEANDSOMETIMESASASUPPLEMENTTOAHIGHERPERFORMANCEPROPRIETARYINTERFACE

    *$"#AND!PPLICATION3ERVERS4HEEXPLOSIVEPOPULARITYOFTHE)NTERNETDROVETHEFURTHERDEVELOPMENTOFDATABASEACCESSSTANDARDSTOSUPPORTTHEACCOMPANYINGRISEOFTHEOBJECTORIENTED*AVAPROGRAMMINGLANGUAGE*AVAEVENTUALLYBECAMETHESTANDARDLANGUAGEFORBUILDING)NTERNETDELIVEREDAPPLICATIONSTHATRANON*AVABASEDAPPLICATIONSERVERS3UN-ICROSYSTEMSTHEINVENTOROF*AVALEDTHEEFFORTTOSTANDARDIZETHEUSEOF*AVAFORAPPLICATIONSERVERSTHROUGHTHE*AVA%NTERPRISE%DITION*%%SPECIFICATION*%%INCLUDED*AVA$ATABASE#ONNECTIVITY*$"#ASITSSTANDARDFOR*AVAACCESSTORELATIONALDATABASES5NLIKEDATABASEACCESSFORTHE#PROGRAMMINGLANGUAGEWHEREPROPRIETARYCALLLANGUAGEINT