[Powered by Google Translate] [SQL] [CRISTÓBAL BARTHOLOMEW] [Harvardeko Unibertsitateko] [THIS IS CS50] [CS50 TV] Beraz, programatzaileak erabili datu-base tresna gisa gordetzeko eta antolatzeko gure taulak barruan datu iraunkorrak. Horrek esan nahi du, zure datuak gordetzen ez-lurrunkor, hala nola, disko gogorrean medians eta baita ordenagailua off da, datuak oraindik oso-osorik. Eta, programatzaile gisa, gure programa garatu, hala nola gisa eszenatoki gordetzeko datu-base Erabiltzaileak web forma informazioa, bilatzen inbentarioa, edo guneak erakutsi buruzko informazioa eguneratzeko. Baina, nola ez, gure datu-basean dugu elkarreragin edo zer irakurtzeko, gordetzeko, ezabatzeko erabili dugu, eguneratu eta gure datuak datu-basearen taulak horien barruan? Beno, erantzuna da datu-base hizkuntza mota berezi bat erabiltzen dugun elkarreraginean zuzenean gure datu-basearen taulak. Izena Query Language egituratuta dago, [Egituratuak Query Language] edo zer erreferentzia SQL jo dut. Orain, [Se-Quel], edo SQL, ez da programazio hizkuntza bat, baina horren ordez, hizkuntza bat komando multzo estandar bat eskaintzen da hainbat datu-base kudeaketa sistema bat eta datuak berreskuratzeko manipulatzeko. CS50 helburua lortzeko, joan gara lau oinarrizko komandoak: hautatu, sartu, eguneratu eta ezabatu. Horrez gain, datu-basea izeneko web interfazearen phpMyAdmin garatu dugu, aparatuaren instalatuko da, gure SQL instrukzioak idatzi. Beraz, komando horiek gogoratzen laguntzeko Ekarri dut cupcakes batzuk armairua gure agertoki laguntzeko. Esan Cupcake datu-basea non zure cupcakes buruzko informazio guztia gordetzeko. Orain, datu-base taulak asko eduki eta taulak berak askotan zutabe eduki ditzakete. Gure Cupcake datu-basea barruan, cupcake_cupboard izeneko taula bat behar dugu. Taula hau erabiliko da cupcakes buruzko informazio guztia gordetzeko direla, bai, zure armairua. Zure taula barruan dauden zutabeak Cupcake baten ezaugarriak. Adibidez, cupcake_cupboard zutabeak dira Cake, ID, CakeType, CakeColor, eta CakeIsNice. Boolearra idatzitako zutabe hau erabiltzen da, pastela atsegina da, edo atsegina ez bada zehazteko. Hautatu adierazpen bat idazten hasiko gara. Aukeratu adierazpenak erabiltzen dira datu-base taula jakin datuak eskuratzeko. Egoera honetan, dena jakitea nahi dugu cupcakes gure armairua existitzen. Horretarako sintaxia "Aukeratu" espazio star, edo *, espazioa gure taulan espazioa da, den cupcake_cupboard. Dezagun aurrera, eta hori exekutatu. Ikusten den bezala, horiek cupcakes guztiak dira gure armairua. * Hori, edo izartxo direla garrantzitsua da, basoko txartelaren pertsonaia taula batzuk zutabe guztien bilketa esan nahi du. Normalean, zutabe zehatz bat edo zutabeak sartu ahal izango dugu. * ordez zutabe benetako izena. Nahi zutabe bat baino gehiago izanez gero, baina ez guztiak, hau lortu ahal izango dugu zutabe bakoitzaren mugatzeko koma batek zutabe izenak idatziz. Esate baterako, dezagun bakarrik berreskuratzeko CakeId eta CakeType cupcake_cupboard taula. Horretarako sintaxia da: SELECT espazio CakeID koma Gure mahaia, cupcake_cupboard espazio CakeType. Dezagun aurrera, eta hau exekutatu. Eta hemen, baina oraingoan dugu dugu bi zutabeak zehaztu gure armairua Cupcake bakoitzean. Birfin ere egin ahal izango ditugu, gure kontsulta emaitzak zehaztuz "Non" taula bakarrik izenaren ondoren klausula. Esate baterako, ez dago gure armairua Cupcake hau da, ondo, ez hain politak dira bila. Dezagun irudikatu gure armairua cupcakes diren, ondo, ez hain politak bilatzen "Non" klausula erabiliz. Horretarako sintaxia da: espazio SELECT * FROM espazio espazio cupcake_cupboard espazio NON espazioa gure conditional zutabean, kasu honetan CakeIsNice = False balio boolearra. Garrantzitsua da ari zaren kateak erabiliz gero, erantsi behar duzu komatxorik bakar batean izan den. Egia da, izan ere, SQL kate guztiak, edo, SQL datu-base termino, aldaera pertsonaiak Varchar datatype izenaz ezagutzen dena. Kasu honetan, True edo False ari gara erabiltzen, eta horrek balio boolearra eta ez kate bat da. Dezagun aurrera eta komando hau exekutatu. Lo eta behold, 1 txokolate kasuan dugula da ez hain politak gure armairua Cupcake. Next, txertatze-adierazpen bat idatzi dugu. Txertatu adierazpenak sartu edo gehitzeko erabiltzen dira datu gehiago ilara zure datu-base taula. Gure eszenatokia Revisiting, dezagun bere gain hartuko ditudan dugu egin berri Cupcake. Gara oso geroztik antolatu Cupcake Eaters, Cupcake berri honetan sartu beharko dugu gure cupcake_cupboard taula. Horretarako sintaxia hau da: espazio Txertatu espazio gure taulan sartu, cupcake_cupboard, espazioa (, eta hemen, zutabe izenak zehaztu dugu, delimitatutako komaz CakeType koma CakeColor CakeIsNice koma) lekua. Ondoren, hitza VALUES espazioa (idazten dugu, eta hemen zutabe bakoitzaren balioa sartu dugu, hurrenez hurren, koma batek mugaturik ere. Single quote dira, Varchar balio guztiak ere inguratzen dugu komatxorik bakar batean, Kakahuete-gurina 'koma' LIGHT BROWN 'True koma. Orain, garrantzitsua da errenkada bakoitzak zenbaki bat bere burua identifikatzeko. Zutabe bat Autoincrementing eskaintzen hau  "No berean bi identifikazioak inoiz Taula honetan existitzen." Dezagun aurrera eta exekutatu. Bertan, joan antolatu guztiak. Hurrengo SQL instrukzioa egingo dugun idatzi update adierazpen bat da. Update adierazpena erabil daiteke datuak aldatzeko zutabe baten barruan zure datu-basearen dagoen ilara edozein. Lehenago gure eszenatoki, aukeratu adierazpen bat erabiliz, Cupcake bat identifikatu dugun barruan horren CakeIsNice balio gure cupcake_cupboard mahaian False izan zen. Demagun berriz, gure kakahuete gurina Cupcake labean zen, gure ez hain polita Cupcake oso polita egin dugu. Ari dira, beraz, salbuespenez antolatuta, gure Cupcake balio hau islatu nahi dugu gure cupcake_cupboard taula. Beraz, dezagun gure datu-basean txokolate Cupcake eguneratu hori islatu nahi du. Sintaxia honakoa da: UPDATE espazioa gure taulan, cupcake_cupboard, espazioa SET espazioa aldatu nahi dugun zutabea, CakeIsNice =. Ondoren, hemen gure True balioa espazio berria jarri dugu. Orain, egiten dugu ez duelako nahi, errenkada guztiek balio hau eguneratzeko, bat "Non" klausula apuntatzeko egingo digu eman nahi dugu aldatu nahi dugun zehatza errenkadan. Kasu honetan, ez dagoela Cupcake bakarra da ezagutzen dugun False balioa CakeIsNice du. Gainera, izango dugu ziurtatu ari garen errenkadan zuzena eguneratzeko "Eta" klausula erabiliz. "Eta" klausula erabiltzen dugu gure kontsulta gehiago fintzeko. Kasu honetan, ezagutzen dugulako Cupcake txokolatea dela, CakeType zutabe hau erabiliko dugu. NON espazioa gure conditional zutabe espazioa CakeIsNice espazio = False, eta espazio CakeType = 'CHOCOLATE'. Beraz, jarri denak batera, update-adierazpen hau dio aurkitu cupcakes guztiak gure armairua Cupcake, eta Cupcake horren zutabe CakeIsNice balioa False dauka bada CakeType CHOCOLATE balioa dauka, jakin errenkadak CakeIsNice balioa eguneratu True nahi dugu. Beraz, goazen aurrera eta instrukzioa exekutatu. Eta orain, antolatzen ari gara. Cupcakes eztabaida hori guztia egin du gose eta pixka bat me. Uste dut neure burua laguntza behar dut bat. Baina I actually jan Cupcake hau bada, gutxienez behar dut ere kendu bere existentzia  gure cupcake_cupboard taula. Horretarako, "Ezabatu" adierazpena erabiliko dugu. "Ezabatu" adierazpen guztiak edo batzuk taulako errenkadak kentzeko erabil daiteke. Taulako errenkada jakin batzuk kendu nahi duzun bada, gero, "Non" klausula eman behar duzu, eta, beraz, zutabe bat zehazten nahi duzun kendu errenkada berezia izan behar du. Sintaxia honako hau da: EZABATU espacio FROM gure mahaia, cupcake_cupboard, espazioa. Orain, puntu honetan, beti dira urrun zure deklarazioa ezabatu kontu handiz ibili izan nahi duzu. Esate baterako, nahi dut kontsulta hau exekutatu nahi izanez gero batzuk "Non" klausula gabe Datu guztiak galduko nuke taula honetan cupcake_cupboard, baina dagoeneko badakit delako nire pastela identifikazioak berezia direla, erabili dut Red Velvet tarta ID nire "Non" klausula. NON espazioa gure zutabea, CakeID = 1. Osoko balioa bat denez ez da beharrezkoa inguratzen komatxorik bakar batean. Beraz, dezagun instrukzioa exekutatu. Beno, orain ditudan dugu wiped Cupcake honen existentzia gure cupcake_cupboard taula, besterik ez dugu gauza bakarra ezker: Egin desagertuko da. Christopher Bartolome naiz. Hau CS50 da.