[Powered by Google Translate] [SQL]
[CHRISTOPHER Bartholomew] [Harvardin yliopisto]
[Tämä on CS50] [CS50 TV]
Joten, ohjelmoijat käyttävät tietokantoja välineenä tallentaa ja järjestää
Pitkäjänteisen tietoja sisällä taulukoita.
Tämä tarkoittaa, että tiedot on tallennettu haihtumattomaan mediaanit kuten kiintolevyn,
ja vaikka tietokone on pois päältä, data on vielä ehjä.
Ja kuten ohjelmoijat, meidän ohjelmat käyttävät tietokantoihin skenaarioita kuten varastointi
käyttäjän tietoja verkkolomakkeita, katsellen ylös inventaario,
tai päivittäminen tietoa siitä, mitä sivustoja näkyviin.
Mutta miten me oikeastaan ​​vuorovaikutuksessa meidän tietokantaan,
vai mitä käytämme lukea, tallentaa, poistaa,
ja päivittää tietomme näiden taulujen?
No, vastaus on, että käytämme erityinen tietokanta kieli
joka vaikuttaa suoraan meidän tietokantataulukoihin.
Se nimi on Structured Query Language,
[Structured Query Language]
tai mitä nimitystä SQL.
>> Nyt, [SE-quel] tai SQL, ei ohjelmointikieli,
vaan se on kieli, joka tarjoaa standardin sarja komentoja
hakea ja käsitellä tietoja useista tietokannan hallintajärjestelmiä.
Varten CS50, menemme yli neljä peruskomennot:
Valitse, lisätä, päivittää ja poistaa.
Lisäksi me hyödyntää tietokannan web-käyttöliittymä nimeltään phpMyAdmin,
joka asennetaan laitteen kirjoittaa SQL-lauseet.
Joten auttaa muistamaan näitä komentoja,
Olen tuonut joitakin cupcakes kaapissa avustamaan meidän skenaarioita.
Sano olet cupcake tietokantaan,
jonne tallennetaan kaikki tietoja cupcakes.
Nyt, tietokannat voivat sisältää useita taulukoita
ja taulukot itse voi sisältää useita sarakkeita.
Sisällä cupcake: n tietokantaan, meillä on taulukko nimeltään cupcake_cupboard.
Tämä taulukko voidaan tallentaa kaikki tiedot cupcakes
jotka ovat hyvin, kaapissa.
Sarakkeet ovat sisällä pöydän edustavat ominaisuuksia cupcake.
Esimerkiksi cupcake_cupboard: n sarakkeet ovat
Kakku ID, CakeType, CakeColor, ja CakeIsNice.
Tämä boolean-kirjoitetaan sarake käytetään määrittämään, jos kakku on mukavaa vai ei kiva.
Aiomme aloittaa kirjoittaminen SELECT.
Valitse lausuntoja käytetään hakea tietoja tietyn tietokannan taulukon.
Tässä skenaariossa haluamme tietää kaiken
kaikista cupcakes että olemassa meidän kaapissa.
Syntaksi tehdä tämä on "Valitse" Space Star, tai *, tilaa avaruudesta meidän pöytä,
joka on cupcake_cupboard.
Mennään eteenpäin ja toteuttaa se.
>> Kuten näemme, nämä ovat kaikki cupcakes meidän kaapissa.
On tärkeää huomata, että * tai tähti, on villi kortti merkki
että tarkoittaa kokoamalla kaikki sarakkeet joidenkin taulukossa.
Normaalisti voimme käyttää tietyn sarakkeen tai sarakkeiden
korvaamalla * varsinaiseen sarakkeen nimeä.
Jos haluamme useita sarakkeita, mutta eivät kaikki, voimme saavuttaa tämän
kirjoittamalla sarakkeen nimet rajoittavan jokaisen sarakkeen pilkulla.
Esimerkiksi, nyt vain hakea CakeId ja CakeType vuonna cupcake_cupboard taulukossa.
Syntaksi tehdä tämä on: SELECT tila CakeID pilkulla
CakeType tilaa meidän pöytä, cupcake_cupboard.
Mennään eteenpäin ja toteuttaa tätä.
Ja tässä meillä on nyt vain kaksi saraketta me määritetty
kunkin cupcake meidän kaapissa.
Voimme myös tarkentaa myös kyselyn tulokset määrittämällä
"Jos" lauseke heti taulukon nimi.
Esimerkiksi, siellä näyttää olevan cupcake meidän kaapissa
että on hyvin, ei niin mukavan näköinen.
Katsotaanpa selvittää kaikki cupcakes meidän kaapissa, jotka ovat hyvin, ei niin mukavan näköinen
käyttämällä "Jos" lauseke.
Syntaksi tehdä tämä on: SELECT tila * tilaa tilaa cupcake_cupboard
tila, jossa tilaa myös ehdollinen sarakkeen, tässä tapauksessa CakeIsNice =,
ja Boolen arvon False.
On tärkeää huomata, että jos käytät jouset, sinun täytyy liittää se puolilainausmerkkejä.
Tämä koskee kaikkia merkkijonoja SQL, tai SQL-tietokannan kannalta, variantti merkkiä
tunnetaan Varchar tietotyyppi.
Tässä tapauksessa käytämme True tai False, mikä on boolean arvo eikä merkkijono.
Mennään eteenpäin ja tätä komentoa.
>> Kas kummaa, se on totta, että meillä on 1 suklaata
ei niin mukava cupcake meidän kaapissa.
Seuraavaksi aiomme kirjoittaa INSERT julkilausuman.
Lisää lausuntoja käytetään lisätä tai lisätä
rivejä ja tiedot tietokantaan taulukon.
Käynti meidän skenaariossa oletetaan, että olemme juuri tehneet upouusi cupcake.
Koska olemme hyvin organisoitu cupcake syövillä, aiomme pitää lisätä tämä uusi cupcake
meidän cupcake_cupboard taulukossa.
Syntaksi tehdä tämä on tämä: Aseta tila avaruuteen meidän pöytä,
cupcake_cupboard, tila (,
ja tässä me määritellä sarakkeiden nimet rajaamaa pilkku,
CakeType pilkulla CakeColor pilkulla CakeIsNice) tilaa.
Tämän jälkeen kirjoitamme sanan VALUES tilaa (ja täällä
astumme arvo kunkin sarakkeen osalta myös rajataan pilkulla.
Tarjouksen, koska ne ovat kaikki Varchar arvoja me ympäröivät heitä puolilainausmerkeissä,
MAAPHKINÄVOI 'pilkku' LIGHT BROWN "pilkku True.
Nyt on tärkeää antaa jokaiselle riville oma numero tunnistaa itsensä.
Autoincrementing sarakkeessa esitetään tätä
"Ei ole kahta samaa tunnukset voi koskaan esiintyä tässä taulukossa."
Mennään eteenpäin ja toteuttaa.
Siellä mennään, kaikki järjestetty.
>> Seuraava SQL-lause, että me kirjoitamme on päivitetty selvitys.
Päivitys lausuma voidaan muuttaa tietoja sisällä sarakkeen
olemassa olevien riville tietokannan taulukkoon.
Aiemmin meidän skenaariossa käyttämällä SELECT, olemme määritelleet cupcake
sisäpuolella cupcake_cupboard pöytä jonka CakeIsNice arvo oli False.
Oletetaan, että samalla kun maapähkinävoita cupcake oli uunissa,
teimme ei-niin-mukava cupcake very nice.
Ovat niin poikkeuksellisesti järjestetty, haluamme cupcake pohtia tätä arvoa
meidän cupcake_cupboard taulukossa.
Siksi mennään päivittää suklaa cupcake kannassa vastaamaan tähän.
Syntaksi on: UPDATE tilaa meidän pöytään, cupcake_cupboard, avaruus SET tilaa
sarake haluamme muuttaa, CakeIsNice =.
Sitten täällä me laitamme uuden arvon True tilaa.
Nyt, koska emme halua päivittää kaikki rivit tämän arvon,
haluamme tarjota "Jos"-lauseke, joka paikantaa meidät
täsmällisestä rivi haluamme muuttaa.
Tässä tapauksessa tiedämme, että on olemassa vain yksi cupcake
että on CakeIsNice arvo False.
Lisäksi olemme myös varmistaa, että olemme päivittää oikean rivin
käyttämällä "Ja" lauseke.
Käytämme "Ja" lauseke tarkentaa meidän kyselyn eteenpäin.
Tässä tapauksessa, koska tiedämme, että cupcake on suklaa,
käytämme tätä CakeType sarakkeessa.
Jos tilaa meidän ehdollisen palstatilaa CakeIsNice tila = False,
ja avaruus CakeType = "suklaa."
Joten, laitat sen kaiken yhteen, tämä päivitys lausunto sanoo
löytää kaikki cupcakes meidän cupcake kaapissa,
ja jos on olemassa cupcake, jonka sarake CakeIsNice sisältää arvon False
ja CakeType sisältää arvon CHOCOLATE,
haluamme päivittää rivien CakeIsNice arvon True.
Joten, mennään eteenpäin ja toteuttaa lausuman.
Ja nyt, me järjestetään.
>> Kaikki tämä puhe cupcakes on tehnyt minusta hieman nälkäinen.
Minun pitäisi auttaa itseäni yhteen.
Mutta jos olen itse syö cupcake, minun pitäisi ainakin myös poistaa sen olemassaolon
meidän cupcake_cupboard taulukosta.
Voit tehdä tämän, käytämme "Poista" lausunto.
"Delete" lausuma voidaan poistaa kaikki tai jotkin rivit taulukosta.
Jos haluat poistaa joitakin erityisiä rivin taulukosta,
sinun on annettava "Jos"-lauseke, mikä määrittää sarakkeen
että pitäisi olla ainutlaatuinen rivi, jonka haluat poistaa.
Tämä on syntaksi: DELETE tilaa avaruudesta meidän pöytään, cupcake_cupboard, tilaa.
Nyt tässä vaiheessa, kun olet näin pitkälle teidän poista ilmoitus
Haluatko olla hyvin varovainen.
Esimerkiksi, jos haluan suorittaa tämän kyselyn ei tarjota joitakin "Jos" lauseke
Haluaisin menettää kaikki tiedot tämän cupcake_cupboard taulukossa
mutta koska olen jo tiedän, että kakku tunnukset ovat ainutlaatuisia, minä käytän
Red Velvet cake ID minun "Missä"-lauseke.
Joissa tilaa meidän sarake, CakeID = 1.
Koska tämä on kokonaisluku-arvo ei ole tarpeen ympäröidä se puolilainausmerkeissä.
Joten, nyt suorittaa lauseen.
No, nyt olemme pyyhki olemassaolon cupcake
meidän cupcake_cupboard taulukosta, meillä on vain yksi asia vasen:
Tee se katoaa.
Olen Christopher Bartholomew. Tämä on CS50.