[Ag seinm ceoil] DAVID MALAN: Ceart go leor, is é seo CS50. Is é seo an deireadh seachtaine ocht. Agus lá atá inniu, tús a chur orainn a líonadh i roinnt píosaí nuair a thagann sé le tógáil rudaí ar an ngréasán. Mar sin, chun cuimhne gur ar an Luan chaitheamh againn am a lán níos mó ar PHP, a bhfuil an dinimic teanga cláir a ligeann dúinn aschur, i measc eile rudaí, HTML agus ábhar eile den sórt sin go mbainfidh muid ag iarraidh a fheiceáil. Ach ní mór dúinn a d'fhéach sé i ndáiríre ar conas táimid ag dul a stóráil aon fhaisnéis. Go deimhin, beagnach aon cheann de go bhfuil an Super gréasáin suimiúil tú cuairt inniu go bhfuil roinnt de chineál ar bhunachar sonraí ar an deireadh ar ais, ceart? Facebook siopaí cinnte go leor de na sonraí faoi ​​gach duine againn agus siopaí Gmail léir de do r-phoist. Agus mar sin, nach bhfuil suímh eile go leor ach ábhar statach go eolais. Tá sé i ndáiríre dinimiciúil ar bhealach éigin. Chur ar fáil duit ionchur, cothrom le dáta sé na leathanaigh do dhaoine eile. Teachtaireachtaí a fhaigheann tú, a sheolann tú teachtaireachtaí, agus mar sin de. Mar sin, lá atá inniu ann, táimid níos dlúithe ag na underpinnings de thionscadal go mbainfidh tú Léim isteach chugainn seachtain, CS50 Airgeadais, a ag dul iarbhír a bhfuil tú a thógáil rud nach i C, ach i PHP. Suíomh gréasáin go Breathnaíonn a rud beag mar seo a ligeann a cheannach agus a dhíol stoic atá iarbhír dul a tharraingt ar bhfíor-am Sonraí stoic ó Yahoo Airgeadais. Agus mar sin ar deireadh thiar, beidh sé agat ar an illusion duit féin agus d'úsáideoirí go bhfuil tú ag ceannach iarbhír agus a dhíol stoic agus ag fáil beagnach fíor-ama nuashonruithe, bainistiú phunann, gach ceann acu ag dul chun a cheangal ar a, ar deireadh thiar, bunachar sonraí na n-úsáideoirí. Mar sin, i d'fhocail féin, go háirithe mura bhfuil tú eolas maidir le ríomhaire Super eolaíocht nó bunachair sonraí, cad bhfuil a fhios agat bunachar sonraí a bheith ceart anois, i dtéarmaí nontechnical? Cad é sin? Conas a chuirfeá síos air le roommate nó cara? LUCHT ÉISTEACHTA: [inaudible] faisnéis [inaudible] DAVID MALAN: Mar sin, liosta na faisnéise, nó store-- liosta na faisnéise go b'fhéidir gur mhaith leat a stóráil faoi ​​rud éigin, cosúil le úsáideoir. Agus cad a dhéanann úsáideoirí a bhaineann leo? Má tá tú i d'úsáideoir ar Facebook nó Gmail, cad iad na tréithe go bhfuil gach duine againn ag úsáideoirí? Cosúil, a d'fhéadfadh cad a bheidh ar roinnt de na colúin sa scarbhileog a bhfuil muid a tagairt uair dheireanach? Mar gheall ar arís, is féidir leat smaoineamh ar bunachar sonraí i ndáiríre mar mhaisiúil comhaid Excel nó Google Scarbhileog nó Uimhreacha Apple comhad. Mar sin, cad a cheapann tú de nuair a cheapann tú de úsáideoir? Cad a dhéanann siad? Cad é sin? LUCHT ÉISTEACHTA: A ainm. DAVID MALAN: A ainm. Mar sin, más ainm, cosúil le, David Malan bheadh ​​an t-ainm ar roinnt úsáideora. Cad eile a theastaíonn ó úsáideoir? LUCHT ÉISTEACHTA: An ID. DAVID MALAN: An ID. Mar sin, cosúil le uimhir aitheantais, cosúil le do Harvard ID féin nó do Yale ID Glan nó a leithéidí. Cad eile a d'fhéadfadh a úsáideoir? LUCHT ÉISTEACHTA: Pasfhocal. DAVID MALAN: A focal faire, b'fhéidir ar ainm, b'fhéidir uimhir theileafóin, b'fhéidir seoladh r-phoist. Mar sin, níl bunches na réimsí agus tá sé seo D'fhéadfadh saghas bíseach as rialú tapa chomh luath agus a thosaíonn tú a bhaint amach, ó, a ligean ar a stóráil seo agus a ligean ar a stóráil agus a. Ach conas is féidir linn a dhéanamh i ndáiríre go? Mar sin arís, an tsamhail meabhrach a bheith acu don lá atá inniu agus muid ag Léim isteach SQL iarbhír, Teanga Struchtúrtha Iarratas, Is bunachar sonraí go Breathnaíonn mar seo. Tá sé díreach sraitheanna agus colúin. Agus is féidir leat a shamhlú Google Scarbhileoga nó aon líon na gclár eile. Ach cad atá eochair faoi MySQL, a bhfuil an bogearraí bunachar sonraí táimid ag dul a úsáid, an shaoirse hoscailte available-- úsáidí Facebook é agus líon ar bith de websites-- eile siopaí bunachar rudaí relationally. Agus bunachar sonraí coibhneasta Ciallaíonn ach amháin go literally siopaí a chuid sonraí i sraitheanna agus colúin. Tá sé chomh simplí sin. Mar sin, fiú amháin rud éigin cosúil le Oracle go bheadh ​​agat éisteacht go ginearálta de Is bunachar sonraí coibhneasta. Agus thíos an cochall, sé sonraí siopaí i sraitheanna agus colúin. Agus muirir Oracle tú go leor airgid a dhéanamh sin, de bhrí muirir MySQL rud ar bith agat le haghaidh an céanna. Mar sin, tá SQL ag dul a thabhairt dúinn ar a laghad ceithre oibríochtaí. An cumas chun sonraí a roghnú, cosúil le léamh sonraí, isteach, sonraí cothrom le dáta a scriosadh, agus. I bhfocail eile, tá na i ndáiríre na ceithre oibríochtaí lárnacha go bhfuil dul chun ligean dúinn a athrú rudaí i na sraitheanna agus colúin. An uirlis go beidh orainn a úsáid sa lá atá inniu go háirithe SQL a fhoghlaim agus a imirt leis é ar a dtugtar arís MyAdmin PHP. Tá sé an uirlis bunaithe ar an ngréasán. Chomhtharlú iomlán go tá sé scríofa i PHP. Ach tá sé ag dul a thabhairt dúinn grafach comhéadan úsáideora ionas gur féidir linn i ndáiríre na sraitheanna agus colúin a chruthú agus ansin labhairt leo trí cód. Mar sin, a ligean ar tús a chur anois a cad a cheapann go bhfuil frankly de chineál ar an bpróiseas spraoi ag tógáil an deireadh ar ais de láithreáin ghréasáin, na codanna sin nach bhfuil úsáideoirí fheiceáil, ach surely cúram a dhéanamh faoi, mar gheall ar go bhfuil áit shonraí ag dul. Mar sin, cosúil le C agus beagán níos lú cosúil le PHP, SQL, nó bunachar sonraí a thacaíonn SQL, tá cineálacha ar a laghad na sonraí agus bunches daoine eile. CHAR, varchar, INT, BIGINT, DEACHÚIL, agus datetime. Agus níl ina n-iomláine bunch de ghnéithe eile, ach a ligean ar seo a dhéanamh trí Mar shampla iarbhír. Tá mé ag dul chun dul isteach sa CS50 IDE más rud é, roimh ré, tá mé logáilte isteach agus tá mé cuairt ar URL do an uirlis ar a dtugtar PHP MyAdmin. Agus i fhadhb a leagtar seacht, beidh orainn a insint tú go cruinn conas a fháil chun an comhéadan freisin. Ar an chúinne na láimhe clé barr, faoi ​​deara deir sé léacht. Ciallaíonn sé sin go díreach agus roimh ré, a chruthaigh mé bunachar sonraí ar a dtugtar léacht folamh nach bhfuil aon scarbhileoga ann go fóill. Níl aon sraitheanna agus colúin. Mar gheall ar an chéad Rud táimid ag dul a dhéanamh Tá tús a chruthú tábla go bhfuil dul a stóráil dár n-úsáideoirí. Mar sin, literally thar anseo chun an ceart, tá mé ag dul a rá leis an mbunachar sonraí Ba mhaith liom tábla a dtugtar Úsáideoirí. Mar sin, is é seo cosúil leis an gcomhad go bhfuil mé ag iarraidh a stóráil ar fad de mo chuid sonraí i. Agus cé mhéad colúin? Bhuel, a ligean ar a choinneáil ar sé simplí do anois. Ba mhaith liom ach a stóráil cosúil le ainm úsáideora agus ainm do úsáideoir. Beidh muid tús a chur beag. Mar sin, ba mhaith liom dhá cholún iomlán. Agus tá mé ag dul chun dul ar aghaidh agus cliceáil Téigh. Agus ansin, le haghaidh na colúin, cad tá mé ag dul a do-- más rud é seo ar an idirlíon cooperates-- gach ceart, mar sin táimid ag dul chun iarracht a go arís. Tá mé ag dul a chruthú tábla ar a dtugtar Úsáideoirí le dhá cholún, cliceáil Téigh, OK. Anois tá muid fuair go tapa sé i ndáiríre. Go raibh maith agat, go han-mhaith déanta. Ceart go leor, mar sin cad a dhéanann ba mhaith linn na colúin a bheidh le glaoch? Mar sin, tá ceann ag dul a bheith ar a dtugtar Ainm Úsáideora. Mar sin, go léir a fheiceáil mé here-- agus an comhéadan Faigheann frankly beag ghránna sa deireadh, uair amháin leat tosú ag clóscríobh sonraí seo go léir. Ach tá cad atá deas gur saghas paradoxically, tá mé ag colúin a chruthú, ach tá an uirlis foolishly leagtha amach iad i sraitheanna ionas gur féidir liom a chumrú leis na colúin. Mar sin, níl dhá bearnaí ann faoi ainm. Agus ar cheann de na réimsí I ag iarraidh a dtugtar Ainm Úsáideora, agus an réimse eile ba mhaith liom a ghlaoch Ainm. Agus anois tá mé a roghnú cineálacha sonraí le haghaidh na rudaí seo. Mar sin, ach i Excel agus Google Scarbhileoga, más mian leat colún, tú literally ach cineál Ainm nó Ainm Úsáideora, bhuail Iontráil. B'fhéidir a dhéanann tú é a aghaidh gcló trom ach le haghaidh soiléireacht, ach go bhfuil sé. Ní gá duit a shonrú ar an cineálacha na colúin. Anois in Google Scarbhileoga Excel nó, tú D'fhéadfadh a shonrú conas na sonraí a rinneadh. D'fhéadfá dul go dtí an roghchlár Format, agus tú Is féidir a shonrú a thaispeáint ar an comhartha Dollar mhaith, Léiríonn sé seo cosúil le Luach snámhphointe. Mar sin, tá sé den chineál céanna i spiorad a go bhfuil an méid tá muid ar tí é a dhéanamh, ach tá sé seo ag dul i ndáiríre chun bhfeidhm na sonraí a bheith le cineál áirithe. Anois, cé go nóiméad ó shin mé Dúirt níl cineálacha ach cúpla sonraí, níl i ndáiríre lán iomlán, agus tá siad i céimeanna éagsúla sainiúlacht. Agus mar leataobh, tú is féidir a dhéanamh fiú rudaí mhaisiúil cosúil le geometries stórála taobh istigh de mbunachar sonraí. Is féidir leat rudaí a stóráil cosúil le GPS comhordanáidí agus ar ndóigh, a fháil, go matamaiticiúil, pointí atá gar do dhaoine eile. Ach táimid ag dul chun choinneáil simplí Super agus dul suas go dtí anseo, ar fad na cineálacha teaghrán mar a thugtar air. Mar sin, tá anseo liosta de bunch iomlán de roghanna. CHAR, varchar, TINYTEXT, MEDIUMTEXT, LONGTEXT. Agus tá sé de chineál mór. Agus ar an drochuair, beagán paradoxically go C, nach bhfuil CAR ndáiríre CHAR. Má tú a shonrú i mbunachar sonraí go bhfuil do chineál sonraí CHAR, ciallaíonn sin go yes, tá sé ina CHAR, ach tá sé Chars amháin nó níos mó. Agus caithfidh tú a shonrú cé mhéad carachtair is mian leat. Mar sin, cad atá tipiciúil fad ar feadh ainm úsáideora? Tá teorainn de ghnáth? LUCHT ÉISTEACHTA: [inaudible] DAVID MALAN: 16 b'fhéidir? Rud éigin mar sin. Tá a fhios agat, ar ais sa lá, úsáidtear é a bheith ocht. Uaireanta tá sé 16, uaireanta tá sé fiú níos mó ná sin. Agus mar sin, ní dhéanann sé seo Ciallaíonn a thabhairt dom CHAR amháin. Ciallaíonn sé seo go bhfuil mé a shonrú fad an réimse, agus anois d'fhéadfadh liom a rá rud éigin cosúil le 16. Agus níl a thrádáil lasmuigh den anseo. Mar sin, beidh orainn a fheiceáil i láthair go ciallaíonn sé seo ar cheann, tá gach ainm úsáideora a bheith 16 carachtair. Ach fan nóiméad, M-A-L-A-N. Más rud é go mo ainm úsáideora agus tá mé ag baint úsáide as ach cúig, mbeadh tú cad a mholadh go bhunachar sonraí a dhéanamh do na 11 carachtair eile Tá mé spás a áirithítear? Cad ba mhaith leat a dhéanamh? LUCHT ÉISTEACHTA: [inaudible] DAVID MALAN: Yeah, ach a dhéanamh iad go léir null. Déan iad spásanna. Ach is dócha null, mar sin a lán de na nialais cúlslais. Mar sin, ar thaobh amháin, tá muid anois rinne cinnte go bhfuil mo ainm úsáideora Is féidir a bheith níos mó ná 16 carachtair. Agus is é an taobh smeach sin go má bhí mé ainm ndáiríre fada nó theastaigh i ndáiríre fada ainm úsáideora cosúil le roinnt de tú D'fhéadfadh guys acu sa choláiste nó ag Yale.edu, ní féidir leat a bheith ar cheann. Agus mar sin i ndáiríre, más rud é tá tú cláraithe riamh ar láithreán gréasáin agus gheobhaidh tú yelled ag rá Tá do phasfhocal ró-fhada nó tá d'ainm úsáideora ró-fhada, tá sé ach mar gheall Ríomhchláraitheoir, nuair chumrú nó a bhunachar sonraí, chinn go mbeidh réimse seo níos faide ná an fad. Ceart go leor, mar sin cad má dul ar aghaidh táimid ag a ainm? Cé chomh fada ba chóir ainm an duine tipiciúil a bheith? Cé mhéad carachtair, 16? Tá mé ag guessing d'fhéadfadh muid teacht ar dhuine sa seomra i gcás ina ag a fhostóir nó a céad móide caite Is é ainm níos faide ná 16 carachtar. Mar sin, cad atá níos fearr ná sin, 17? 18? 25? Bigger? 30? LUCHT ÉISTEACHTA: [inaudible] DAVID MALAN: 5,000, OH mo Dhia. Mar sin, tá go is dócha ar dhínit uachtair faoi cheangal, déanfaidh linn a rá. Agus anseo táimid ag de chineál ar go bhfuil a dhéanamh glaoch breithiúnas. Cosúil, níl aon freagra ceart anseo. Ní infinite féidir go leor, mar táimid ar deireadh thiar ag dul a have-- tá muid ag dul a rith amach as cuimhne. Mar sin, ní mór dúinn a dhéanamh glao breithiúnas ag pointe éigin. An-choitianta a bheadh, mar shampla, a use-- agus lig dom a shonrú CHAR anseo Ba mar before-- 255 literally an uasteorainn ar an bogearraí bunachar sonraí blianta ó shin. Agus mar sin, a lán de na daoine Bheadh ​​ach a rá, fíneáil. 255 Tá an teorainn. A ligean ar a úsáid ach an t-uasmhéid. Agus tá sé seo go leor ridiculous. Cosúil, má tá tú ag clóscríobh duine éigin atá ainm ar feadh 200 carachtar móide, go bhfuil beagán ridiculous. Ach, cuimhnigh nach bhfuil ASCII an córas ach amháin le haghaidh charachtair. Agus mar sin, go háirithe i lán teangacha na hÁise i gcás ina níl carachtair nach féidir linn in iúl ar méarchláir cosúil le mo Aontaithe Poist méarchlár, roinnt carachtair iarbhír chur suas 16 giotán seachas ochtar giotán. Agus mar sin, seo i ndáiríre nach bhfuil go léir go míréasúnta gur gá dúinn níos mó spás más mian linn a d'oirfeadh carachtair níos mó ná na Stáit Aontaithe an- cinn centric againn claonadh chun plé a dhéanamh. Mar sin, ní mór dúinn roinnt cheangal uachtair. Níl a fhios agam cad é an ceann is fearr, ach tá 255 de ghnáth ceann coiteann. 25 mothaíonn íseal. 16, 32 bhraitheann íseal. Ba mhaith liom a err ar an taobh de rud éigin níos airde. Ach níl a thrádáil amach, mar i gcónaí. Cad é an, b'fhéidir, soiléir trádáil uaire de fhorchoimeád 255 chars do gach duine ainm i mo mbunachar sonraí? LUCHT ÉISTEACHTA: [inaudible] DAVID MALAN: Cad é sin? LUCHT ÉISTEACHTA: [inaudible] DAVID MALAN: Tá sé ina a lán de chuimhne, ceart? M-A-L-A-N. Tá mé díreach tar amú 250 carachtair díreach tar éis a stóráil mo ainm defensively, ar eagla na heagla duine éigin sa rang Tá ainm i ndáiríre fada. Go cosúil cosúil le tradeoff míchuí. Mar sin, casadh sé amach go SQL, an teanga bunachar sonraí, Tacaíonn i ndáiríre rud éigin ar a dtugtar varchar, nó Athróg CHAR. Agus tá sé seo de chineál ar deas i go bhfuil an is féidir leat a shonrú nach seasta leithead, ach ina áit, ar leithead athraitheach. Agus go sonrach, a leithead uasta na páirce. Mar sin, ciallaíonn sé seo gur féidir ainm a bheith níos mó ná 250 carachtair, ach is féidir é a bheith cinnte níos lú. Agus is é an bunachar sonraí ag dul a bheith cliste. Má dhéanann tú a chur i M-A-L-A-N, tá sé ach ag dul a úsáid cúig, b'fhéidir sé bytes le haghaidh nós carachtar null trailing, agus ní chaitheamh breise 249 nó 250 bytes gan ghá. Mar sin, is cosúil seo mar ba chóir dom a bheith tosaithe leis an scéal seo. Ach níl i gcónaí ar tradeoff. Mar sin, ar thaobh amháin, ainm úsáideora Tá mé sonraithe a bheidh le códaithe go crua ag 16, agus b'fhéidir nach raibh an glaoch ceart, b'fhéidir é is é, ach cén fáth nach úsáid VARCHARs do gach rud? Tá sé ann ar chúis. Cén fáth nach bhfuil úsáid VARCHARs le haghaidh gach réimse a bhfuil a fhad nach bhfuil a fhios agat roimh ré má cosúil é a bheith ina rud iontach, ceart? Bain úsáid as spás amháin oiread agus is is gá duit suas go dtí an teorainn? LUCHT ÉISTEACHTA: moille. DAVID MALAN: Speller? LUCHT ÉISTEACHTA: A dhéanann sé níos moille? DAVID MALAN: Ó, tá sé níos moille. Maith, go bhfuil beagnach i gcónaí an freagra, frankly. Cosúil, cad é an tradeoff? Cosnaíonn sé ceachtar níos mó spáis nó costais sé níos mó ama. Mar sin, sa chás seo, d'fhéadfadh sé a bheith níos moille. Cén fáth? LUCHT ÉISTEACHTA: [inaudible] a chinneadh [inaudible]. DAVID MALAN: Maith. Mar sin, go dtiocfadh leat a thabhairt chun cuimhne ó fiú PSED5, ag imirt le do chur chuige chuig an foclóir, má tá tú a leithdháileadh cuimhne dinimiciúil nó a choinneáil ag fás maolán, go Is féidir a bheith i ndáiríre mall. Má tá tú chun glaoch malloc thíos an cochall agus b'fhéidir go bhfuil an méid atá á dhéanamh MySQL, mar sin surely d'fhéadfadh a bheith ar an cás. Agus má cheapann tú ar bhealach ar ais go dtí PSet-- nó fiú seachtainí dhá, nuair a rinne muid rudaí cosúil cuardaigh dénártha nó fiú cuardaigh líneach, ar cheann de na rudaí deas faoi gach focal i mbunachar sonraí nó gach focal i gcolún a bheith díreach mar an fad céanna, fiú má bunch iomlán de na carachtair Tá bán é, gur féidir leat é a úsáid rochtain randamach ar do shonraí, ceart? Má tá a fhios agat go bhfuil gach Tá focal 16 carachtair ar shiúl, is féidir leat úsáid a bhaint uimhríochtúil pointeoir, mar sin go labhairt, agus téigh go dtí dúinn 16, 32, 48, 64, agus is féidir leat léim díreach láithreach ag baint úsáide as uimhríocht le haon cheann de na focail i do bhunachar sonraí. De bharr an méid má tá sé ina varchar, cad a dhéanann tú in ionad a dhéanamh? [Ringing FÓN] Má tá sé ina varchar, tú Ní féidir úsáid a bhaint rochtain randamach. Cad a bhfuil tú a chuardach le haghaidh nó a dhéanamh? Yeah? LUCHT ÉISTEACHTA: [inaudible] DAVID MALAN: Féach tríd an rian whole-- tríd an liosta ar fad lorg cad, is dócha? Cén cineál luach speisialta? LUCHT ÉISTEACHTA: [inaudible] DAVID MALAN: Ag Breathnú do na Terminators null go mharcáil an scaradh na bhfocal. Mar sin arís, tá tradeoff, agus níl aon freagra ceart. Ach tá sé seo más rud é, go háirithe nuair a fháil do úsáideoirí a bheith go leor agus do luchtú ar do freastalaithe, an líon na ndaoine a úsáideann bhfaigheann sé ard, is iad seo i ndáiríre cinntí nontrivial. Mar sin, is féidir linn a fhágáil na mar seo, ach a ligean ar scrollú síos thar do cheart anseo. Anois, níl cúpla colúin áit a bhfuil muid a dhéanamh glaoch breithiúnas. An bhfuil sé ciall a cheadú úsáideora ainm, úsáideora ainm úsáideora nó úsáideora An t-ainm, a bheith null? Is é sin, ach bán. Mothaíonn beagán nonsensical, mar sin tá mé nach bhfuil ag dul a sheiceáil leis na boscaí. Ach casadh sé amach i bunachar sonraí, is féidir leat a rá, Is féidir le duine éigin a bhfuil optionally an luach. Níl an colún seo go bhfuil a bheith i ndáiríre ann. Anois, níl an roghchlár anuas. Agus faoi deara Táim fós sa chéad ró ann, mar sin tá mé ag caint faoi ainm úsáideora anois. Agus casadh sé amach go bunachar sonraí, murab ionann agus scarbhileog simplí ach ní bhíonn ach, Tá gnéithe cumhachtach ar a dtugtar innéacsanna. Agus is innéacs ar bhealach an insint ar an bunachar sonraí roimh ré go bhfuil mé an duine Táim níos cliste ná tú. Tá a fhios agam cén cineál fiosruithe, roghnaigh nó cuir isteach nó a scriosadh nó a thabhairt cothrom le dáta, go bhfuil mo cód dul go dtí deireadh suas a dhéanamh ar bhunachar sonraí seo. Ba mhaith liom a léamh a lán de na sonraí. Ba mhaith liom a chur isteach a lán de na sonraí. Ba mhaith liom a gcónaí scrios ar a lán de na sonraí. Má tá a fhios agam go bhfuil mé ag dul a bheith rochtain a fháil ar réimse ar nós Ainm Úsáideora leor, Is féidir liom a rá preemptively an bunachar sonraí, tá a fhios agam níos mó ná tú, agus ba mhaith liom a foraithne go ba chóir duit innéacs réimse seo. I gcás ina innéacsú réimse nó colún Ciallaíonn sé sin ar an mbunachar sonraí roimh ré Ba cheart roinnt smaointe a fháil ar iasacht ó, cosúil le, seachtain ceithre agus cúig agus sé as CS50 agus ar ndóigh, a thógáil suas rud éigin cosúil le cuardach dhénártha crann nó rud éigin ar a dtugtar de ghnáth crann B go mbeadh tú a fhoghlaim i CS124 rang mhaith Harvard, rang halgartaim, nó aon líon na n-áiteanna eile. An bunachar sonraí agus an cliste daoine a chur i bhfeidhm sé Beidh an figiúr amach conas a stóráil go tábla na faisnéise i gcuimhne ionas go mbeidh cuardach agus Tá oibríochtaí eile Super go tapa. Ní gá duit é a dhéanamh. Ní gá duit a chur i bhfeidhm cuardaigh líneach nó cuardaigh dénártha nó a chumasadh saghas nó roghnú saghas, aon cheann de sin. Dhéanann an mbunachar sé leat má insint duit sé preemptively réimse seo. a innéacs Agus is féidir leat a fheiceáil freisin, níl roinnt saintréithe eile is féidir linn a rá leis an mbunachar sonraí a chur i bhfeidhm. Cad a chiallaíonn sé a má roghnaíonn mé uathúil as an roghchlár, ach intuitively? Yeah? LUCHT ÉISTEACHTA: [inaudible] DAVID MALAN: Yeah, an Tá ainm úsáideora a bheith ar leith. An é seo an rud maith nó droch-rud do bunachar sonraí, ar láithreán gréasáin le húsáideoirí? Ba chóir go mbeadh ainmneacha úsáideoirí a bheith ar leith? Yeah, is dócha. Má tá go bhfuil an méid an réimse úsáidimid chun logáil isteach, nach bhfuil tú ag iarraidh i ndáiríre a dhaoine a bhfuil an bhraitheann céanna nó an ainm úsáideora céanna. Mar sin, is féidir linn a bheith ar an bunachar sonraí a fhorfheidhmiú go sin go anois i mo cód PHP nó aon teanga, Ní dóigh liom go bhfuil, mar shampla, a sheiceáil gá go mbaineann sé seo ainm úsáideora ann roimh lig mé a chlárú éigin? Ní bheidh an bunachar sonraí in iúl dhá daoine ainmnithe David nó Malans chlárú sa chás seo. Agus mar leataobh, cé seo roghchlár ligeann ach tú a roghnú amháin, Is innéacs uathúil amháin go bhfuil innéacsaithe le haghaidh feidhmíochta Super tapa, ach enforces sé freisin uathúlacht. Agus beidh muid ag teacht ar ais leis an méid a an eile dhá ciallóidh i díreach nóiméad. Idir an dá linn, má théitear chun mo dara sraith, a Is é ainm an úsáideora, ba chóir dom a shonrú gur chóir go mbeadh an t-ainm a bheith ar leith? Níl, toisc go d'fhéadfaí tú cinnte have-- níl aon dhá David Malans sa seomra seo, is dócha. Ach má roghnaíonn againn ainm eile, D'fhéadfadh againn imbhuailtí surely. Smaoinigh ar ais go dtí táblaí agus a leithéidí hash. Mar sin, táimid ag nach bhfuil cinnte ag iarraidh a dhéanamh ar an réimse ainm ar leith. Mar sin, táimid ag dul díreach a fhágáil gur mar Fleasc, Fleasc, Fleasc, rud ar bith. Agus tá mé ag dul a fhágáil gach rud eile ina n-aonar. Go deimhin, an chuid is mó de na réimsí Ní bheidh orainn a cúram faoi. Agus nuair atá mé réidh a shábháil seo, má gcomhoibríonn an idirlíon, I cliceáil Save, agus an-, an-, an- go mall dhéanann an mbunachar fháil shábháil. Agus anois tá mé ar ais go dtí seo comhéadan, a admittedly, Is mór ar an gcéad amharc. Ach tá go léir Tá mé ag dul a dhéanamh cliceáil ar na Úsáideoirí focal ag barr ar chlé. Tá mé ag dul chun dul suas anseo, cliceáil Úsáideoirí, agus trí mhainneachtain, sé Tá fhorghníomhú roinnt SQL, ach níos mó ar sin i láthair. Seo ach achoimre ar cad a rinne mé. Agus gan a bheith buartha a fheiceann tú lua ar Laidin agus sa tSualainnis anseo. Glacfar iad ach an réamhshocraithe suímh, mar gheall ar MySQL dtús, nó PHP MyAdmin, ar cheann den dá chás a bheith scríofa ag roinnt daoine sa tSualainnis. Ach tá sé nach mbaineann le hábhar in ár gcás anseo. Ceart go leor, mar sin an fáth go bhfuil seo go léir suimiúil? Casadh sé amach, is féidir liom a chur isteach sonraí isteach i mbunachar sonraí de réir cód scríobh. Agus tá mé ag dul ar aghaidh agus i mo chomhad anseo, tá mé ag dul chun dul ar aghaidh agus ligean cosúil le seo wired leis an mbunachar sonraí, a nach bhfuil sé i láthair na huaire, ach beidh sé bheith nuair a fháil againn chun an fhadhb a leagtar seacht. Agus tá mé ag dul chun dul ar aghaidh agus fhorghníomhú feidhm a dtugtar ceist, a tabharfaimid duit i fhadhb leagtar seacht s cód dáilte, go Bíonn argóint amháin ar a laghad, a bhfuil ach teaghrán. A teaghrán de chód SQL. Mar sin, tá tú ar tí é a fháil amach conas a scríobh Teanga Struchtúrtha Iarratas. Más mian liom a chur isteach a chéile nua isteach i mo bunachar toisc go bhfuil duine éigin a chur isteach foirm le mo cód, ba mhaith liom literally scríobh IONSÁIGH INTO úsáideoirí an méid seo a leanas réimsí: ainm úsáideora, camóga, ainm, na LUACHANNA, agus anois is gá dom a chur isteach rud éigin cosúil le Malan, agus ceanglófar, comharthaí athfhriotail 'David Malan.' Agus anois fiú dóibh siúd cur amach acu SQL, cén fáth a bhfuil mé ag baint úsáide as comharthaí athfhriotail singil taobh istigh den teaghrán glas? Cad a bheith ar an gcúis anseo? Fógra Tá mé comh-mingling dhá theanga. Is Iarratas feidhm PHP, ach a thógann sé argóint. Agus tá sin argóint chun é féin a bheith scríofa i dteanga eile ar a dtugtar SQL, Teanga Struchtúrtha Iarratas. Mar sin, gach rud go bhfuil mé béim ach anseo Is teanga seo ar a dtugtar SQL. Mar sin, cad atá leis na comharthaí athfhriotail singil, díreach mar seiceáil sanity tapaidh? Lean ar aghaidh. Tá siad teaghráin. Mar sin, ceanglófar, Malan comharthaí athfhriotail agus ceanglófar, Tá comharthaí athfhriotail David Malan teaghráin. Agus díreach ag smaoineamh intuitively anois, fhios agam cad a fhios agat faoi C agus PHP, cén fáth nach raibh mé é seo a dhéanamh, a bhfuil mé de ghnáth Sleachta dúbailte a úsáidtear le haghaidh teaghráin? Cén fáth nach raibh Ba mhaith liom a dhéanamh? Yeah? LUCHT ÉISTEACHTA: [inaudible] DAVID MALAN: Go díreach. Toisc Tá mé ag baint úsáide as cheana Sleachta dúbailte ar an mbealach taobh amuigh den argóint leis an bhfeidhm PHP, Ba mhaith liom a mearbhall ach an ateangaire. Ní bheidh sé a fhios, bhfuil na dul le chéile? An bhfuil na dul le chéile? An bhfuil na dul le chéile? Mar sin, malartach mé ina ionad. Nó d'fhéadfadh mé rud éigin mar seo a dhéanamh, ceanglófar cúlslais nó ceanglófar cúlslais. Frankly, a thosaíonn díreach tar éis a fháil ar an-unreadable agus gránna. Ach bheadh ​​a bhaint amach an toradh céanna chomh maith. Mar sin, má bhí mé a fhorghníomhú seo cheist anois, a ligean ar a fheiceáil cad a tharlaíonn. Tá mé ag dul chun dul ar aghaidh anois agus in áit ná fhorghníomhú an cód PHP, a Is i gcás ina mbainfidh tú ag imirt i fhadhb a leagtar seacht, Tá mé ag dul chun dul go dtí ionad MyAdmin PHP. Agus tá mé ag dul de láimh chun dul go dtí an cluaisín SQL, agus lig dom súmáil isteach ar an comhéadan. Agus mé ag dul a greamaigh an rud clóscríofa mé díreach. Agus tá an códú datha athrú le beagán beag anois, ach mar gheall ar na formáidí chláir rudaí a mhalairt beag. Ach faoi deara go bhfuil gach atá déanta agam Is tá mé a dúirt, cuir isteach i Úsáideoirí. Tá mé sonraithe, ansin, i camóg scartha liosta parenthesized an dá Réimsí gur mhaith liom a chur isteach, agus ansin tá mé a dúirt literally luachanna le leanúint ag paren eile, agus ansin an dá luach Ba mhaith liom a plug-in, agus anois haghaidh dea-bheart, Feicfidh mé a chur Leathstad ag an deireadh. Mar sin, nach bhfuil sé seo C. Ní hé seo an PHP. Tá sé seo anois SQL, agus tá mé ag pasting sé isteach sa comhéadan bunaithe ar an ngréasán go bhfuil ach dul chun ligean dom, chomh luath agus is mé cliceáil Téigh, fhorghníomhú an cheist ar an mbunachar sonraí ag rith taobh istigh de IDE CS50. Mar sin, is é seo go maith. Fógra a dúirt a chéile amháin a cuireadh isteach, chuaigh Super tapa, 0.0054 soicind a chur isteach sonraí. Mar sin, fuaimeanna sin go leor sláintiúil. Reformatted sé mo cheist go dtí mé anseo ach chun é a fheiceáil i saghas dathchódaithe leagan. Ach anois má tá mé cliceáil Brabhsáil, faoi deara go, fiú cé níl a lán de clutter ar an scáileán, tá dhá shraith mo tábla anois. Mar sin, lig dom dul ar aghaidh agus a dhéanamh ceann eile. In ionad sin, lig dom téigh go dtí an cluaisín SQL arís. Agus an uair seo beidh mé a chur isteach rud éigin cosúil le Beidh Rob agus a ainm a bheith Rob Bowden. Bowden. A ligean ar cliceáil Save. Oops, Go áit. Cliceáil Brabhsáil arís, agus anois faoi deara Tá mé dhá shraith. Mar sin, tá sé seo ach casta ar bhealach níos bhealach a oscailt Google Scarbhileoga agus díreach clóscríobh a chéile isteach i gcolún. Ach cad atá eochair go ní mór dúinn anois an error lena cód a scríobh ionas go ar deireadh thiar, d'fhéadfadh againn i ndáiríre a dhéanamh ar roinnt agus tá sé seo. Chun cuimhne go tacaíochtaí PHP athróga Super domhanda. Cad é taobh istigh de Dollar sínigh fostríoc GET i PHP? Chuir muid le breathnú ar amháin nó dhá shampla simplí. Agus i PSet6, cuimhin agat Dia duit ponc PHP a úsáideann an athróg. Cad a théann i ann? Nó cad é? A louder beag. LUCHT ÉISTEACHTA: [inaudible] DAVID MALAN: Tá sé ina sneachta síol eagar, a ach ar bhealach mhaisiúil de rá ar sraith go bhfuil eochair péirí luach. Agus nach bhfuil na heochracha uimhriúil. Tá siad focail nó teaghráin. Agus go háirithe, cad tá na péirí luach eochair? Cá bhfuil a thagann siad as? Tá brón orm? LUCHT ÉISTEACHTA: [inaudible] DAVID MALAN: No? Sa chás go bhfuil na eochair péirí luach a thagann ó? Abair arís? Arís? Tá mé an t-aon rud amháin héisteachta? [Gáire] Sin ceart, yes? LUCHT ÉISTEACHTA: [inaudible] DAVID MALAN: Yeah, siad thagann as an teaghrán cheist. Mar sin, má athchasadh tú in am a nuair atá againn a bhí le Google agus tá muid imithe chun Google.com Slais cuardaigh comhartha ceiste q ionann cait, má bhí mé a bhuail Iontráil agus más rud é Cuireadh google i bhfeidhm i PHP, Cód PHP go Google scríobh Bheadh ​​rochtain a fháil comhartha Dollar béim GET taobh istigh de a Is eochair a dtugtar Q agus luach ar a dtugtar cait gur féidir é a úsáid ansin a úsáidtear a dhéanamh ar chuardach iarbhír leis. Mar sin, i ndáiríre, cad Tá mé ag dul go dtí dhéanamh ná dul ar ais go dtí mo cód PHP anois go mbainfidh tú a fheiceáil arís níos mó de i PSet7. Agus in ionad plugging i luachanna chódaithe crua a Ní cosúil mhaith an-gréasáin dinimiciúil, Tá mé ag dul a thabhairt duit ar teaser de cad a bheadh ​​do chód iarbhír a dhéanamh. Ba mhaith leat a chur i dhá marcanna ceist mar seo. Níl a fhios agam cad é an ainm úsáideora. Níl a fhios agam cad é an an t-ainm ag dul a bheith, ach tá a fhios agam is féidir liom iad a fháil dinimiciúil. Mar sin, má tá an cód táimid ag scríobh anois an cód a reáchtáil ar fhreastalaithe Google, nó má tá sé seo Dia duit ponc PHP, a thagann le PSet6, Tá mé ag dul chun pas a fháil isteach an fheidhm cheist díreach cosúil le printf, dhá argóint eile. GET, ceanglófar, ainm úsáideora comharthaí athfhriotail, agus GET, ceanglófar, ainm comharthaí athfhriotail. Agus anois, faoi deara cad é an Is struchtúr ginearálta anseo. Tá mé ar thaobh na láimhe clé thaobh na láimhe an glaoch, an fheidhm seo ar a dtugtar cheist i PHP. Tá mé fós mar an chéad argóint, ach ar shraith de téacs. Ach is é sin teaghrán téacs scríofa i dteanga a dtugtar SQL. Agus frankly, nach bhfuil sé ina teanga mór. Táimid ag dul ach amháin chun labhairt faoi sé lá atá inniu go foirmiúil, i ndáiríre. Agus ansin i fhadhb a leagtar seacht, níl réasúnta roinnt gnéithe go bhfuil muid ag dul a ghiaráil. Na marcanna gceist, áfach, ciallóidh breiseán i luach anseo agus breiseán i luach eile anseo. Agus fógra, tá mé ar lár an méid a ó ar fud an diabhal quote-- it-- ar fud an luachan marcanna an am seo. Tá mé ar lár an luachan marcanna ar fud an comhartha ceiste, tá brón orainn, an am thart. Mar sin, cad atá deas faoi seo ceist gné marc a PHP claonadh chun tacú le, Ruby agus Python agus teangacha eile, ciallaíonn sé ach breiseán i roinnt Is mór anseo agus tá a fhios agat cad é? Figiúr tú amach cé acu a úsáid comharthaí athfhriotail singil nó dúbailte Sleachta. Ná bodhraigh dom leis na sonraí hintleachtúil uninteresting. Ach, déan cinnte go bhfuil sé ceart ionas go bhfuil mo cód deireadh thiar oibríochta agus sábháilte, a beidh brí roimh i bhfad. Anois, cé mhéad argóintí iomlán, ach a a bheith soiléir, is é an cheist fheidhm a ghlacadh? Duine ar bith ag iarraidh a vóta a chaitheamh ar feadh níos mó ná dhá? Trí? Cinnte, cén fáth? Cén fáth trí? LUCHT ÉISTEACHTA: [inaudible] DAVID MALAN: Go díreach. Is é an chéad chuid an teaghrán. Is é an dara argóint comhartha Dollar béim GET ainm úsáideora lúibín. Agus is é an tríú argóint an rud céanna, ach amháin an t-ainm. Mar sin, i bhfocail eile, anois má bhí mé bhfoirm gréasáin go raibh a réimsí téacs, ceann amháin le haghaidh an úsáideora ainm úsáideora, ceann amháin le haghaidh a chuid nó a hainm, ach mar a bheadh ​​leat a fheiceáil i suíomh gréasáin nuair a chláraíonn tú le haghaidh roinnt láithreán gréasáin, an fhéadfadh a bheith ar an cód ar an deireadh ar ais go a dhéanann i ndáiríre a chur isteach anois isteach sa bhunachar sonraí. Anois ag gcodarsnacht leis sin, a ligean ar go tapa ar aghaidh. Cuir i Is úsáideoir anois logáil isteach agus is mian leat a scríobh cód PHP go seiceálacha cibé an duine a bhfuil sé ag logáilte isteach díreach i Is é iarbhír i d'úsáideoir, is féidir leat a úsáid a bhaint as error simplí go leor. Is féidir leat a rá SELECT, a ligean ar rá star, áit a chiallaíonn réalta gach rud. Níl a fhios agam cad agam Ba mhaith, agus mar sin ach a thabhairt dom go léir na colúin ón tábla ar a dtugtar úsáideoirí más rud é, agus tá sé seo deas. Tacaíonn Roghnaigh cad atá dtugtar preideacáid, a bhfuil cosúil ar bhealach de cáilitheach a thabhairt duit. I gcás ina is ionann ainm úsáideora ceanglófar, comharthaí athfhriotail Malan. Mar sin, anseo freisin, tá mé leabaithe taobh istigh den argóint le feidhm PHP, líne de chód SQL. Agus go cód SQL seo Tá am ag dul literally chun cuardach a ceanglófar, comharthaí athfhriotail ó Malan. Anois nach bhfuil go léir go úsáideach, mar sin tá mé ag dul a skip go agus tá mé ag dul a chur ar shiúl an rinn ó Brady, agus téigh agus plug-in ionad comhartha ceiste anseo. Mar sin, ach a bheith soiléir, cad Ba chóir mo dara argóint a má tá duine éigin logáilte díreach i agus mé ag iarraidh a sheiceáil má tá sé nó sí i ndáiríre úsáideoir? LUCHT ÉISTEACHTA: [inaudible] DAVID MALAN: Yeah. Chuala mé Dollar fostríoc comhartha GET ceanglófar, ainm úsáideora comharthaí athfhriotail. Agus ba chóir a thabhairt ar ais chugam aon cheann de na sraitheanna i mo mbunachar sonraí go mbeadh ainm úsáideora de Malan. Anois tá súil againn, tá mé ag dul a fháil ar ais náid má riamh Malan ar curtha anseo, nó i gceann amháin más rud é go bhfuil sé. Nár chóir dom a fháil ar ais dhá nó trí nó ceithre. Cén fáth? LUCHT ÉISTEACHTA: [inaudible] DAVID MALAN: dúirt mé uathúil, ceart? Chúis simplí. Mar a dúirt mé tá sé fuair a a bheith ar leith, ach go loighciúil, Is féidir leat a bheith náid nó i gceann amháin Malans sa tábla bunachar sonraí faoi leith. Anois mar leataobh, ach mar sin tá tú ag feiceáil sé, cé go a choinneáil mé ag baint úsáide as GET agus cé PSet6 úsáid ach amháin GET, is féidir leat a bheith cinnte POST. Agus cuimhne go bhfuil an Phoist eile teicníc le haghaidh faisnéise isteach as foirm, ach tá sé Ní thaispeáint suas sa URL. Tá sé beagán níos sábháilte cinnte do rudaí cosúil le ainmneacha úsáideoirí agus focal faire, a bheidh, i ndáiríre, i gceist PSet7. Mar sin, a ligean ar seo a dhéanamh i PHP MyAdmin agus féach cad a tharlaíonn. Tá mé ag dul chun dul go dtí MySQL cluaisín. Agus faoi deara go bhfuil an luach réamhshocraithe do PHP MyAdmin, ach chun iarracht a bheith cabhrach, Is réalta a roghnú ó úsáideoirí nuair atá ceann. Bhuel, tá sé ar cheann fíor i gcónaí, mar sin Tá sé seo an amaideach éifeachtach de roghnú ach gach rud. Ach tá mé ag dul a bheith beagán níos pedantic agus de láimh cineál amach réalta SELECT Ó úsáideoirí. Anois go teicniúil, is féidir leat ceanglófar ainm na táblaí. Tá sé annamh go bhfuil tú chun, ach faoi deara nach bhfuil na do gnáth Sleachta ar an méarchlár Stát Aontaithe. Is é seo an backtick mar a thugtar air, a ghnáth ar an taobh chlé barr cúinne de do mhéarchlár. Ach tá sé annamh go mbainfidh tú Ní mór iarbhír a bac le sin, mar sin beidh mé a fhágáil ar lár ach iad ar aon nós. Mar sin anois, lig dom dul ar aghaidh agus bhuail dul. Agus cé mhéad sraitheanna ba chóir dom a fháil ar ais nuair a roghnaíonn mé réalta ó úsáideoirí? LUCHT ÉISTEACHTA: [inaudible] DAVID MALAN: Líon na rónna, cinnte. Ach cé mhéad sa Scéal coincréite ceart anois? Dhá, toisc go raibh dom agus ní raibh Rob. Mar sin, má tá mé cliceáil Téigh, feicim amhairc go Tá mé gotten ar ais, go deimhin, dhá shraith. Níl a lán de na clutter ar an scáileán, ach féach mé ach dhá shraith. Ag gcodarsnacht leis sin, má dhéanann mé é seo arís agus a dhéanamh Réalta SELECT Ó úsáideoirí, i gcás ina ainm úsáideora ionann ceanglófar, comharthaí athfhriotail Malan, anois má tá mé cliceáil Téigh, Tá mé ag dul ach a fháil ar ais as a chéile amháin. Agus ar deireadh, má dhéanann liom rud éigin mar seo, is dócha nach féidir liom cúram faoi ag fáil gach rud, a bhfuil de chineál ar meaningless anois, mar níl ach dhá cholún. Nach bhfuil sé cosúil Tá mé ag roghnú méid ollmhór sonraí. Is dócha dul ar mé amach romhainn agus dhéanamh SELECT ainm Ó úsáideoirí, i gcás ina is ionann ainm úsáideora Malan, cad atá deas mar gheall SQL hionraic, is go ndéanann sé i ndáiríre ach cad a insint duit é sin a dhéanamh. Tá sé deas gonta, ach tú literally ach a insint sé cad ba mhaith leat a dhéanamh. Roghnaigh ainm ó úsáideoirí ina ionann an ainm úsáideora Malan. Agus tá sé i ndáiríre go follasach. Mar sin, anois má bhuail mé Téigh, cé mhéad sraitheanna Tá mé ag dul a fháil ar ais? One, mar tá sé ach Malan, tá súil againn. Nó nialas más rud é nach bhfuil sé ann, ach amháin maximally. Agus cé mhéad colúin Beidh mé ag dul ar ais? Cé mhéad colúin? An uair seo, tá mé ag dul díreach tar éis chun ceann a fháil toisc nach raibh mé Roghnaigh réalta, a bhfuil gach rud. Anois tá mé ag roghnú ach ainm, mar sin mé a fháil díreach tar éis filleadh cholún amháin agus a chéile amháin. Agus tá sé saghas cuí ridiculous, ach ag féachaint Super beag mar seo. Mar sin, cad atá ag tarlú i ndáiríre? Nuair a fhorghníomhú tú SQL ceist ag baint úsáide as a roghnú, cad bhfuil tú ag fáil ar ais ó bhunachar sonraí Is cosúil le tábla sealadach le sraitheanna agus colúin, b'fhéidir, ach go fhágáil ar lár rud ar bith go Níor roghnaigh iarbhír ag tú. Mar sin, tá sé cosúil dá mbeadh duine éigin mór scarbhileog de na mac léinn cláraithe do roinnt grúpa mac léinn, agus a rá leat, a thabhairt dom gach ceann de na freshman a tá cláraithe le haghaidh ár ngrúpa mac léinn, cad do chomhghleacaí sa D'fhéadfadh grúpa mac léinn a dhéanamh Tá d'fhéadfadh siad lámh díreach tú an scarbhileog ar fad. Sin cosúil le rá roghnaigh réalta. Agus tá sé ina beagán annoying má a raibh tú ach an freshman. Agus mar sin, más rud a dúirt tú ina ionad sin, roghnaigh réalta ó tábla bunachar sonraí nuair is ionann bliain ceanglófar, freshman comharthaí athfhriotail, tá sé mar cé go do chara sa ghrúpa mac léinn béim literally agus chóipeáil ach na sraitheanna freshman, pasted iad i Google nua Scarbhileog nó comhad Excel, agus tugadh ar ais an tú comhad mar thoradh air sin amháin. Sin uile go bhfuil dul ar choincheapa anseo. Mar sin, sa deireadh, is féidir linn a dhéanamh roinnt rudaí deas mhaisiúil ag rudaí a stóráil ar nós ainmneacha úsáideoirí agus focal faire agus a leithéidí. Ach, casadh sé amach, ba chóir dúinn a dhéanamh beagán difriúil ná seo. Níl sé go cliste ach a stóráil ainm úsáideora agus focal faire. D'iarr duine éigin níos luaithe, I mo thuairimse, síos anseo, mhol an ID. Anois d'fhéadfadh a bheith cosúil le haitheantas Harvard ID nó ID Glan Yale ar, ach d'fhéadfadh sé a bheith fiú níos simplí in ár gcás mbunachar sonraí. Agus go deimhin, an cás coiteann Is go bhfuil colún eile. Agus tá mé ag dul chun dul romhainn agus a chur in eagar mo tábla. Agus má tá tú ag imirt ar fud leis an comhéadan le haghaidh PSet7, Feicfidh tú a fheiceáil gur féidir leat a sheiceáil an cnaipe anseo agus cuir réimse ag tús an tábla. Agus anois má tá mé cliceáil Téigh, tá sé ag dul a thabhairt dom ar cheann de na foirmeacha ó níos luaithe. Tá mé ag dul a chur ar réimse ar a dtugtar ID. Agus tá mé ag dul chun é a dhéanamh le cineál uimhriúil. Tá mé a bunch iomlán de luachanna do numerics. Tá mé ag dul díreach tar éis a roghnú INT agus bíodh imní ort faoi na méideanna difriúla. Ní dóigh liom go a shonrú a bhfuil fad nó luach, mar tá sé ag dul a bheith 32 giotán is cuma cén. Tréithe, ní raibh muid a fheiceáil roimh. Aon leas in aon cheann de na roghanna roghchlár an am seo? I gcás INT? Cad a rinne tú a mholadh? Uimh? An bhfuil aon cheann de na ciall? Yeah. Yeah, gan síniú, ceart? Go ginearálta, má táimid ag dul a thabhairt gach duine uimhir uathúil, a Is sa chás go bhfuil an scéal seo ag dul, i ndáiríre ba mhaith liom ach ag duine a bhfuil a dhéanamh ar líon cosúil le náid agus ceann amháin agus dhá agus trí agus a ceathair. Ní féidir liom gá chun déileáil le huimhreacha diúltacha. Dealraíonn sé díreach cosúil le castacht míchuí. Ba mhaith liom ceithre billiún luach is féidir a, Ní ceithre billiún luach is féidir a, mar sin faoi dhó mé díreach tar éis an cumas mo INT. Mar leataobh, más mian leat a mbaineann seo chun rud éigin cosúil le Facebook, ar ais i saghas mo lá nuair Tháinig facebook amach ar dtús, Creidim go cad a bhí siad ag baint úsáide as i n-mbunachar sonraí MySQL a stóráil úsáideora aitheantóir, bhí ach INT. Ach ar ndóigh, níl a lán de na daoine fíor ar fud an domhain. Níl a lán de Facebook falsa cuntais ar fud an domhain. Agus mar sin sa deireadh, overflowed Facebook an méid de d'INT, tá ceithre billiún luach. Agus sin an fáth, má fhéachann tú thart agus níl láithreáin ghréasáin is féidir a insint duit cad Is é do ID ar leith. Agus riamh má roghnaíonn tú ainm úsáideora i Facebook, beidh tú a fheiceáil do haitheantas ar leith. Sílim go bhfuil sé próifíl ponc PHP ionann comhartha ceiste ID rud ​​éigin. Is é sin anois rud éigin cosúil le mór INT, nó le fada fada más maith leat, a bhfuil luach 64-giotán nó rud éigin inchomparáide. Mar sin, fiú amháin ar fud an domhain fíor a dhéanamh ar na saincheisteanna ar deireadh thiar ábhar uaireanta. Agus casadh sé amach anseo, má tá mé ag tabhairt gach ceann de mo úsáideoirí le haitheantas ar leith, Ba mhaith liom a bheith Super follasach agus minimally dhéanamh réimse seo uathúil. Ach casadh sé amach níl aon píosa ainmníocht inniu freisin go bhfuil eochair bunscoile. Má tá tú ag dearadh bunachar sonraí tábla agus tá a fhios agat roimh ré go bhfuil ceann de na colúin sa tábla sin Ba chóir agus beidh sraitheanna aithint uathúil sa tábla, ba mhaith leat a shonrú é agus a rá leis an mbunachar sonraí, is é seo mo eochair bunscoile. D'fhéadfadh a bheith ann dúbailt i réimsí eile, ach tá mé ag insint an mbunachar sonraí go bhfuil an Is é mo bunscoile, mo réimse is tábhachtaí, go ráthaithe a bheith ar leith. Anois, is cosúil seo iomarcach. Tá mé ag mholadh anois go bhfuil muid cuir, trí chliceáil Sábháil anseo, a called-- réimse agus mé ag dul chun dul ar aghaidh agus cliceáil AI, beidh muid ag teacht ar ais chuig gur i láthair, Sábháil. Tá mé ag mholadh anois go mo tábla breathnú mar seo. Tá mé réimse INT dtugtar ID, réimse CHAR dtugtar Ainm Úsáideora, réimse varchar dtugtar Ainm, ach ID, má tá sé bunscoile agus dá bhrí sin ar leith, cén fáth go raibh mé díreach tar éis dramhaíl am a thabhairt isteach an méid a Is go héifeachtach dara uathúil ar a dtugtar réimse ID go bhfuil ar INT? Ainm Úsáideora, cuimhne, bhí uathúil cheana, a dúirt muid. Mar sin, ach go loighciúil, ní gá duit aon taithí bunachar sonraí a chúis tríd an, cén fáth d'fhéadfadh a bheith agam a tugadh isteach ar INT mar mo aitheantóir uathúil chomh maith? Cad atá this-- rá arís? LUCHT ÉISTEACHTA: [inaudible] DAVID MALAN: Random Is rochtain níos éasca, cén fáth? LUCHT ÉISTEACHTA: [inaudible] DAVID MALAN: Yeah, tá sé ach rochtain a fháil ar uimhreacha. Mar sin, má cheapann tú de seo fíor Is tábla, cosúil le sraith, anois tá mé aitheantóirí uathúla gur féidir liom léim thart. Agus níos fearr ná go bhfuil fós go cé chomh mór go bhfuil INT ag dul a bheith arís? 32 giotán nó ceithre bytes. Cé chomh mór is é mo ainm úsáideora ag dul a bheith? Maximally? 16 bytes. Mar sin, má tá tú ag tabhairt aire i ndáiríre faoi ar fheidhmíocht do chód, I mo thuairimse, ar ais go dtí PSet5, ba fearr leat chun cuardach a dhéanamh ar luach ceithre beart nó 16 luach beart, ceart? Tá sé i ndáiríre chomh simplí sin. Tá tú a dhéanamh ceithre huaire an oiread oibre chun cuardach a usernames mar gheall ar na Tá 16 bytes. Mar sin, tá tú chun literally i gcomparáid go léir 16 bytes a bheith cinnte yes, is é seo ainm úsáideora ba mhaith liom. De bharr an méid le haghaidh INT, is féidir leat dhéanamh le ach ceithre bytes. Agus mar leataobh dóibh siúd suim acu i crua-earraí ríomhaireachta, casadh sé amach is féidir leat oiriúnach rud éigin cosúil le an INT nó luach 32-giotán i rud éigin ar a dtugtar clár i ríomhaire LAP, rud a chiallaíonn sé Super, Super tapa, fiú ag an ráta is ísle leibhéal na crua-earraí an ríomhaire. Mar sin, níl ach buntáistí go léir timpeall. Mar sin, cad a chiallaíonn sé? Go deimhin, nuair a bhíonn tú ag dearadh ar tábla bunachar sonraí, beagnach gach ceann de an t-am bhfuil tú ag dul a bheith acu nach ach na sonraí cúram tú faoi, ach freisin rud éigin cosúil le aitheantóir uathúil mar gheall ar an dul chun in iúl dúinn le déanamh rudaí eile. Agus a ligean ar turas thar an fhadhb amháin anseo. Má ghlactar leis go nach bhfuil úsáideoirí ach ainmneacha úsáideoirí agus ainmneacha, ach tá siad freisin rudaí cosúil le cathracha agus stáit agus cóid zip, ar a laghad, anseo sna Stáit Aontaithe. Mar sin, tá mé ag dul chun dul ar aghaidh agus díreach rá go tapa, a thabhairt dom trí cholún níos ag deireadh an tábla. Agus is é seo ag dul a bheith City, seo ag dul a bheith an Stáit, agus tá sé seo ag dul a bheith Zip. Anois cineálacha na Cathrach, cad iad na sonraí Ba chóir go mbeadh sé seo a bheith, b'fhéidir? Varchar? Níl a fhios agam cad é an Is cathair-ainm is faide. Áit éigin i Meiriceá, níl dócha roinnt focal ridiculously fada, mar sin a ligean ar dul díreach le 255, beagán go stairiúil nó treallach. Stáit, cad ba mhaith leat a dhéanamh? Glao breithiúnas, ceart? Cad b'fhéidir an is éifeachtaí? Cé mhéad carachtair? B'fhéidir ach dhá, más féidir linn a a fháil amach le déanamh ach, cosúil le, MA do Massachusetts agus mar sin de. Mar sin, tá mé ag dul chun dul luach CAR ar bheirt. Cód zip Tá ceann suimiúil. Táimid anseo i 02138, ionas go mbeidh Molann ba chóir dúinn a úsáid cad é? Tá sé an INT, ceart? INT, INT, gearr? Bheadh ​​Gearr obair. Uimh? CHAR nó cúig, ach tá mé ag iarraidh an INT. Cén fáth a bhrú ar ais ar INT? Ina luí orm as seo. Cad atá dúr faoi INT, mo smaoineamh? Yeah. LUCHT ÉISTEACHTA: Tóg suas cuimhne níos mó. DAVID MALAN: Tóg suas cuimhne níos mó. Ceithre bytes, ach tá tú mholadh cód zip mar cúig bytes nó go raibh duine éigin mar CHAR, a mothaíonn mhaith e, nach é sin i ndáiríre an cás. Bhuel, scéal spraoi. Blianta ó shin, nuair a úsáidtear mé a úsáid Microsoft Outlook do mo r-phost, Bhí mé sa deireadh chun aistriú chuig Gmail. Agus mar sin, a onnmhairíodh i gach ceann de mo teagmhálacha ó Outlook mar chomhad CSV. Camóga luachanna scartha, rud a chiallaigh go díreach mé Bhí gach mo chairde ainmneacha agus deiridh ainmneacha agus uimhreacha gutháin agus cóid zip agus gach ceann de sin. Agus ansin rinne mé an botún oscailt suas i Excel, a bhfuil clár scarbhileoige go Tuigeann comhaid CSV mar atá feicthe againn. Ach ansin, caithfidh mé a bhuail, cosúil le, I gceannas nó Control S ag pointe amháin. Agus Excel cosúil ag an am Bhí gné trína am ar bith é Chonaic uimhir, rinne sé a bheith cabhrach. Agus má thosaigh an líon sin le nialais, bheadh ​​sé ach a fháil réidh leo. Cén fáth a bhfuil tú ag rá gá nialais ar slánuimhreacha? Tá siad meaningless, matamaiticiúil. Ní bhíonn siad meaningless sa chóras Poist Poist. Mar sin, tá mé go raibh ar feadh na mblianta, ar an lá seo, mé fós tá cairde go nuair a bheidh an cás annamh gur gá dom duine éigin atá aghaidh a thabhairt ar na laethanta seo, Feicfidh mé a fheiceáil go fóill go bhfuil mé go bhfuil cara i Cambridge, Massachusetts, 2138. Agus tá sé annoying má tá tú ag iarraidh a shórtáil de programmatically clúdaigh a ghiniúint nó díreach bhreacadh síos. Agus sin mar gheall ar an gcúis seo, Roghnaigh mé an cineál sonraí mícheart. Mar sin, is breá liom do smaoineamh. A ligean ar úsáid a bhaint as réimse CHAR. Cúig carachtair, ach amháin go bhfuil cás cúinne. Má sheolann tú fós phost, uaireanta zip cóid na laethanta seo, tá siad, cosúil le, móide a ceathair. Mar sin, tá gá againn le fleiscín agus ansin ní mór dúinn ceithre uimhreacha níos mó. Mar sin, a bheith macánta, d'fhéadfadh sé dul go leor bealaí éagsúla. Chun anois, tá mé ag dul a choinneáil sé simplí agus tá mé díreach tar éis ag dul a rá go bhfuil sé ina cúig luach CAR agus táimid ag dul go dtí skip an Fleasc ar fad móide a ceathair. Ach is iad seo na cineálacha tradeoffs. Agus is féidir leat smaoineamh ar an fadhbanna céanna a thagann chun cinn le huimhreacha gutháin nó réimsí eile. Agus anois, tá sé seo i ndáiríre bóthar foolish chun dul síos. Is dócha Rob agus mé araon agus Hannah agus Maria agus [? Davon?] Agus Andy agus daoine eile ar an bhfoireann go léir ina gcónaí i Cambridge, Massachusetts, 02138. Seo bhraitheann iarbhír dúr go bhfuil mé ag cur le mo úsáideoirí tábla, cathair, stát, agus zip. Cén fáth? LUCHT ÉISTEACHTA: [inaudible] DAVID MALAN: Abair arís? LUCHT ÉISTEACHTA: [inaudible] DAVID MALAN: Tá siad i gcónaí ag dul chun dul le chéile, ceart? Nuair a casadh sé amach, a úsáid againn chun smaoineamh ar ba é seo an cás go dtí go muid a iomlán díobh chuardach na Stáit Aontaithe ar fad, agus casadh amach go bhfuil Tá roinnt neamhréireachtaí áit a bhfuil bailte il an zip céanna, a bhfuil aisteach. Ach, má a ordú againn le haghaidh anois go 02138 i gcónaí Cambridge, Massachusetts, cén fáth ar fud an domhain a bheadh ​​leat a stóráil i do bhunachar sonraí Cambridge agus MA agus 02138 dom agus do Hannah agus do Rob agus do [? Davon?] Agus do dhaoine eile a bhfuil cónaí orthu anseo i Cambridge, tá sé breá iomarcach. Ba chóir dúinn a fháil amach le díreach a stóráil cad é? Díreach an cód zip. Ach ansin, má stóráil muid díreach ar an cód zip, mé ag iarraidh, is dócha, as mo láithreán gréasáin ar an eolas i gcás ina bhfuil 02138. Mar sin, is gá dom tábla eile. Agus sin ceart go leor. Agus go deimhin, tá sé seo ar cheann de na próisis dearadh na táblaí a dhearadh go mbainfidh tú a dhéanamh i PSet7 chomh maith trína ba mhaith leat a fachtóir amach sonraí coiteanna. Díreach cosúil tá muid ag fachtóireacht amach cód coiteann agus fachtóireacht amach coitianta stíleanna ó CSS, anseo freisin sa bhunachar sonraí, más gá dom ach go 02138 uathúil duine bhaile dúchais a aithint, Ní gá a stóráil Cambridge, Mass haghaidh gach úsáideoir darn i do tábla. Ina áit sin, tá tábla ar leith ar a dtugtar Zips chóir go mbeadh an méid colúin? Is dócha an réimse ID, ach toisc, le haghaidh na prionsabail tá muid ag caint faoi anois. Is dócha gur réimse zip ar feadh 02138. Agus ansin dócha cad colúin eile? Cathrach agus an stát, ach tá ceann amháin as a chéile ar feadh 02138, as a chéile amháin le haghaidh 02139, a chéile amháin do 90,210. Agus is é sin literally go léir na cóid zip a fhios agam. Mar sin anois, cad is féidir leat a dhéanamh? Tá sé seo fadhbanna, mar gheall ar anois tá fuair mé dhá thábla. Mar sin, tá mo úsáideoirí den chuid is mó thar anseo, ach tá a gcuid faisnéise stáit chathair thar anseo. Mar sin, casadh sé amach le SQL, níl i ndáiríre ar bhealach chun faisnéis a bheith páirteach, agus go mbainfidh tú a fheiceáil seo sa PSet. Ach casadh sé amach is féidir leat rud éigin mar seo a dhéanamh. Réalta SELECT Ó úsáideoirí, zips Join AR úsáideoirí dot ionann zip zips dot zip. Cé acu is wordy beag, admittedly, ach tá sé seo ach Ciallaíonn roghnaigh gach rud as an próiseas cur mo úsáideoirí tábla agus mo tábla zips. Bheith páirteach leo ar an ceann réimse go bhfuil siad i gcolún. Mar sin, ag déanamh literally rud éigin mar seo, agus a thabhairt dom ar ais tábla sealadach nua go bhfuil níos leithne, go bhfuil níos mó, go bhfuil gach ceann de na colúin ón dá cheann acu. Agus sin, go simplí go leor a bheadh, a bheith ar an error chun déanamh rud éigin mar seo. Mar sin, níl sé seo chun tosaigh, ach níl dul a bheith cinntí a dearadh eile beidh tú a dhéanamh, ní hamháin le innéacsanna ach freisin ag rith isteach dúshláin. Go deimhin, níl dúshlán in aon dearadh bunachar sonraí trína uaireanta d'fhéadfadh beirt daoine ag iarraidh chun rochtain a fháil ar na sraitheanna céanna ar an mbunachar sonraí tábla. Mar sin, is é an rud go mbainfidh linn a bhíonn i PSet7 chomh maith. Ach shíl mé gur mhaith liom breathnú ar cheann ionsaí go féidir i SQL. Cad iad cuid de na fadhbanna is féidir a thagann chun cinn? Mar sin, beidh tú trasna ar seo i PSet7. Agus muid ag insint duit thar barr amach cad é an Tá réiteach códaithe chun an fhadhb seo. Ach má tá tú rang leibhéal níos airde, go háirithe i gcórais oibriúcháin, tú ag dul a bhíonn saincheist atomicity, an fhadhb a iarraidh a dhéanamh rudaí il go léir ag an am céanna gan briseadh. Agus shíl mé gur mhaith liom a thabhairt isteach ar an smaoineamh do PSet7 le meafar gur fhoghlaim mé mé féin i Margo Córais oibriúcháin Seltzer ar CS164 bliain ó shin ranga. Má ghlactar leis go bhfuil ceann de na dorm tú cuisneoirí i do sheomra dorm nó teach, agus tá tú penchant fíor do bhainne. Agus mar sin, a thagann tú abhaile ón rang lá amháin, osclaíonn tú an cuisneoir. Ó, damnaigh sé. Níl aon bainne sa chuisneoir. Mar sin, a dhúnann tú an cuisneoir, glas ar an doras, glas do dorm, ag siúl timpeall an chúinne go CVS, a fháil ar aon dul, agus tús a sheiceáil amach le haghaidh roinnt bainne. Agus tá sé ag dul a ghlacadh ar feadh tamaill, mar gheall ar na Seiceáil féin diabhal cuntair a chur go deo a úsáid ar aon nós. Mar sin, Idir an dá linn, a thagann do roommate bhaile. Sé nó sí i ndáiríre bainne maith chomh maith. Tagann siad isteach sa seomra dorm, oscailt an cuisneoir, ó, darn air. Níl aon bhainne níos mó. Mar sin, sé nó sí freisin Téann timpeall an chúinne. Ach anois, ós rud é níl cosúil le dhá nó trí nó ceithre CVSes in aice láimhe, tharlaíonn siad chun dul go dtí ceann de na cinn éagsúla i gcearnóg. Agus mar sin anois, ar feadh cúpla nóiméad ina dhiaidh sin, an dá de tú teacht abhaile agus ugh, fadhb is measa riamh. Anois tá tú bainne i bhfad ró- mar tá sé ag dul chun dul géar. Agus is maith leat bainne, ach tú Ní maith liom i ndáiríre bainne. Mar sin anois, ba é seo an daor botún mar gheall ar an dá de tú cinneadh déanta bunaithe ar an staid na roinnt athróg a a bhí i mbun an phróisis á athrú ag tú, an thionscnóir dul bainne a fháil. Mar sin, cad é b'fhéidir an duine réiteach ar go fhadhb? LUCHT ÉISTEACHTA: [inaudible] DAVID MALAN: Fág nóta, ceart? Saoire i gcónaí nóta, má tá tú eolas maidir leis sin seó. Is ea, tá bheirt againn. Mar sin, saoire i gcónaí nóta, nó literally glas ar an cuisneoir le roinnt de chineál padlock nó rud éigin thar barr mar sin. Ach tá go ag dul i ndáiríre a bheith fadhb eochair le dearadh bunachar sonraí, go háirithe nuair a bheadh ​​agat brabhsálaithe il, ríomhairí glúine il, úsáideoirí éagsúla ar fad ag iarraidh a faisnéis suas chun dáta ag an am céanna. Faisnéis íogair cosúil le faisnéis airgeadais, trína bhfuil stoc beidh suíomh gréasáin is mian leat a bheith ag tógáil, cad más mian leat a sheiceáil airgead cé mhéad bhfuil tú, agus ansin má tá tú go leor, cheannach roinnt stoic? Ach cad má tá duine éigin eile a Tá cuntas i gcomhar le leat Is ag an am céanna ag iarraidh a cheannach roinnt stoic? Mar sin, tá sé nó sí seiceáil an iarmhéid an chuntais, bheirt agaibh a fháil ar ais mar an gcéanna freagra, níl aon bainne. Nó an dá de tú a fháil ar ais an freagra, tá tú $ 100 sa chuntas. An dá de tú iarracht a dhéanamh ar an gcinneadh a cheannach ar scair amháin de stoc roinnt cuideachta. Agus anois, cad a tharlaíonn? Tá tú dhá scaireanna? Tá tú aon scaireanna? Is féidir fadhbanna mar a thagann chun cinn. Mar sin, beidh muid ag teacht ar go. Ionsaithe instealladh SQL, buíochas le Dia, Tá rud éigin beidh orainn cabhrú leat le, ach tá siad seo atrociously coitianta na laethanta go fóill. Mar sin, is é seo ach sampla. Dhéanamh mé aon éilimh go Tá córas harvard PIN i mbaol an ionsaí ar leith. Táimid tar éis iarracht. Ach, tá a fhios agat go bhfuil muid go mbeadh réimse mar seo. Agus tá ID Glan Yale ar den chineál céanna lorg scáileán na laethanta. Agus casadh sé amach, go b'fhéidir an Tá córas PIN i bhfeidhm i PHP. Agus má were-- sé tá sé not-- siad d'fhéadfadh a bheith cód go Breathnaíonn mar seo. Tá siad dhá athróg. Tabhair dom an ainm úsáideora agus do phasfhocal a as an athróg domhanda iar-Super gur labhair linn faoi níos luaithe. B'fhéidir go bhfuil ceist Harvard cosúil le réalta SELECT Ó úsáideoirí nuair is ionann ainm úsáideora go agus is ionann phasfhocal sin. Agus faoi deara go bhfuil mé díreach tar éis plugging sé in úsáid an nodaireacht brace curly ón eile lá, rud a chiallaíonn ach breiseán i luach anseo. Níl mé ag baint úsáide as an teicníc comhartha ceiste. Ní féidir liom aon dara nó tríú argóintí. Tá mé díreach literally thógáil an teaghrán féin. An fhadhb, cé go bhfuil, go má tá duine éigin cosúil le scroob, is tagairt í do scannán, logs isteach le rud éigin mar seo, agus tá mé a bhaint na poncanna go chlúdach suas de ghnáth pasfhocail, cad má tá sé go háirithe mailíseach agus is é a phasfhocal b'fhéidir 12345, in aghaidh an scannán ar a dtugtar "Spaceballs," ach tá sé go criticiúil cineálacha a ceanglófar amháin tar éis na cúig, ansin literally an focal nó sa spás, agus ansin ceanglófar, ionann ceann comharthaí athfhriotail amháin ceanglófar, ach fógra tá sé fágtha ar lár cad é? Sé ar lár an luachan ar dheis agus tá sé ar lár an luachan ar thaobh na láimhe clé. Toisc más rud é seo ionsaitheoir toimhde scroob s is é go bhfuil na daoine a scríobh an cód PHP nach raibh chomh geal, b'fhéidir go bhfuil siad ach roinnt amháin Sleachta ar fud an idirshuíomh de athróg i braces gcuach? Agus mar sin b'fhéidir, d'fhéadfadh sé de chineál de gcrích a gcuid smaoinimh dóibh, ach ar bhealach atá go bhfuil ag dul chun ligean dó hacked isteach sa chóras PIN. I bhfocail eile, is dócha go bhfuil sé seo an cód agus táimid ag breiseán anois i cad scroob clóscríofa. Agus tá sé dearg, mar tá sé dona. Agus an téacs bunúsacha cad a chlóscríobh sé i, D'fhéadfadh scroob trick fhreastalaí Harvard i dtógáil cheist SQL teaghrán go Breathnaíonn mar seo. Pasfhocal ionann 12345 nó ceann ionann amháin. Is é an toradh a, go loighciúil, is é go mbeidh an logáil scroob i má tá a phasfhocal 12345 nó má tá ceann ionann amháin, atá ar ndóigh fíor i gcónaí, rud a chiallaíonn go bhfaigheann scroob i gcónaí i. Agus mar sin, ar an mbealach a shocrú seo, mar atá i go leor de na cásanna, bheadh ​​a scríobh níos defensively. Rud éigin cosúil le a bhaint as ár fheidhm cheist iarbhír, a Feicfidh tú a fheiceáil i PSet7, i gcás ina breiseán muid i marcanna rud éigin cosúil le ceist anseo. Agus an áilleacht an fheidhm cheist go bhfuil muid thabhairt go bhfuil tú Cosnaíonn sé i gcoinne na mar a thugtar air ionsaithe instealladh SQL, i gcás ina Tá duine éigin tricking do chód isteach instealladh nó a cód SQL féin. Mar gheall ar cad é an fheidhm cheist a thabhairt beidh tú a dhéanamh i ndáiríre, má úsáideann tú an chomhréir comhartha ceiste agus an dara agus an tríú argóint anseo, is cad a rinne sé a chur leis an ionchur go bhfuil an t-úsáideoir ar fáil? Sleachta Glacfar cúlslais. Mar sin, éalaíonn sé aon d'fhéadfadh a carachtair contúirteacha. Breathnaíonn sé seo aisteach anois, ach nach bhfuil sé i mbaol toisc nach ndéanann sé athrú ar an loighic níos mó toisc go bhfuil focal faire ar fad anois a ceanglófar amháin ní go, i ndáiríre, Focal faire scroob ar. Mar sin, tá tá roinnt scéalta grinn faoi ​​seo thar na blianta. Mar sin, ba é seo le grianghraf a glacadh de roinnt geek i go leor páirceála trína d'fhéadfadh a fhios agat go bhfuil roinnt cathracha agus stáit iarracht a scanadh do cheadúnas pláta a bhilleáil tú nó a ticéad leat má théann tú trí gan, ar nós, an rud E-Z Pass. Mar sin, an duine seo toimhdeofar go b'fhéidir na daoine a scríobh ar an gcóras E-Z Pass Ní raibh chomh geal, agus b'fhéidir siad concatenated díreach le chéile ar shraith, ionas nach bhféadfadh sé nó sí go mailíseach ní comhlánaigh ach a gcuid smaoinimh, ach i ndáiríre fhorghníomhú a dtoil dona, nach againn luaite go fóill, ach is féidir leat buille faoi thuairim is dócha. Go chomh maith le scriosadh agus isteach agus cothrom le dáta agus a roghnú, níl freisin eochairfhocal a dtugtar titim, a literally gach rud scriosann sa bhunachar sonraí, rud a go háirithe dona. Is féidir linn a súmáil isteach ar an dá tá sé ina beagán diana a fheiceáil. Seo, anois, tá chartúin cáiliúil go wonderfully cliste anois agus intuigthe. [Gáire] Yeah, fionnuar. Cineál ar geeking amach. Mar sin, na, ansin, tá Ionsaithe instealladh SQL. Agus tá siad chomh éasca a sheachaint trí úsáid a bhaint an cód ceart nó an leabharlann ceart. Agus beidh tú a fheiceáil i PSet7, go cén fáth a thabhairt duit ar an fheidhm cheist. Mar sin, cúpla teasers gur shíl muid ba mhaith linn a thabhairt duit anseo inár nóiméad fágtha le chéile. Mar sin, mar a cuimhin leat ó sheachtain náid, táimid ag a tugadh isteach an dá bolgáin solais a Tá deas, ní hamháin mar gheall ar tá siad deas agus go bhfuil siad colorful, ach mar gheall ar tacaíocht a thabhairt siad rud éigin ar a dtugtar API, Iarratas Programming Chomhéadain Agus i CS50 go dtí seo, tá muid den chuid is mó dírithe ar GET agus POST, ach casadh sé amach níl briathra HTTP eile cosúil PUT. Agus go deimhin, ba é seo sleamhnán ón tseachtain náid trína má scríobhann tú cód a chuireann a la PSet6 iarratas HTTP a Breathnaíonn mar seo leis an smután téacs ag bun, ar a dtugtar JSON, nó JavaScript Notation Réad go beidh muid ag labhairt faoi an tseachtain seo chugainn, Is féidir leat dul ar nó cas nó athrú an dath soilse ar nós iad siúd. Mar sin, má tá CS50 freisin chomh maith le roinnt de na bolgáin solais anseo i New Haven más mhaith leat a fháil ar iasacht iad le haghaidh tionscadal deiridh, freisin roinnt Microsoft Bannaí, a bhfuil cosúil le uaireadóirí go chaitheamh tú timpeall do wrist go bhfuil an gcéanna API ionas go mbeidh tú Is féidir scríobh do bogearraí féin dóibh. Ní mór dúinn cuntas le Apple iOS cód sin go má tá tú Watch Apple nó iPhone nó iPad nó iPod, Is féidir leat scríobh cód a Ritheann iarbhír ar na. Ní mór dúinn a bunch iomlán de Arduinos, a bhfuil ríomhairí beag bídeach gan cásanna, go bunúsach, gur féidir leat a nascadh via USB, de ghnáth le do Mac féin nó ar ríomhaire, scríobh cód a ritheann ar na coirp feistí go minic braiteoirí orthu ionas gur féidir leat idirghníomhú leis an domhan fíor. Ní mór dúinn a bunch iomlán feistí Leap Tairiscint, a bhfuil feistí USB do Macs agus Ríomhairí pearsanta, anseo agus arís, i New Haven. Agus má dteagmháil leat sé le do Mac, Is féidir leat a rialú iarbhír do ríomhaire ag bogearraí scríobh go trí bíomaí infridhearg, figiúirí amach cén áit a bhfuil do lámha an duine, fiú gan teagmháil do mhéarchlár. Shíl muid gur mhaith linn a roinnt ar mear glimpse ag an, mar shampla. [Ag seinm ceoil] Mar sin, ní mór dúinn ina n-iomláine bunch de na rudaí seo, freisin, ar a dtugtar bannaí lámh Myo a chuir tú os cionn do forearm agus ansin is féidir leat a rialú an fíor domhan nó an domhan fíorúil mar seo. [Ag seinm ceoil] Nó, ní mór dúinn freisin roinnt Google Cairtchlár, a bhfuil literally, cosúil le, bosca cairtchláir d'fhéadfaí tú a chur ar do aghaidh, ach sleamhnán i do ghuthán isteach é ionas go chuir tú an ghloine ar do fón i ndáiríre gar do chuid súl. Agus is é Google Cairtchlár saor go leor ag $ 10 nó $ 20. Agus tá sé lionsaí beag is beagán de thalamh athrú an íomhá ar an scáileán ar do duine súile a thabhairt duit tuiscint ar doimhneacht ionas go mbeidh tú i ndáiríre 3D timpeallacht i os comhair tú. Ní mór dúinn freisin roinnt Samsung Gear, a Is é an leagan níos costasaí de seo, ach is féidir a sleamhnán an gcéanna i Fón Android agus a thabhairt duit an illusion of-- nó a thabhairt ar an taithí de réaltacht fhíorúil. Agus inár dhá nóiméad deiridh, cheap muid gur mhaith linn iarracht a dhéanamh. Más féidir liom a tionscadal ar a bhfuil Colton anseo ach a whet do appetite, lig dom dul ar aghaidh agus caith suas ar an scáileán mór anseo. Lig dom a mharú na soilse. Colton, ar mhaith leat dul ar aghaidh agus a chur ar do chill ar feadh nóiméad agus teacht ar aghaidh go dtí an lár an stáitse? Agus ba mhaith leat a project-- is é seo cad a fheiceann Colton. Anois, tá an Wi-Fi i anseo nach bhfuil láidir amhlaidh chun an ngléas go bhfuil sé seo Super láidir, ach tá Colton literally san áit seo futuristic draíochta. Feiceann sé ach íomhá amháin. Tá tú ag féachaint ar a shúil chlé agus ar dheis go bhfuil a inchinn fuála le chéile i dtrí tríthoiseach timpeallacht ar a aghaidh. Sé roghnaithe ach rogha roghchlár anseo. Agus mar sin arís, tá sé ag caitheamh an headset le fón Samsung ar sé go bhfuil gan sreang gobadh ar ár forchostais. Anois go bhfuil tú ag ar Mars, I mo thuairimse,? COLTON: I mo thuairimse, mar sin. Níl mé cinnte [inaudible]. [Gáire] DAVID MALAN: Casadh amach Tá na biachláir Mars. COLTON: [inaudible] roinnt fionnuar áiteanna más mian linn dul to-- DAVID MALAN: Cén áit ba mhaith linn dul? COLTON: [inaudible] DAVID MALAN: Agus a ligean ar féach i gcás ina Colton á chur chugainn anois. COLTON: [inaudible] DAVID MALAN: Mar sin, níl an oiread sin áiteanna éagsúla is féidir leat a chur féin. Níl FAPIs via ar féidir leat cluichí nó idirghníomhaíochtaí a scríobh go reáchtáil, ar deireadh thiar, ar an teileafón. Mar sin, tá tú i ndáiríre ach scríobh app fón póca. Ach a bhuíochas leis na bogearraí agus na cumais grafaicí, anois tá Colton sa teachín beag bídeach. Agus ag an riosca déanamh damáiste dúinn féin, Beidh Colton agus mé bata thart ar feadh agus ag an deireadh ranga anseo inniu más mhaith leat chun teacht suas agus spraoi. Agus beidh orainn a thabhairt orthu ar ais an tseachtain seo chugainn chomh maith. Gan a thuilleadh, gleo go bhfuil sé do lá atá inniu. Beidh orainn a fheiceann tú an tseachtain seo chugainn. [MUSIC - cúpla ragga, "MAN bad"]