SQL Fundamentals

Aoao e uiga i DDL, DML ma IOINI

O le Language Structured Query o se tasi lea o poloka faavae autu o le faleoloa o faʻamaumauga i aso nei. O loʻo faʻamatalaina e SQL le auala na faʻaaogaina e fatufatu ma faʻaaogaina ai fesoʻotaʻiga vavalalata i luga o faʻavae tetele uma. I le tepa muamua, o le gagana e foliga mai e taufaamatau ma faigata, ae e le o mea uma e faigata.

O lenei folasaga i faavae i tua atu o SQL o loʻo tilotilo atu i nisi o tulafono autu na faʻaaogaina e fatufatu ai ma fesuisuiaʻi faʻamaumauga.

E uiga i le SQL

O le faʻamaonia saʻo o le SQL o se mataupu fefinauai i totonu o le alalafaga database. I lona tulaga faʻasalalau SQL, na faʻaalia ai e le American National Standards Institute le faʻatagaina aloaia o le "es queue el." Ae ui i lea, o le tele o polofesa faʻapitoa i mea taufaasālalau ua latou faʻaogaina le faʻasalaga o le "faʻailoga. O le filifiliga e mo oe.

O le SQL e sau i le tele o mea manogi. O faʻaogaina faʻamaumauga o Oracle faʻaaoga lona PL / SQL faʻapitoa. O Microsoft SQL Server na faʻaaogaina le Transact-SQL. O fesuiaiga uma e faʻavae i luga o le tulaga faʻapitoa o le ANSI SQL. O lenei folasaga e faʻaaogaina ai tulafono faʻatonutonu a le ANSI o loʻo galue i luga o soo se fesoʻotaiga faʻatusatusa i fesoʻotaiga.

DDL ma le DML

O tulafono SQL e mafai ona vaeluaina i ni gagana laiti se lua. O le Data Definition Language (DDL) o loʻo i ai tulafono na faʻaaogaina e fatufatu ai ma faʻaumatia nofoaga o faʻamatalaga ma mea faʻamaumauga. A uma ona faʻamatalaina le fausaga faʻamaufaʻailogaina i le DDL, e mafai e tagata faʻapitoa faʻamatalaga ma tagata faʻaoga le faʻaaogaina o le Gagana Faʻamatalaga Faʻamatalaga (DML) e faʻaofi, toe aumai ma toe faʻaoga faamatalaga o loʻo i totonu.

Faʻamatalaga Faʻamatalaga Faʻamatala Upu

O le Faʻamatalaga o Faʻamatalaga o Faʻamatalaga e faʻaaogaina e fatufatu ai ma faʻaumatia nofoaga o faʻamaumauga ma faʻamaumauga autu O nei faʻatonuga e faʻaaoga muamua e pule o faʻamaumauga i le taimi o le faʻatulagaina ma le faʻaaogaina o vaega o le polokalama o faʻamaumauga. O se vaaiga lea i le fausaga ma le faʻaaogaina o tulafono faavae DDL e fa:

Faʻatau. O le faʻapipiʻiina o se 'auʻaunaga o faʻamaumauga i luga ole komepiuta e faʻatagaina ai oe e fatuina ma pulea le tele o faʻamaumauga tutoatasi. Mo se faʻataʻitaʻiga, atonu e te manao e teu se faʻamaumauga o fesoʻotaʻiga a le aufaʻatau mo lau 'auʻaunaga faʻatau ma se' auʻaunaga mo tagata faigaluega mo lau mataʻitusi HR. O le tulafono CREATE ua faʻaaoga e faʻavaeina ai nei faʻamaumauga i luga o lau faʻavae. Mo se faʻataʻitaʻiga, o le poloaiga:

Faʻataʻoti tagata faigaluega o le DATABASE

fatufatu se faʻamaumauga e leai se avanoa e taʻua o "tagata faigaluega" i luga o lau DBMS. A maeʻa le fausiaina o le database, o le isi laasaga o le fatuina lea o laulau e aofia ai faʻamaumauga. O se isi fesuiaiga o le tulafono CREATE e mafai ona faʻaaoga mo lenei faʻamoemoe. O le poloaiga:

TATAU TABLE personal_info (muamua_name char (20) e leai se igoa, igoa mulimuli_name (20) e le o se mea le aoga, faigaluega_id e le faalēaogāina)

faatuina se laulau ua faaulutalaina "personal_info" i le upega tafaʻilagi oi ai nei. I le faʻataʻitaʻiga, o le laulau e aofia ai uiga e tolu: igoa muamua, igoa mulimuli ma le faigaluega_id faʻatasi ai ma nisi faʻamatalaga faaopoopo.

Faʻaaoga. O le faʻatulagaina o le USE ua mafai ai ona e faʻamaonia le faʻamaumauga e te manaʻo e galue ai i totonu o lau DBMS. Mo se faʻataʻitaʻiga, afai o loʻo e galue nei i le faleoloa faatau ma e manaʻo e tuʻuina atu nisi o tulafono o le a aʻafia ai le 'auʻaunaga faʻamatalaga a tagata faigaluega, faʻamuamua i latou i le faʻatonuga o le faʻatonuga a le SQL:

Faʻaaoga tagata faigaluega

E taua le faʻaeteete i taimi uma i le 'aufaʻamatalaga o loʻo e galue ai aʻo leʻi tuʻuina atu tulafono a le SQL e faʻatautaia ai faʻamaumauga.

ALTER. I le taimi lava e te faia ai se laulau i totonu o se faʻamaumauga, atonu e te manaʻo e toe faʻaleleia lona faʻamatalaga. O le tulafono a le ALTER e mafai ai e oe ona fai ni suiga i le fausaga o se laulau e aunoa ma le tapeina ma toe faia. Vaʻai i le poloaiga lenei:

ALTER TABLE personal_info ADD totogi totogi null

O lenei faataitaiga e faaopoopo atu ai se uiga fou i le laulau patino_info-o le totogi o le tagata faigaluega. O le finauga o le "tupe" o loʻo faʻamaonia ai o le totogi o le tagata faigaluega o loʻo teuina e faʻaaoga ai faʻatausaga o tupe ma kene. Ma le mea mulimuli, o le upu "null" o loʻo taʻuina atu i le database o loʻo le afaina mo lenei fanua e leai se aoga mo soʻo se tagata faigaluega.

DROP. O le poloaiga faaiu o le Data Definition Language, DROP, e mafai ai ona tatou aveese mea uma o mea tau komepiuta mai a tatou DBMS. Mo se faʻataʻitaʻiga, afai tatou te mananaʻo e aveese faʻamaonia le laulau patino_info na matou faia, matou te faʻaaogaina le poloaiga lenei:

DROP TABLE personal_info

E faʻapea foʻi, o le faʻatonuga o loʻo i lalo o le a faʻaaogaina e aveesea ai le 'auʻaunaga faʻamaumauga a tagata faigaluega uma:

DROP DATABASE tagata faigaluega

Faaaoga lenei poloaiga ma le faʻaeteete. O le DROP poloaiga e aveese faʻamaumauga uma o faʻamaumauga mai lau 'upega tafaʻilagi. Afai e te manaʻo e aveese faʻamaumauga a le tagata lava ia, faʻaaoga le tulafono DELETE o le Faʻasalalauga Faʻamatalaga Faʻamatalaga.

Faʻasalalauga Faʻasologa o Faʻamatalaga

O le Gagana Faʻamatalaga Faʻamatalaga (DML) e faʻaaogaina e toe aumai ai, faʻapipiʻi ma fesuiaʻi faʻamatalaga faʻamatalaga. O nei faʻatonuga e faʻaaogaina e tagata faʻapitoa uma o faʻamaumauga i le taimi o le faʻatinoga masani o le database.

TUSI. O le tulafono INSERT i le SQL e faʻaaogaina e faʻaopoopo ai faʻamaumauga i se laulau oi ai. Toe foʻi atu i le faʻamatalaga patino_info mai le vaega muamua, manatu o loʻo manaʻomia e le matou matagaluega le faʻaopoopoina o se tagata fou i lana faʻamaumauga. E mafai ona e faʻaaogaina se poloaiga e talitutusa ma lenei:

TUSI I totonu o faʻamaumauga patino_info ('bart', 'simpson', 12345, $ 45000)

Manatua e fa tulaga faʻamaonia faʻamaonia mo le faamaumauga. E fetaui nei ma le laulau i totonu o le faasologa na faʻamalamalamaina: muamua_name, igoa mulimuli, faigaluega_id ma totogi.

FILIFILI. O le tulafono SELET o le tulafono sili ona masani ona faʻaaogaina i le SQL. E mafai ai e tagata faʻapipiʻi faʻamatalaga ona maua mai faʻamatalaga patino latou te manaʻo ai mai se 'upega tafaʻilagi o faʻatinoga. Vaʻavaʻai i ni nai faʻataʻitaʻiga, toe faʻaaoga le laulau patino_info mai le 'upega tafaʻilagi o tagata faigaluega.

O le poloaiga o loʻo faʻaalia i lalo e toe maua uma faʻamatalaga o loʻo aofia i totonu o le laulau patino_info. Manatua o le asterisk e faʻaaogaina e fai ma fasi pepa i totonu o le SQL. O lona uiga moni "Filifili mea uma mai le laulau patino_info."

Filifili * MAI le personal_info

I le isi itu, e ono manao tagata e faʻagata uiga e maua mai le faʻamaumauga. Mo se faʻataʻitaʻiga, e mafai e le matagaluega o Aufaigaluega ona manaʻomia se lisi o igoa mulimuli o tagata faigaluega uma i le kamupani. O le faʻasologa o le faʻasalaga o loʻo mulimuli mai o le a toe maua na o na faamatalaga:

Filifili le igoa mulimuli FROM personal_info

O le WHERE e mafai ona faʻaaogāina le fuaiupu e faʻatapulaʻa ai faʻamaumauga e maua mai ia i latou e ausia tuʻutuʻuga maoti. E mafai e le Ofisa Sili o Pulega ona fiafia i le toe iloiloina o faamaumauga a le aufaigaluega uma e sili ona totogi. O le poloaiga lea e toe aumai uma faʻamatalaga o loʻo aofia i totonu o le tagata lava ia mo faʻamaumauga o loʻo i ai le totogi sili atu nai lo le $ 50,000:

FILIFILI * MAI personal_info TUPE totogi> $ 50000

FUAFUAGA. O le UPDATE poloaiga e mafai ona faʻaaoga e sui ai le faʻamatalaga o loʻo i totonu o se laulau, pe i luga o le tele poʻo le tagata taʻitoʻatasi. Manatua o le kamupani e tuʻuina atu i tagata faigaluega uma le 3 pasene o le tau o le faʻatupulaia o latou totogi i tausaga taʻitasi. O le faʻasologa o le SQL lea e mafai ona faʻaaoga e faʻaaoga vave ai lenei mea i tagata faigaluega uma o loʻo teuina i totonu o le database:

UPDATE personal_info SET salaria = totogi * 1.03

A faʻaalia e le tagata faigaluega fou Bart Simpson le faʻataunuʻuga i luga ma tua atu o le valaau o le tiute, e manaʻo le pulega e iloa mea na ausia e lona tino ma se $ 5,000 le maualuga. O le WHERE e mafai ona faʻaaogā le fuaiupu e faʻatasi ai le tamaititi a Bart mo lenei faʻavae:

UPDATE personal_info SAUNIGA totogi = totogi + $ 5000 ATI employee_id = 12345

TULAGA. Mulimuli ane, sei o tatou tilotilo i le tulafono DELETE. O le ae iloa o le faʻapipiʻiina o lenei poloaiga e talitutusa ma le isi tulafono a le DML. O le mea e leaga ai, o la matou lipoti fou o tupe maua a le kamupani e leʻi fetaui lelei ma faʻamoemoega ma ua le toe lelei Bart. O le TULAFONO o le poloaiga ma se WHERE fuaiupu e mafai ona faʻaaoga e aveese ai ana faamaumauga mai le laulau patino_info:

TATAU MAI personal_info TUAI staff_id = 12345

TULAGA

I le taimi nei ua e aʻoaʻoina ia faʻavae o le SQL, ua oʻo i le taimi e faʻaauau ai i se tasi o manatu sili ona mamana e tatau ona ofoina mai e le gagana-le faʻamatalaga a le JOIN. O se faʻamatalaga tuʻufaʻatasia e mafai ai e oe ona faʻapipiʻi faʻamaumauga i luga o laulau e tele e faʻaleleia lelei ai le tele o faʻamaumauga. O nei faʻamatalaga o loʻo i ai le mana moni o se nofoaga faʻamaumauga.

Ina ia suʻesuʻeina le faʻaaogāina o le faʻatonuina o le IOIN e faʻapipiʻi ai faʻamatalaga mai laulau e lua, faʻaauau le faʻataʻitaʻiga e faʻaaoga le laulau PERSONAL_INFO ma faʻaopopo se laulau faaopoopo i le faʻafefiloi. Manatua ia i ai sau laulau e taʻua o DISCIPLINARY_ACTION na faia ma le faʻamatalaga lenei:

Faʻasoa TABLE disciplinary_action (action_id i le faalēaogā, faigaluega_id e le faalēaogāina, faʻamatalaga char (500))

O lenei laulau o loʻo i ai iuga o amioga faʻasalaga i tagata faigaluega a le kamupani. O le a e maitauina e le oi ai ni faʻamatalaga e uiga i le tagata faigaluega e ese mai i le numera o le tagata faigaluega. E faigofie lava ona mafaufau i le tele o faʻataʻitaʻiga atonu e te manaʻo e faʻaopoopoina faʻamatalaga mai le DISCIPLINARY_ACTION ma le PERSONAL_INFO.

Manatua ua faʻatautaia oe i le fatuina o se lipoti e lisiina ai amioga faʻasalaga na faia faasaga i tagata faigaluega uma e sili atu lona totogi nai lo le $ 40,000. O le faʻaaogaina o se galuega a le JOIN, i lenei tulaga, e saʻo. E mafai ona tatou toe maua mai lenei faʻamatalaga e faʻaaoga ai le poloaiga lenei:

SELEI personal_info.first_name, personal_info.last_name, disciplinary_action.comga FROM personal_info, disciplinary_action IAʻI patino_info.employee_id = disciplinary_action.employee_id MA personal_info.salary> 40000

O le tulafono e faʻamautu ai ia laulau e lua matou te mananao e auai i le fuaiupu FROM, ona aofia ai lea o se faʻamatalaga i totonu o le WHERE fuaiupu e faʻatapulaaina ai iuga i faʻamaumauga na fetaui ma ID tagata faigaluega ma ausia a matou taʻiala o se totogi sili atu i le $ 40,000.