1 00:00:00,000 --> 00:00:03,493 >> [Daqq tal-mużika] 2 00:00:03,493 --> 00:00:04,934 3 00:00:04,934 --> 00:00:07,100 Doug LLOYD: Fil videos tagħna fuq suġġetti web iżvilupp, 4 00:00:07,100 --> 00:00:10,560 konna semma l-kunċett ta ' database għal xi ftit drabi, id-dritt? 5 00:00:10,560 --> 00:00:12,700 Allura database int probabbilment familjari ma minn 6 00:00:12,700 --> 00:00:15,780 jgħidu li jużaw Microsoft Excel jew Google Spreadsheets. 7 00:00:15,780 --> 00:00:20,650 Huwa verament ftit organizzata sensiela ta 'skedi, ringieli, u kolonni. 8 00:00:20,650 --> 00:00:23,140 >> U database huwa fejn ħwienet websajt tagħna 9 00:00:23,140 --> 00:00:26,760 informazzjoni li hija importanti għall-websajt tagħna biex jaħdem kif suppost. 10 00:00:26,760 --> 00:00:30,150 Għal darb'oħra, eżempju tassew komuni hawn huwa ħażna usernames u passwords 11 00:00:30,150 --> 00:00:32,824 f'database, b'tali mod li meta zkuk utent fis-website tagħna, 12 00:00:32,824 --> 00:00:36,690 database tista 'tiġi staqsew biex tara jekk teżisti dak l-utent fid-database. 13 00:00:36,690 --> 00:00:39,260 U jekk huma, verifika li password tagħhom hija korretta. 14 00:00:39,260 --> 00:00:43,420 U jekk password tagħhom hija korretta, allura nistgħu nagħtuhom x'ikun paġna 15 00:00:43,420 --> 00:00:45,370 dawn qed titlob. 16 00:00:45,370 --> 00:00:48,590 >> Allura int probabilment, għal darb'oħra, familjari ma din l-idea minn Excel jew Google 17 00:00:48,590 --> 00:00:49,430 Spreadsheets. 18 00:00:49,430 --> 00:00:52,980 Għandna databases, tabelli, ringieli u kolonni., 19 00:00:52,980 --> 00:00:56,450 U li verament tip tas-sett fundamentali 20 00:00:56,450 --> 00:00:58,470 tal tqassim ġerarkika hawn. 21 00:00:58,470 --> 00:00:59,800 Allura hawnhekk Excel spreadsheet. 22 00:00:59,800 --> 00:01:02,640 U jekk inti stajt qatt fetħet din jew programm ieħor simili 23 00:01:02,640 --> 00:01:06,780 inti taf li dawn hawn huma rows-- 1, 2, 3, 4, 5, 6, 7. 24 00:01:06,780 --> 00:01:08,760 Dawn huma kolonni. 25 00:01:08,760 --> 00:01:11,790 >> Forsi stabbiliti hawn, għalkemm inti tista ' ma jużawx din il-karatteristika terriblement much-- 26 00:01:11,790 --> 00:01:15,370 I ser zoom in-- għandna din l-idea ta 'folja. 27 00:01:15,370 --> 00:01:17,930 Allura forsi dawn il-folji, jekk I jalterna u lura, 28 00:01:17,930 --> 00:01:21,600 huma tabelli differenti li jeżistu fid-database tiegħi. 29 00:01:21,600 --> 00:01:25,210 U jekk aħna nkomplu l-eżempju kollha il-mod, l-isem ta 'din id-database 30 00:01:25,210 --> 00:01:26,940 huwa Book 1. 31 00:01:26,940 --> 00:01:28,710 Maybe I għandhom Ktieb 2 u Book 3. 32 00:01:28,710 --> 00:01:33,270 Allura kull fajl Excel hija database, kull folja huwa tabella, 33 00:01:33,270 --> 00:01:39,530 u ġewwa ta 'kull tabella I jkollhom din l-idea ta 'ringieli u kolonni. 34 00:01:39,530 --> 00:01:41,900 >> Allura kif naħdem ma 'din id-database? 35 00:01:41,900 --> 00:01:43,630 Kif nista 'nikseb informazzjoni minnha? 36 00:01:43,630 --> 00:01:47,540 Ukoll hemm lingwa msejħa SQL-- li I normalment biss sejħa Sequel-- 37 00:01:47,540 --> 00:01:50,010 u inhi għall- Strutturat Mistoqsija Lingwa. 38 00:01:50,010 --> 00:01:52,981 U huwa lingwa ta 'programmar, imma hija programmazzjoni pjuttost limitat 39 00:01:52,981 --> 00:01:53,480 lingwa. 40 00:01:53,480 --> 00:01:56,407 Mhuwiex pjuttost simili oħrajn li ħdimna ma. 41 00:01:56,407 --> 00:01:58,240 Iżda l-għan ta 'dan lingwa ta 'programmar 42 00:01:58,240 --> 00:02:01,570 huwa għall-mistoqsija database, biex titlob informazzjoni ta 'database, 43 00:02:01,570 --> 00:02:04,480 isibu l-informazzjoni database, u l-bqija. 44 00:02:04,480 --> 00:02:08,449 >> Aħna wkoll, fil CS50-- u huwa ħafna pjattaforma komuni, huwa msejjaħ MySQL. 45 00:02:08,449 --> 00:02:10,600 Dak hu li nużaw fil-kors. 46 00:02:10,600 --> 00:02:12,880 Huwa ta 'sors miftuħ pjattaforma li tistabbilixxi 47 00:02:12,880 --> 00:02:16,732 hekk imsejħa database-- relazzjonali database, effettiv. 48 00:02:16,732 --> 00:02:18,440 Aħna ma bżonn li tikseb fis wisq dettall 49 00:02:18,440 --> 00:02:20,930 fuq dak database relazzjonali hu. 50 00:02:20,930 --> 00:02:24,650 Iżda l-lingwa SQL huwa ħafna adept li jkun hemm ħidma 51 00:02:24,650 --> 00:02:29,760 ma MySQL u simili ieħor stili ta 'databases relazzjonali. 52 00:02:29,760 --> 00:02:34,010 >> U ħafna installazzjonijiet ta MySQL jiġu ma 'xi ħaġa 53 00:02:34,010 --> 00:02:37,760 imsejħa phpMyAdmin, li huwa utent grafika 54 00:02:37,760 --> 00:02:40,970 interface-- a GUI-- li jagħmilha ftit aktar 55 00:02:40,970 --> 00:02:44,410 faċli biex tesegwixxi utent mistoqsijiet database, 56 00:02:44,410 --> 00:02:48,980 minħabba databases mhumiex biss użati billi programmaturi avvanzati, id-dritt? 57 00:02:48,980 --> 00:02:51,510 Kultant hemm dawn in-negozji ż-żgħar, 58 00:02:51,510 --> 00:02:53,900 u ma tistax taffordja li kiri tim ta 'programmaturi, 59 00:02:53,900 --> 00:02:56,700 iżda huma għad għandhom bżonn li taħżen informazzjoni f'database. 60 00:02:56,700 --> 00:02:59,300 >> Xi ħaġa simili phpMyAdmin jagħmilha faċli ħafna għal xi ħadd 61 00:02:59,300 --> 00:03:03,630 li qatt ma programmati qabel biex pick up u jsiru familjari mal-mod kif 62 00:03:03,630 --> 00:03:07,710 li jaħdmu ma 'database. 63 00:03:07,710 --> 00:03:11,800 Il-problema hija, phpMyAdmin, filwaqt li huwa għodda meraviljuż għat-tagħlim 64 00:03:11,800 --> 00:03:14,850 dwar databases, huwa manwali. 65 00:03:14,850 --> 00:03:18,050 Int ser ikollok log fis u tesegwixxi jikkmanda u t-tip 66 00:03:18,050 --> 00:03:19,910 affarijiet fil manwalment. 67 00:03:19,910 --> 00:03:23,160 >> U kif nafu mill tagħna pereżempju dwar l-ipprogrammar tal-web PHP, 68 00:03:23,160 --> 00:03:26,550 jkollhom jagħmlu manwalment affarijiet fuq il-websajt tagħna, 69 00:03:26,550 --> 00:03:30,970 jekk irridu dinamiku, li jirrispondu attiva website, forsi mhux l-aħjar approċċ. 70 00:03:30,970 --> 00:03:33,980 Nixtiequ li ssib mod biex forsi awtomat dan b'xi. 71 00:03:33,980 --> 00:03:37,864 U SQL se jippermettulna li jagħmlu dan. 72 00:03:37,864 --> 00:03:39,780 Allura meta aħna qed tmur biex tibda taħdem ma SQL, 73 00:03:39,780 --> 00:03:41,220 għandna l-ewwel jeħtieġ li jkollhom database li jaħdmu magħhom. 74 00:03:41,220 --> 00:03:42,510 Ħolqien ta 'database xi ħaġa inti probabilment 75 00:03:42,510 --> 00:03:45,350 se tagħmel fil phpMyAdmin, għaliex ikollok bzonn biss li tagħmel dan darba, 76 00:03:45,350 --> 00:03:49,690 u l-sintassi biex dan isir huwa ħafna aktar sempliċi. 77 00:03:49,690 --> 00:03:51,940 Huwa ħafna aktar faċli li tagħmel dan fil-user interface grafiku 78 00:03:51,940 --> 00:03:53,520 minn ittajpjar it out bħala kmand. 79 00:03:53,520 --> 00:03:55,186 Il-kmand jista 'jiksbu ineffiċjenti ftit. 80 00:03:55,186 --> 00:03:58,889 Bl-istess mod, ħolqien ta 'tabella tista jiksbu pjuttost ftit diffiċli ukoll. 81 00:03:58,889 --> 00:04:01,930 U hekk affarijiet simili ħolqien ta 'database u l-ħolqien ta 'tabella, li int 82 00:04:01,930 --> 00:04:06,270 probabbilment biss se jagħmlu once-- darba kull tabella, darba kull database-- 83 00:04:06,270 --> 00:04:09,040 huwa OK biex tagħmel dan fil interface grafika. 84 00:04:09,040 --> 00:04:11,570 Fil-proċess ta ' ħolqien ta 'tabella, inti ser 85 00:04:11,570 --> 00:04:14,840 ukoll għandek tispeċifika kollha ta 'l kolonni li se jkunu f'dik it-tabella. 86 00:04:14,840 --> 00:04:18,149 X'tip ta 'informazzjoni ma inti tixtieq li taħżen fit-tabella? 87 00:04:18,149 --> 00:04:24,520 Forsi isem ta 'utent u data tat-twelid, password, numru user ID u forsi 88 00:04:24,520 --> 00:04:26,170 belt u l-istat, id-dritt? 89 00:04:26,170 --> 00:04:30,080 >> U għal kull darba we tixtieq iżżid utent għad-database, aħna rridu nġibu sitt kollha 90 00:04:30,080 --> 00:04:31,890 ta 'dawk biċċiet ta' informazzjoni. 91 00:04:31,890 --> 00:04:34,840 U nagħmlu dan billi jżid ringieli mat-tabella. 92 00:04:34,840 --> 00:04:37,800 Allura aħna ewwel toħloq database, allura noħolqu tabella. 93 00:04:37,800 --> 00:04:40,100 Bħala parti mill-ħolqien tabella, aħna huma mitluba 94 00:04:40,100 --> 00:04:44,280 li tispeċifika kull kolonna li nixtiequ f'din it-tabella. 95 00:04:44,280 --> 00:04:47,247 U mbagħad kif aħna jibdew jammontaw informazzjoni lill-database 96 00:04:47,247 --> 00:04:49,580 u query d-database aktar generally-- mhux sempliċement tiżdied, 97 00:04:49,580 --> 00:04:51,610 imma kollox aħna do-- aħna ser tkun jittrattaw 98 00:04:51,610 --> 00:04:58,870 bil ringieli tat-tabella, li hija waħda informazzjoni utent mis-sett kollu. 99 00:04:58,870 --> 00:05:03,210 >> Allura kull kolonna SQL huwa kapaċi żamma tad-data ta 'tip ta' data partikolari. 100 00:05:03,210 --> 00:05:06,560 Allura aħna tip ta 'eliminata din idea ta 'tipi ta' data fil PHP, 101 00:05:06,560 --> 00:05:08,747 iżda dawn qed lura hawn fil SQL. 102 00:05:08,747 --> 00:05:10,080 U hemm ħafna tipi ta 'data. 103 00:05:10,080 --> 00:05:13,420 Hawn biss 20 minnhom, iżda huwa lanqas kollha kemm huma. 104 00:05:13,420 --> 00:05:16,240 Allura aħna għandna ideat simili INTs-- Integers-- aħna probabilment taf 105 00:05:16,240 --> 00:05:17,760 li din il-kolonna tista 'żżomm interi. 106 00:05:17,760 --> 00:05:21,077 U hemm varjazzjonijiet thereon-- SMALLINT, TINYINT, MEDIUMINT, BIGINT. 107 00:05:21,077 --> 00:05:22,660 Forsi aħna mhux dejjem bżonn erba gdim. 108 00:05:22,660 --> 00:05:26,800 Forsi għandna bżonn tmien bytes, u hekk aħna jistgħu jużaw dawn il-varjazzjonijiet fuq interi 109 00:05:26,800 --> 00:05:28,510 li jkun daqsxejn aktar spazju effiċjenti. 110 00:05:28,510 --> 00:05:31,899 Nistgħu nagħmlu numri deċimali, aħna tista 'tagħmel f'wiċċ l-ilma punt numri. 111 00:05:31,899 --> 00:05:32,940 Dawn huma pjuttost simili. 112 00:05:32,940 --> 00:05:34,773 Hemm xi differenzi, u jekk inti 113 00:05:34,773 --> 00:05:37,330 tixtieq tfittex l- Tip SQL tal gwida, inti 114 00:05:37,330 --> 00:05:40,670 jista 'jara dak l żgħira differenzi huma bejniethom. 115 00:05:40,670 --> 00:05:43,250 >> Forsi aħna tixtieq li taħżen informazzjoni dwar data u l-ħin. 116 00:05:43,250 --> 00:05:47,047 Forsi aħna qed iżżomm rekord ta ' meta l-utent ssieħbu websajt tagħna, 117 00:05:47,047 --> 00:05:48,880 u hekk forsi rridu li jkollhom kolonna li l- 118 00:05:48,880 --> 00:05:52,820 żmien data jew timestamp li jindika meta l-utent fil-fatt 119 00:05:52,820 --> 00:05:54,130 ffirmaw. 120 00:05:54,130 --> 00:05:56,132 Nistgħu nagħmlu ġeometriji u linestrings. 121 00:05:56,132 --> 00:05:57,340 Dan huwa attwalment pretty jibred. 122 00:05:57,340 --> 00:06:01,410 Nistgħu tfassal a żona ġeografika bl-użu 123 00:06:01,410 --> 00:06:05,110 Koordinati GIS plot out żona. 124 00:06:05,110 --> 00:06:08,580 Allura tista 'attwalment jaħżnu dik it-tip ta 'informazzjoni fil-kolonna SQL. 125 00:06:08,580 --> 00:06:11,390 >> TEST huwa biss blobs ġganti ta 'test, forsi. 126 00:06:11,390 --> 00:06:12,840 ENUMs huma tip ta 'interessanti. 127 00:06:12,840 --> 00:06:16,080 Dawn fil-fatt jeżistu C. Aħna ma jitkellmu dwar minnhom minħabba li mhux qed 128 00:06:16,080 --> 00:06:19,110 terriblement komunement użati, mill-inqas CS50. 129 00:06:19,110 --> 00:06:22,680 Iżda huwa ta 'tip ta' data enumerata, li huwa kapaċi li jżomm valuri limitati. 130 00:06:22,680 --> 00:06:25,940 >> Eżempju verament tajba hawn ikunu biex toħloq ENUM fejn il-seven 131 00:06:25,940 --> 00:06:29,394 valuri possibbli huma Ħadd, it-tnejn, IT-TLIETA, l-Erbgħa, il-Ħamis, il-Ġimgħa, 132 00:06:29,394 --> 00:06:30,060 Sibt, id-dritt? 133 00:06:30,060 --> 00:06:33,311 Dik il-ġurnata tip ta 'data ta' Ġimgħa ma teżistix, 134 00:06:33,311 --> 00:06:35,310 imma aħna tista 'toħloq tip ta 'data enumerati bħal 135 00:06:35,310 --> 00:06:39,400 li f'dik il-kolonna jistgħu biss qatt żżomm wieħed minn dawk is-seba valuri possibbli. 136 00:06:39,400 --> 00:06:44,300 Imxejna enumerati kollha tal-valuri possibbli. 137 00:06:44,300 --> 00:06:47,630 >> Imbagħad għandna CHAR u varchar, u stajt kulur aħdar dawn 138 00:06:47,630 --> 00:06:49,505 għaliex aħna qed attwalment ser tieħu t-tieni 139 00:06:49,505 --> 00:06:51,950 biex jitkellmu dwar id-differenza bejn dawn iż-żewġ affarijiet. 140 00:06:51,950 --> 00:06:55,780 Allura CHAR, b'differenza C fejn CHAR kien karattru wieħed, 141 00:06:55,780 --> 00:07:00,730 fi SQL a CHAR tirreferi għal string tul fiss. 142 00:07:00,730 --> 00:07:02,620 U meta aħna joħolqu dan kolonna, aħna fil-fatt 143 00:07:02,620 --> 00:07:05,070 tista 'tispeċifika t-tul tas-sekwenza. 144 00:07:05,070 --> 00:07:08,080 >> Allura f'dan l-eżempju, nistgħu ngħidu CHAR (10). 145 00:07:08,080 --> 00:07:11,190 Dan ifisser li kull element ta 'dik kolonna 146 00:07:11,190 --> 00:07:13,910 se jikkonsisti minn 10 bytes ta 'informazzjoni. 147 00:07:13,910 --> 00:07:15,770 Mhux aktar, xejn anqas. 148 00:07:15,770 --> 00:07:21,780 Mela jekk nippruvaw u mqiegħda fil-15 bit jew element 15 karattru 149 00:07:21,780 --> 00:07:25,340 jew il-valur fis din il-kolonna, aħna qed biss jiksbu l-ewwel 10. 150 00:07:25,340 --> 00:07:27,290 Jekk nistaqsu fiż-żewġ valur fit karattru, 151 00:07:27,290 --> 00:07:30,700 aħna qed tmur biex ikollhom it-tnejn karattri, u mbagħad tmien gdim nulla. 152 00:07:30,700 --> 00:07:34,990 Aħna qatt ma ser tkun aktar effiċjenti minn dak. 153 00:07:34,990 --> 00:07:37,727 >> A varchar huwa tip simili kunċett tagħna ta string 154 00:07:37,727 --> 00:07:39,560 li aħna qed familjari bil minn C jew minn PHP. 155 00:07:39,560 --> 00:07:40,830 Huwa string tul varjabbli. 156 00:07:40,830 --> 00:07:42,560 U meta inti toħloq din il-kolonna, inti biss 157 00:07:42,560 --> 00:07:44,860 tispeċifika l-tulijiet massimi possibbli. 158 00:07:44,860 --> 00:07:49,065 Allura forsi 99, jew komunement 255. 159 00:07:49,065 --> 00:07:50,440 Dan ikun it-tul massimu. 160 00:07:50,440 --> 00:07:52,890 U hekk jekk konna ħażna 15 sekwenza ta 'karattri, 161 00:07:52,890 --> 00:07:56,157 aħna juża 15 bytes, forsi 16 bytes għall-terminatur null. 162 00:07:56,157 --> 00:07:57,990 Jekk konna ħażna ta ' tliet sekwenza ta 'karattri, 163 00:07:57,990 --> 00:08:01,120 aħna se jużaw tlieta jew erba 'bytes. 164 00:08:01,120 --> 00:08:03,050 Iżda aħna ma se jużaw bis-sħiħ 99. 165 00:08:03,050 --> 00:08:05,190 >> Allura għaliex kieku rridu kemm? 166 00:08:05,190 --> 00:08:08,210 Ukoll, jekk għandna bżonn biex insemmu kif xi ħaġa twil huwa ma 'varchar, 167 00:08:08,210 --> 00:08:10,680 għandna tip ta 'jtenni madwar hija biss bħal għamilna fis-C 168 00:08:10,680 --> 00:08:12,230 u figura fejn huwa obbligat jieqfu. 169 00:08:12,230 --> 00:08:15,920 Billi jekk nafu li kollox f'din il-kolonna hija ta '10 bytes, forsi 170 00:08:15,920 --> 00:08:19,220 nafu li l-informazzjoni, nistgħu jaqbżu 10 bytes, 10 bytes, 10 bytes, 10 bytes, 171 00:08:19,220 --> 00:08:21,790 u dejjem issib l- bidu tas-sekwenza. 172 00:08:21,790 --> 00:08:25,210 >> Allura aħna jista 'jkollhom xi spazju moħli bil-CHAR, 173 00:08:25,210 --> 00:08:28,510 imma forsi hemm kummerċ off ta 'wara veloċità aħjar 174 00:08:28,510 --> 00:08:30,160 fil-navigazzjoni tal-database. 175 00:08:30,160 --> 00:08:32,330 Iżda forsi irridu li l- flessibilità ta 'varchar 176 00:08:32,330 --> 00:08:36,710 minflok having-- Jekk CHAR tagħna kien 255, iżda ħafna utenti tagħna 177 00:08:36,710 --> 00:08:40,537 kienu inputjar biss tlieta jew erba 'bytes valur ta 'informazzjoni jew tlieta jew erba 178 00:08:40,537 --> 00:08:41,870 karattri jiswew ta 'informazzjoni. 179 00:08:41,870 --> 00:08:44,324 >> Iżda xi utenti kienu qed jużaw l-255 kollu, forsi 180 00:08:44,324 --> 00:08:45,990 Varchar ikun aktar xieraq hemm. 181 00:08:45,990 --> 00:08:49,840 Huwa tip ta 'kummerċ off, u ġeneralment għal finijiet ta 'CS50, 182 00:08:49,840 --> 00:08:54,107 inti m'għandekx bżonn ninkwetaw wisq dwar jekk inti tuża CHAR jew varchar. 183 00:08:54,107 --> 00:08:57,190 Iżda fid-dinja reali, dawn l-affarijiet do kwistjoni minħabba kollha ta 'dawn il-kolonni 184 00:08:57,190 --> 00:08:59,300 jieħdu spazju fiżiku attwali. 185 00:08:59,300 --> 00:09:04,150 U l-ispazju fiżiku, fil- dinja reali, waslet fi primjum. 186 00:09:04,150 --> 00:09:06,800 >> Allura konsiderazzjoni ieħor meta int bini ta 'tabella 187 00:09:06,800 --> 00:09:09,840 huwa li pick kolonna waħda li tkun dak li sejjaħ kodiċi primarju. 188 00:09:09,840 --> 00:09:14,350 U kodiċi primarju huwa kolonna fejn kull valur wieħed huwa uniku. 189 00:09:14,350 --> 00:09:19,980 U dan ifisser li inti tista 'faċilment pick out ringiela waħda biss billi tħares 190 00:09:19,980 --> 00:09:22,450 fil-kodiċi primarju ta 'dak ringiela. 191 00:09:22,450 --> 00:09:24,580 Allura per eżempju, inti ġeneralment, ma 'utenti, 192 00:09:24,580 --> 00:09:27,210 Ma rridx żewġ utenti li għandhom l-istess numru user ID. 193 00:09:27,210 --> 00:09:28,960 U hekk forsi ikollok lottijiet ta 'informazzjoni, 194 00:09:28,960 --> 00:09:30,793 u forsi żewġ utenti jistgħu għandhom l-istess name-- 195 00:09:30,793 --> 00:09:32,650 għandek John Smith u John Smith. 196 00:09:32,650 --> 00:09:34,520 Li mhux neċessarjament problema, għaliex hemm nies multipli 197 00:09:34,520 --> 00:09:35,830 fid-dinja jismu John Smith. 198 00:09:35,830 --> 00:09:40,766 Iżda aħna biss numru user wieħed 10, utent wieħed numru 11, 12, 13 ID. 199 00:09:40,766 --> 00:09:42,640 Aħna ma jkollhom żewġ utenti bl-istess numru, 200 00:09:42,640 --> 00:09:46,010 u għalhekk forsi numri utent ID tkun kodiċi primarju tajba. 201 00:09:46,010 --> 00:09:48,610 >> Aħna ma jkollhom kwalunkwe duplikazzjoni, u nistgħu issa unikament 202 00:09:48,610 --> 00:09:52,619 jidentifikaw kull ringiela waħda biss billi tħares lejn il-kolonna. 203 00:09:52,619 --> 00:09:55,410 Choosing ċwievet primarja tista 'attwalment jagħmlu operazzjonijiet tabella sussegwenti 204 00:09:55,410 --> 00:09:59,710 ħafna aktar faċli għaliex inti tista 'lieva il-fatt li ċerti fillieri se 205 00:09:59,710 --> 00:10:02,720 tkun unika, jew kolonna ċerti tal database tiegħek jew tabella 206 00:10:02,720 --> 00:10:06,030 se jkun uniku li pick ringieli partikolari out. 207 00:10:06,030 --> 00:10:08,790 >> Tista 'wkoll ikollhom primarja konġunt ewlenin, li inti tista 'ssib okkażjoni 208 00:10:08,790 --> 00:10:11,720 għall-użu, li huwa biss kombinazzjoni ta 'żewġ kolonni li 209 00:10:11,720 --> 00:10:13,280 huwa garantit li jkun uniku. 210 00:10:13,280 --> 00:10:16,410 Allura forsi għandek wieħed kolonna li bħala u Bs, 211 00:10:16,410 --> 00:10:19,290 kolonna waħda li wieħed, tnejn, u tlieta, iżda inti ser biss qatt 212 00:10:19,290 --> 00:10:23,660 jkollhom A1 waħda, wieħed A2, u hekk u hekk. 213 00:10:23,660 --> 00:10:28,980 Imma inti jista 'jkollok B2, a C2, jew A1, A2, A3, A4. 214 00:10:28,980 --> 00:10:32,840 Allura inti jista 'jkollok Kif multipli, multipli Bs, dawk multipli, twos multipli, 215 00:10:32,840 --> 00:10:38,567 imma int tista 'biss qatt jkollhom A1 waħda, B2, C3, u l-bqija. 216 00:10:38,567 --> 00:10:40,400 So kif għidt, SQL huwa lingwa ta 'programmar, 217 00:10:40,400 --> 00:10:42,024 iżda għandha vokabularju limitat b'mod ġust. 218 00:10:42,024 --> 00:10:44,880 Huwa mhux daqshekk espansiva kif C u PHP u lingwi oħra 219 00:10:44,880 --> 00:10:46,350 li nitkellmu fil-kors. 220 00:10:46,350 --> 00:10:49,960 Huwa aktar verbose lingwa minn dak li aħna qed 221 00:10:49,960 --> 00:10:52,789 ser jitkellmu dwar f'dan video, għaliex f'dan il-video 222 00:10:52,789 --> 00:10:54,830 aħna qed tmur biex jitkellmu dwar erba 'operazzjonijiet li aħna 223 00:10:54,830 --> 00:10:55,720 jista 'jwettaq fuq mejda. 224 00:10:55,720 --> 00:10:56,761 >> Hemm aktar minn hekk. 225 00:10:56,761 --> 00:10:58,730 Nistgħu nagħmlu aktar minn hekk, iżda għall-għanijiet tagħna, 226 00:10:58,730 --> 00:11:02,250 aħna qed ġeneralment se tkun qed tuża biss erba daħħal operations--, 227 00:11:02,250 --> 00:11:05,360 tagħżel, taġġorna, u ħassar. 228 00:11:05,360 --> 00:11:08,750 U inti tista 'probabbilment raden intuwittivament dak l-erba 'dawn l-affarijiet do. 229 00:11:08,750 --> 00:11:12,520 Iżda aħna ser jmorru fi ftit ta 'dettall fuq kull wieħed. 230 00:11:12,520 --> 00:11:15,780 >> Allura għal finijiet ta 'dan video, ejja nassumu 231 00:11:15,780 --> 00:11:18,870 aħna ġej tnejn tabelli fl database unika. 232 00:11:18,870 --> 00:11:23,460 Għandna tabella msejħa Utenti li għandha erba columns-- numru ta 'ID, username, 233 00:11:23,460 --> 00:11:25,350 password, u l-isem sħiħ. 234 00:11:25,350 --> 00:11:27,430 U aħna għandna t-tieni tabella fl-istess database 235 00:11:27,430 --> 00:11:32,129 imsejħa Moms li biss taħżen l-informazzjoni dwar username u omm. 236 00:11:32,129 --> 00:11:33,920 Allura għal kulħadd ta 'eżempji f'dan il-video, aħna ser 237 00:11:33,920 --> 00:11:37,945 tkun qed tuża din id-database u aġġornamenti sussegwenti għaliha. 238 00:11:37,945 --> 00:11:40,070 Mela ejja ngħidu li rridu żid informazzjoni għal tabella. 239 00:11:40,070 --> 00:11:44,460 Dak hu l-inserzjoni operazzjoni ma. 240 00:11:44,460 --> 00:11:46,550 Biex jispjegaw kollha dawn il-kmandijiet, jien ser 241 00:11:46,550 --> 00:11:48,860 nagħtikom skeletru ġenerali għall-użu. 242 00:11:48,860 --> 00:11:51,661 Minħabba bażikament, il-mistoqsijiet ser tfittex pretty simili, 243 00:11:51,661 --> 00:11:54,660 aħna qed biss ser jinbidlu biċċiet kemmxejn differenti ta 'informazzjoni 244 00:11:54,660 --> 00:11:56,750 biex tagħmel affarijiet differenti it-tabella. 245 00:11:56,750 --> 00:11:59,200 >> Allura għall DAĦĦAL, l-iskeletru jistenna tip ta 'bħal dan. 246 00:11:59,200 --> 00:12:02,230 Aħna rridu li ddaħħal fil tabella partikolari. 247 00:12:02,230 --> 00:12:05,290 Imbagħad għandna parentesi miftuħa u lista ta 'kolonni 248 00:12:05,290 --> 00:12:08,070 li aħna tixtieq li jitqiegħed valuri fis. 249 00:12:08,070 --> 00:12:10,974 Parentesi qrib, il- wara valuri, u mbagħad 250 00:12:10,974 --> 00:12:13,390 għal darb'oħra, aħna lista l-valuri irridu li tqiegħed fit-tabella. 251 00:12:13,390 --> 00:12:15,950 >> Allura eżempju ta 'dan ikun ġej. 252 00:12:15,950 --> 00:12:19,170 Irrid li ddaħħal fil-tabella utenti l columns-- wara 253 00:12:19,170 --> 00:12:21,010 username, password, u fullname. 254 00:12:21,010 --> 00:12:25,282 Allura ringiela ġdida fejn jien tqegħid f'dawn it-tliet kolonni u aħna 255 00:12:25,282 --> 00:12:30,030 se timplimenta fil-valuri Newman, USMAIL, u Newman. 256 00:12:30,030 --> 00:12:32,730 Allura f'dan il-każ, jien tqegħid tal-Newman zghar 257 00:12:32,730 --> 00:12:38,710 fil-kolonna username, password USMAIL, u l-isem kapital sħiħ N 258 00:12:38,710 --> 00:12:41,940 Newman fil-kolonna fullname. 259 00:12:41,940 --> 00:12:44,240 >> Allura hawnhekk huwa dak tad-database dehru qishom qabel. 260 00:12:44,240 --> 00:12:48,250 Hawn dak il-mejda utenti fuq il- top dehru qishom qabel għamilna dan. 261 00:12:48,250 --> 00:12:50,760 Wara we tesegwixxi dan query, irridu jiksbu dan. 262 00:12:50,760 --> 00:12:54,790 Imxejna miżjud ringiela ġdida għall-tabella. 263 00:12:54,790 --> 00:12:56,810 Iżda Avviż dan ħaġa waħda li jien ma jispeċifikaw, 264 00:12:56,810 --> 00:12:59,880 iżda b'xi stajt ltqajna valur għal, li huwa dan 12 dritt hawn. 265 00:12:59,880 --> 00:13:02,820 I ma jgħidu jien ridt li jitqiegħdu Numru ID fil hemmhekk. 266 00:13:02,820 --> 00:13:04,900 Jien ridt li tpoġġi username, password, fullname. 267 00:13:04,900 --> 00:13:06,440 U jien għamilt dan, li l-multa. 268 00:13:06,440 --> 00:13:07,760 >> Imma I wkoll ltqajna dan 12. 269 00:13:07,760 --> 00:13:09,490 Għaliex ma I nikseb dan 12? 270 00:13:09,490 --> 00:13:12,904 Ukoll, jirriżulta li meta inti qed jiddefinixxu 271 00:13:12,904 --> 00:13:15,570 kolonna li se tkun tiegħek kodiċi primarju, li normalment, 272 00:13:15,570 --> 00:13:16,510 bħal I said, numru ta 'identifikazzjoni. 273 00:13:16,510 --> 00:13:18,718 Mhuwiex dejjem neċessarjament se tkun numru ta 'identifikazzjoni, 274 00:13:18,718 --> 00:13:22,380 iżda huwa ġeneralment idea tajba li tkun xi tip ta 'valur sħiħ. 275 00:13:22,380 --> 00:13:25,950 Inti għandek l-għażla fil phpMyAdmin meta int ħolqien database tiegħek 276 00:13:25,950 --> 00:13:31,130 jew mejda tiegħek biex jistabbilixxu li kolonna kif inkrementazzjoni auto. 277 00:13:31,130 --> 00:13:34,520 >> Liema hija idea verament tajba meta int taħdem ma 'kodiċi primarju, 278 00:13:34,520 --> 00:13:39,330 għaliex inti tixtieq kull valur f'dik il-kolonna tkun unika. 279 00:13:39,330 --> 00:13:43,310 U jekk tinsa tispeċifika dan għal aktar minn persuna waħda, 280 00:13:43,310 --> 00:13:46,240 issa għandek sitwazzjoni fejn f'dik il-kolonna m'għadux uniku. 281 00:13:46,240 --> 00:13:50,200 Għandek żewġ blanks, sabiex inti tista 'ebda itwal jidentifika unikament column-- 282 00:13:50,200 --> 00:13:54,150 jew inti tista m'għadhomx unikament jidentifikaw ringiela bbażata fuq il-kolonna. 283 00:13:54,150 --> 00:13:57,010 Huwa tilef kollha tagħha valur bħala kodiċi primarju. 284 00:13:57,010 --> 00:14:02,010 >> U hekk apparentement dak I għamlu hawnhekk huwa kkonfigurat l-user ID 285 00:14:02,010 --> 00:14:07,790 kolonna biex inkrement auto sabiex kull darba I żid informazzjoni lill-mejda, 286 00:14:07,790 --> 00:14:12,220 se awtomatikament tagħti me valur għall-kodiċi primarju. 287 00:14:12,220 --> 00:14:15,570 So I qatt ma tista tinsa li tagħmel dan minħabba il database se tagħmel dan għalija. 288 00:14:15,570 --> 00:14:16,587 Allura dak it-tip ta 'sbieħ. 289 00:14:16,587 --> 00:14:18,670 U hekk hu għalhekk irridu jiksbu 12 fil hemm, għaliex stajt 290 00:14:18,670 --> 00:14:21,772 stabbilit f'dik il-kolonna sa inkrement auto. 291 00:14:21,772 --> 00:14:23,730 Jekk I xi ħadd ieħor miżjud huwa d jkun 13, jekk I miżjuda 292 00:14:23,730 --> 00:14:27,890 xi ħadd ieħor huwa d tkun 14, u l-bqija. 293 00:14:27,890 --> 00:14:30,190 >> Mela ejja biss tagħmel wieħed inserzjoni aktar. 294 00:14:30,190 --> 00:14:34,530 Aħna ser daħħal fit-tabella moms, fil partikolari, il-username u l-omm 295 00:14:34,530 --> 00:14:37,390 kolonna, il-valuri Kramer u Babs Kramer. 296 00:14:37,390 --> 00:14:39,140 U hekk kellna dan qabel. 297 00:14:39,140 --> 00:14:41,800 Wara aħna tesegwixxi dik Query SQL, aħna għandna dan. 298 00:14:41,800 --> 00:14:47,290 Imxejna miżjud Kramer u Babs Kramer għat-tabella moms. 299 00:14:47,290 --> 00:14:48,350 >> Allura dak ddaħħal. 300 00:14:48,350 --> 00:14:51,850 SELECT huwa dak li nużaw biex jiġi estratt informazzjoni mit-tabella. 301 00:14:51,850 --> 00:14:54,390 Allura dan huwa kif nikbru informazzjoni mill-database. 302 00:14:54,390 --> 00:14:59,589 U kmandi hekk TAGĦŻEL ser ikunu użati ta 'spiss ħafna fl-ipprogrammar. 303 00:14:59,589 --> 00:15:02,130 Il ġenerali framework-- l iskeletru ġenerali tidher bħal dan. 304 00:15:02,130 --> 00:15:06,550 Agħżel sett ta 'kolonni minn tabella, u mbagħad b'għażla 305 00:15:06,550 --> 00:15:11,090 inti tista 'tispeċifika condition-- jew dak li aħna tipikament sejħa relattivi, 306 00:15:11,090 --> 00:15:13,010 normalment huwa t-terminu li nużaw fil SQL. 307 00:15:13,010 --> 00:15:16,490 >> Imma hija bażikament dak ringieli partikolari inti tixtieq li tikseb. 308 00:15:16,490 --> 00:15:19,100 Jekk inti tixtieq li, minflok jkollna kollox, dejqa l-isfel, 309 00:15:19,100 --> 00:15:20,060 dan huwa fejn inti tagħmel dan. 310 00:15:20,060 --> 00:15:22,777 U allura wieħed irid, inti tista 'ukoll tordna minn kolonna partikolari. 311 00:15:22,777 --> 00:15:25,860 Allura forsi inti tixtieq li jkollok affarijiet magħżula alfabetikament bbażata fuq kolonna waħda 312 00:15:25,860 --> 00:15:27,540 jew alfabetikament ibbażata fuq ieħor. 313 00:15:27,540 --> 00:15:30,610 >> Għal darb'oħra, FEJN u ORDNI MILL huma fakultattivi. 314 00:15:30,610 --> 00:15:32,681 Iżda dawn ser probabbilment ikunu useful-- partikolarment 315 00:15:32,681 --> 00:15:34,680 Fejn se jkun utli għal iċekknu sabiex inti ma 316 00:15:34,680 --> 00:15:37,460 nikseb database kollu tiegħek lura u jkollhom biex tiġi pproċessata, inti biss tikseb 317 00:15:37,460 --> 00:15:39,300 il-biċċiet ta 'li inti care about. 318 00:15:39,300 --> 00:15:44,932 Hekk per eżempju, I tista 'tixtieq li tagħżel Numru ta 'identifikazzjoni u fullname mill-utenti. 319 00:15:44,932 --> 00:15:46,140 Allura dak li tista 'din look like? 320 00:15:46,140 --> 00:15:48,270 Allura hawnhekk tabella utenti tiegħi. 321 00:15:48,270 --> 00:15:51,080 Irrid li tagħżel idnum u fullname minn utenti. 322 00:15:51,080 --> 00:15:52,300 What am I se tikseb? 323 00:15:52,300 --> 00:15:53,580 Jien ser tikseb dan. 324 00:15:53,580 --> 00:15:56,930 I ma dejqa l-isfel, hekk jien jkollna l-għadd ID għal kull ringiela 325 00:15:56,930 --> 00:16:00,850 u jien jkollna bis-sħiħ isem minn kull ringiela. 326 00:16:00,850 --> 00:16:02,210 >> KOLLOX SEW. 327 00:16:02,210 --> 00:16:05,640 X'jiġri jekk I tixtieq li jagħżlu password minn utenti WHERE-- hekk issa 328 00:16:05,640 --> 00:16:10,370 Jien żżid kundizzjoni, a predicate-- fejn idnum huwa inqas minn 12. 329 00:16:10,370 --> 00:16:13,660 Allura hawnhekk database tiegħi għal darb'oħra, utenti mejda tiegħi il-quċċata. 330 00:16:13,660 --> 00:16:17,030 What am I se tikseb jekk irrid tagħżel li l-informazzjoni, l-password, 331 00:16:17,030 --> 00:16:21,550 fejn user ID jew idnum huwa inqas minn 12? 332 00:16:21,550 --> 00:16:24,910 Jien ser tikseb dan informazzjoni lura, id-dritt? 333 00:16:24,910 --> 00:16:29,170 Dan jiġri li idnum huwa 10, anqas minn 12, in-numru ID 11 ta 'inqas minn 12. 334 00:16:29,170 --> 00:16:32,160 Jien jkollna l-password għal dawk ringieli. 335 00:16:32,160 --> 00:16:33,914 Dak hu li jien mitlub. 336 00:16:33,914 --> 00:16:34,580 Xi ngħidu dwar dan? 337 00:16:34,580 --> 00:16:39,170 X'jiġri jekk I tixtieq li jagħżlu star mill- moms tabella fejn username ugwali Jerry? 338 00:16:39,170 --> 00:16:43,780 OK, star tagħżel hija l-speċjali tip ta 'wild card hekk imsejħa 339 00:16:43,780 --> 00:16:45,670 li nużaw biex tikseb kollox. 340 00:16:45,670 --> 00:16:48,620 Allura dawn qed tgħid tagħżel username omm comma, li 341 00:16:48,620 --> 00:16:51,060 li jkun ġara l-uniku żewġ kolonni ta 'din it-tabella, 342 00:16:51,060 --> 00:16:53,260 I tista 'tagħżel biss star u tikseb kollox 343 00:16:53,260 --> 00:16:55,030 fejn il-username ugwali Jerry. 344 00:16:55,030 --> 00:16:59,380 U hekk dan huwa dak I se tikseb jekk I magħmula dan mistoqsija partikolari. 345 00:16:59,380 --> 00:17:01,810 >> Issa, databases huma kbar għaliex dawn jippermettu 346 00:17:01,810 --> 00:17:06,074 ahna torganizza l-informazzjoni forsi ftit aktar effiċjenti milli konna 347 00:17:06,074 --> 00:17:06,740 jista 'nkella. 348 00:17:06,740 --> 00:17:10,240 Aħna mhux bilfors li jaħżen kull biċċa ta 'informazzjoni rilevanti 349 00:17:10,240 --> 00:17:12,230 dwar l-utent fl-istess tabella. 350 00:17:12,230 --> 00:17:13,730 Kellna żewġ tabelli hemmhekk. 351 00:17:13,730 --> 00:17:15,734 >> Għandna bżonn li taħżen isem ommu kulħadd, il 352 00:17:15,734 --> 00:17:18,900 u forsi aħna ma jkollhomx sigurtà soċjali numru, għandna data tat-twelid tagħhom. 353 00:17:18,900 --> 00:17:21,819 Li mhux dejjem bżonn li jkun fl-istess tabella. 354 00:17:21,819 --> 00:17:25,339 Sakemm nistgħu jiddefinixxu relazzjonijiet bejn l-tables-- 355 00:17:25,339 --> 00:17:28,440 u li fejn dan relazzjonali tul database tip ta niġu 356 00:17:28,440 --> 00:17:32,130 fis play-- sakemm nistgħu jiddefinixxu relazzjonijiet bejn il-tabelli, 357 00:17:32,130 --> 00:17:35,545 nistgħu tip ta 'jikkompartimentalizzaw jew affarijiet astratt ta 'mod, 358 00:17:35,545 --> 00:17:37,670 fejn aħna biss l informazzjoni verament importanti 359 00:17:37,670 --> 00:17:39,270 we care about fit-tabella tal-utent. 360 00:17:39,270 --> 00:17:43,220 U allura għandna l-informazzjoni anċillari jew informazzjoni addizzjonali fit-tabelli oħra 361 00:17:43,220 --> 00:17:48,260 li nistgħu jgħaqqdu lura lill-prinċipali utenti tabella b'mod partikolari. 362 00:17:48,260 --> 00:17:52,200 >> Allura hawnhekk għandna dawn iż-żewġ tabelli, iżda hemm relazzjoni bejniethom, 363 00:17:52,200 --> 00:17:53,010 id-dritt? 364 00:17:53,010 --> 00:17:55,070 Jidher bħal username tista 'tkun xi ħaġa 365 00:17:55,070 --> 00:17:59,909 li teżisti komuni bejn dawn żewġ tabelli differenti. 366 00:17:59,909 --> 00:18:01,700 Allura dak li jekk issa għandna sitwazzjoni fejn aħna 367 00:18:01,700 --> 00:18:06,046 tixtieq li tikseb l-isem sħiħ ta 'utent minn tabella tal-utent, u omm tagħhom 368 00:18:06,046 --> 00:18:07,170 isem mit-tabella omm? 369 00:18:07,170 --> 00:18:10,960 Aħna ma jkollhom mod biex jiksbu li kif inhi, id-dritt? 370 00:18:10,960 --> 00:18:17,790 M'hemm l-ebda tabella waħda li fiha kemm-isem sħiħ u isem l-omm. 371 00:18:17,790 --> 00:18:20,400 Aħna ma jkollhom dik l-għażla minn dak li aħna stajt tidher s'issa. 372 00:18:20,400 --> 00:18:22,950 >> U hekk aħna li jintroduċu l-idea ta 'jissieħbu. 373 00:18:22,950 --> 00:18:24,857 U jingħaqad huma probabbilment l-aktar complex-- 374 00:18:24,857 --> 00:18:27,940 huwa verament aktar operazzjoni kumplessa aħna qed tmur biex jitkellmu dwar fil-video. 375 00:18:27,940 --> 00:18:30,040 Huma qed ftit kumplikata, iżda li ladarba inti tikseb l-hang minnha, 376 00:18:30,040 --> 00:18:31,248 dawn qed attwalment mhux wisq ħażina. 377 00:18:31,248 --> 00:18:32,820 Huwa biss każ speċjali ta 'TAGĦŻEL. 378 00:18:32,820 --> 00:18:37,120 Aħna qed tmur biex jagħżlu sett ta ' kolonni minn tabella li tgħaqqad 379 00:18:37,120 --> 00:18:40,650 fit-tieni tabella fuq xi relattivi. 380 00:18:40,650 --> 00:18:45,340 >> F'dan il-każ, taħseb dwarha simili this-- tabella waħda hija ċirku wieħed fuq hawn, 381 00:18:45,340 --> 00:18:47,530 tabella tnejn huwa ċirku ieħor minn hawn. 382 00:18:47,530 --> 00:18:49,410 U dik il-parti relattivi fin-nofs, huwa 383 00:18:49,410 --> 00:18:51,701 tip simili jekk taħseb dwar kif dijagramma Venn, liema 384 00:18:51,701 --> 00:18:52,670 ma għandhom in komuni? 385 00:18:52,670 --> 00:18:55,960 Aħna rridu li jgħaqqad dawn żewġ tabelli ibbażati fuq dak li għandhom komuni 386 00:18:55,960 --> 00:19:01,230 u joħolqu din it-tabella ipotetiku li hija l-għaqda tat-tnejn flimkien. 387 00:19:01,230 --> 00:19:03,480 Allura aħna ser tara dan fi Eżempju u forsi li ser jgħinu 388 00:19:03,480 --> 00:19:04,521 ċar it up ftit. 389 00:19:04,521 --> 00:19:09,260 Allura forsi inti tixtieq li tagħżel user.fullname u moms.mother 390 00:19:09,260 --> 00:19:13,220 mill-utenti li tgħaqqad fil- moms tabella f'kull sitwazzjoni 391 00:19:13,220 --> 00:19:16,790 fejn il-kolonna username huwa l-istess bejniethom. 392 00:19:16,790 --> 00:19:19,240 U dan huwa ġdid livell sintattiku hawn, dan l-utent. 393 00:19:19,240 --> 00:19:20,460 u moms .. 394 00:19:20,460 --> 00:19:26,697 Jekk qed nagħmel tabelli multipli flimkien, I tista 'tispeċifika tabella. 395 00:19:26,697 --> 00:19:29,530 I jista 'jiddistingwi b'mod partikolari dwar li fuq fil-qiegħ nett hemmhekk. 396 00:19:29,530 --> 00:19:33,220 I jistgħu jiddistingwu l-username kolonna tat-tabella utenti 397 00:19:33,220 --> 00:19:36,010 mill-kolonna username tal- moms tabella, li huma otherwise-- 398 00:19:36,010 --> 00:19:38,070 jekk aħna biss qal username ugwali username, li ma verament 399 00:19:38,070 --> 00:19:38,970 jfisser xejn. 400 00:19:38,970 --> 00:19:41,440 Aħna rridu li jagħmlu dan meta dawn jaqblu. 401 00:19:41,440 --> 00:19:46,080 >> So I tista 'tispeċifika il-mejda u l- Isem kolonna f'każ ta 'sitwazzjoni 402 00:19:46,080 --> 00:19:48,370 fejn ikun ċar dak li nkun qiegħed jitkellem dwar. 403 00:19:48,370 --> 00:19:51,880 Allura li kollox qed nagħmel hemm jien qal il-kolonna minn din it-tabella, 404 00:19:51,880 --> 00:19:54,020 u li espliċitu ħafna. 405 00:19:54,020 --> 00:19:56,810 Għalhekk għal darb'oħra, jien għażla tal- isem sħiħ u l-isem tal-omm 406 00:19:56,810 --> 00:20:00,950 mit-tabella utenti marbuta flimkien it-tabella moms f'kull sitwazzjoni 407 00:20:00,950 --> 00:20:05,960 fejn jaqsmu dak column-- huma jaqsmu dan il-kunċett username. 408 00:20:05,960 --> 00:20:08,580 >> Allura hawn huma l-tabelli kellna qabel. 409 00:20:08,580 --> 00:20:12,210 Dan huwa l-istat ta 'tagħna database kif jeżisti dritt issa. 410 00:20:12,210 --> 00:20:16,390 L-informazzjoni aħna qed estrazzjoni huwa dan li jibdew bihom. 411 00:20:16,390 --> 00:20:19,820 Dan huwa l-tabella l-ġdida aħna qed tmur biex joħolqu tgħaqqad dawn flimkien. 412 00:20:19,820 --> 00:20:23,585 U avviż aħna mhux qed jenfasizzaw Ringiela Newman fl tabella l-utent, 413 00:20:23,585 --> 00:20:25,960 u aħna mhux qed jenfasizzaw Ringiela Kramer fil-tabella moms 414 00:20:25,960 --> 00:20:31,250 minħabba li la jeżisti wieħed fl kemm sets-- fiż-żewġ tabelli. 415 00:20:31,250 --> 00:20:36,260 >> L-informazzjoni biss li hija komuni bejniethom hi Jerry hija kemm tabelli 416 00:20:36,260 --> 00:20:39,100 u gcostanza huwa fiż-żewġ tabelli. 417 00:20:39,100 --> 00:20:42,620 U hekk meta nagħmlu l-SQL jissieħbu, dak li aħna get-- u aħna nagħmlu fil-fatt tikseb dan. 418 00:20:42,620 --> 00:20:44,830 Huwa tip ta 'varjabbli temporanju. 419 00:20:44,830 --> 00:20:47,330 Huwa simili ipotetika amalgamazzjoni taż-żewġ tabelli. 420 00:20:47,330 --> 00:20:49,930 Aħna fil-fatt tikseb xi ħaġa bħal dan, fejn 421 00:20:49,930 --> 00:20:54,730 konna magħquda flimkien it-tabelli fuq l- informazzjoni li huma għandhom in komuni. 422 00:20:54,730 --> 00:20:58,334 >> Allura avviż li users.username u l-kolonna moms.username, 423 00:20:58,334 --> 00:20:59,250 huwa eżattament l-istess. 424 00:20:59,250 --> 00:21:01,820 Li kienet l-informazzjoni li kien konsistenti mill-utenti 425 00:21:01,820 --> 00:21:02,890 tabella u t-tabella moms. 426 00:21:02,890 --> 00:21:04,270 U hekk aħna magħquda flimkien. 427 00:21:04,270 --> 00:21:06,919 Aħna mormija Kramer għaliex huwa ma kinux jeżistu fit-tabella utenti, 428 00:21:06,919 --> 00:21:09,710 u aħna mormija Newman, minħabba huwa ma teżistix fit-tabella moms. 429 00:21:09,710 --> 00:21:16,450 Allura dan huwa l-għaqda ipotetika użu tal-operazzjoni jissieħbu tal SELECT. 430 00:21:16,450 --> 00:21:21,250 >> U allura aħna kienu qed ifittxu l- isem sħiħ utent u l-omm l-utent, 431 00:21:21,250 --> 00:21:24,999 u għalhekk dan huwa l-informazzjoni li aħna se tikseb mill-mistoqsija ġenerali 432 00:21:24,999 --> 00:21:26,040 li għamilna ma 'SELECT. 433 00:21:26,040 --> 00:21:28,873 Allura aħna ssieħbu fl-tabelli flimkien u aħna estratt dawn iż-żewġ kolonni, 434 00:21:28,873 --> 00:21:31,610 u hekk dan huwa dak li aħna se tikseb. 435 00:21:31,610 --> 00:21:33,370 Iżda SQL Jingħaqad tip ta kkumplikata. 436 00:21:33,370 --> 00:21:36,770 Inti probabilment mhux se jagħmlu lilhom wisq, imma biss ikollhom xi idea ta 'l-iskeletru 437 00:21:36,770 --> 00:21:41,992 li inti tista 'tuża biex jingħaqdu żewġ tabelli flimkien jekk inti meħtieġa biex. 438 00:21:41,992 --> 00:21:43,700 L-aħħar tnejn huma bit sempliċi I wegħda. 439 00:21:43,700 --> 00:21:48,040 Allura aġġornament, nistgħu nużaw AĠĠORNAMENT għall-bidla l-informazzjoni fit-tabella. 440 00:21:48,040 --> 00:21:53,880 Il-format ġenerali hija AĠĠORNAMENT xi mejda, stabbiliti xi kolonna li xi valur 441 00:21:53,880 --> 00:21:55,540 Fejn xi relattivi tkun sodisfatta. 442 00:21:55,540 --> 00:21:57,850 Hekk per eżempju, aħna tista 'tixtieq li taġġorna l-tabella utenti 443 00:21:57,850 --> 00:22:04,400 u tistabbilixxi l-password biex yada yada, fejn in-numru identità hija 10. 444 00:22:04,400 --> 00:22:06,400 >> Allura f'dan il-każ, aħna qed aġġornament tal-mejda utenti. 445 00:22:06,400 --> 00:22:08,275 In-numru identità hija 10 għal li l-ewwel ringiela hemm, 446 00:22:08,275 --> 00:22:10,690 u rridu li taġġorna l- password biex yada yada. 447 00:22:10,690 --> 00:22:12,170 U hekk dan huwa dak li jiġri. 448 00:22:12,170 --> 00:22:13,628 Huwa pjuttost sempliċi, id-dritt? 449 00:22:13,628 --> 00:22:17,990 Huwa biss sempliċi ħafna modifika għall-tabella. 450 00:22:17,990 --> 00:22:22,250 >> Ħassar huwa l-operazzjoni aħna użati biex tneħħi l-informazzjoni minn tabella. 451 00:22:22,250 --> 00:22:24,817 Ħassar MINN FEJN tabella xi relattivi tkun sodisfatta. 452 00:22:24,817 --> 00:22:26,900 Aħna tixtieq li tħassar mill- utenti tabella per eżempju 453 00:22:26,900 --> 00:22:28,254 fejn il-username huwa Newman. 454 00:22:28,254 --> 00:22:31,420 Inti tista 'probabbilment raden dak li għaddej biex jiġri hawn wara we tesegwixxi dik SQL 455 00:22:31,420 --> 00:22:35,790 query, Newman hija marret mit-tabella. 456 00:22:35,790 --> 00:22:40,460 >> Allura dawn operazzjonijiet kollha, kif stajt qal, huma faċli ħafna li jagħmlu fil phpMyAdmin. 457 00:22:40,460 --> 00:22:43,020 Huwa interface faċli ħafna user. 458 00:22:43,020 --> 00:22:45,930 Iżda dan ma jeħtieġx sforz manwali. 459 00:22:45,930 --> 00:22:47,840 Aħna ma rridux li jimpjegaw isforz manwali. 460 00:22:47,840 --> 00:22:51,280 Irridu programmi tagħna biex tagħmel dan għalina, id-dritt? 461 00:22:51,280 --> 00:22:53,190 Allura aħna tista 'tixtieq li tagħmel dan programmatically. 462 00:22:53,190 --> 00:22:56,410 Aħna rridu li jinkorporaw SQL u jkollhom xi ħaġa oħra li tagħmel dan għalina. 463 00:22:56,410 --> 00:23:02,710 >> Imma dak ma rajna li tippermetti ahna programmatically jagħmel xi ħaġa? 464 00:23:02,710 --> 00:23:03,690 Rajna PHP, id-dritt? 465 00:23:03,690 --> 00:23:05,760 Hija tintroduċi xi dinamiżmu fil-programmi tagħna. 466 00:23:05,760 --> 00:23:10,430 U hekk fortunatament, SQL u PHP jilagħbu nicely ħafna flimkien. 467 00:23:10,430 --> 00:23:13,230 Hemm funzjoni fil-PHP imsejħa mistoqsija, li jistgħu jintużaw. 468 00:23:13,230 --> 00:23:15,870 U inti tista 'tgħaddi bħala l- parametru jew l-argument 469 00:23:15,870 --> 00:23:19,210 għall-mistoqsija mistoqsija SQL li inti tixtieq li tesegwixxi. 470 00:23:19,210 --> 00:23:23,250 U PHP se tagħmel dan għan-nom tiegħek. 471 00:23:23,250 --> 00:23:25,564 >> Allura wara li tkun ħadthom konnessi għad-database tiegħek ma PHP, 472 00:23:25,564 --> 00:23:26,980 hemm żewġ primaries inti tagħmel dan. 473 00:23:26,980 --> 00:23:29,230 Hemm xi ħaġa imsejħa MySQLi u xi ħaġa imsejħa DPO. 474 00:23:29,230 --> 00:23:31,063 Aħna mhux se tidħol fis enormi dettall ammont hemmhekk. 475 00:23:31,063 --> 00:23:32,957 Fl CS50 nużaw DPO. 476 00:23:32,957 --> 00:23:34,790 Wara li tkun ħadthom konnessi għad-database tiegħek, inti 477 00:23:34,790 --> 00:23:40,980 tista 'mbagħad tagħmel mistoqsijiet database tiegħek billi tgħaddi l-mistoqsijiet kif argumenti 478 00:23:40,980 --> 00:23:42,730 għall-funzjonijiet PHP. 479 00:23:42,730 --> 00:23:46,460 U meta inti tagħmel dan, int taħżen il riżultat stabbilit fil-firxa assoċjattiva. 480 00:23:46,460 --> 00:23:50,290 >> U nafu kif taħdem ma ' arrays assoċjattiva fis PHP. 481 00:23:50,290 --> 00:23:52,630 So I jista 'jgħid xi ħaġa bħal this-- $ results-- 482 00:23:52,630 --> 00:23:55,470 dan huwa PHP-- ugwali mistoqsija. 483 00:23:55,470 --> 00:23:57,660 U allura l ġewwa tal- funzjoni mistoqsija dan l-argument 484 00:23:57,660 --> 00:24:00,130 li jien tgħaddi għall-mistoqsija li qisu SQL. 485 00:24:00,130 --> 00:24:01,160 U fil-fatt dan huwa SQL. 486 00:24:01,160 --> 00:24:05,700 Dik hija l-sekwenza mistoqsija li nixtieq simili li teżegwixxi fuq database tiegħi. 487 00:24:05,700 --> 00:24:09,250 >> U għalhekk bl-aħmar, dan huwa PHP. 488 00:24:09,250 --> 00:24:11,890 Dan huwa SQL li jien jintegraw PHP billi 489 00:24:11,890 --> 00:24:15,020 dan l-argument għall-funzjoni mistoqsija. 490 00:24:15,020 --> 00:24:19,640 I trid tagħżel fullname minn utenti fejn numru ta 'identifikazzjoni ugwali għal 10. 491 00:24:19,640 --> 00:24:22,560 U allura forsi wara I ghamilt li, I jista 'jgħid xi ħaġa bħal din. 492 00:24:22,560 --> 00:24:25,550 Irrid li jistampa l- messaġġ Grazzi għal qtugħ fil. 493 00:24:25,550 --> 00:24:32,530 >> U nixtieq li interpolate-- Irrid li Interpola riżultati $ fullname. 494 00:24:32,530 --> 00:24:36,280 U hekk dan huwa kif I xogħol ma 'dik firxa assoċjattiva li sirt lura. 495 00:24:36,280 --> 00:24:39,730 $ riżultati fullname kieku bażikament jispiċċaw istampar out, 496 00:24:39,730 --> 00:24:42,870 grazzi għall-qtugħ fil, Jerry Seinfeld. 497 00:24:42,870 --> 00:24:46,570 Dan kien l-isem sħiħ fejn idnum ugwali għal 10. 498 00:24:46,570 --> 00:24:48,850 >> U għalhekk kull nagħmel huwa jien now-- I maħżuna 499 00:24:48,850 --> 00:24:52,780 mistoqsija tiegħi, ir-riżultati tal-mistoqsija tiegħi u r-riżultati fil-firxa assoċjattiva, 500 00:24:52,780 --> 00:24:56,330 u fullname huwa l-isem ta ' il-kolonna I kien jkollna għall. 501 00:24:56,330 --> 00:25:01,010 Allura dak ewlieni tiegħi fil-riżultati firxa assoċjattiva li nixtieq. 502 00:25:01,010 --> 00:25:05,930 Allura Grazzi għall-qtugħ fil-$ riżultati, fullname se jistampa, se jeħel 503 00:25:05,930 --> 00:25:08,654 dritt fl bejn dawk kaboċċi ċingi, Jerry Seinfeld. 504 00:25:08,654 --> 00:25:11,820 U jien ser simili li jistampa l-messaġġ Grazzi għal qtugħ fil Jerry Seinfeld. 505 00:25:11,820 --> 00:25:16,652 >> Issa, aħna probabbilment ma jridux hard affarijiet kodiċi bħal dik fil, right? 506 00:25:16,652 --> 00:25:19,860 Aħna tista 'tixtieq li tagħmel xi ħaġa bħal print f, fejn nistgħu tissostitwixxi u forsi 507 00:25:19,860 --> 00:25:22,443 jiġbru informazzjoni differenti, jew forsi jkollhom l-proċess mistoqsija 508 00:25:22,443 --> 00:25:23,370 informazzjoni differenti. 509 00:25:23,370 --> 00:25:27,920 U għalhekk mistoqsija, il-funzjoni mistoqsija għandha dan il-kunċett ta 'tip ta' sostituzzjonijiet 510 00:25:27,920 --> 00:25:32,310 simili ħafna li jistampaw f mija s u mija c, huwa trade marks in kwistjoni. 511 00:25:32,310 --> 00:25:34,290 >> U nistgħu nużaw kwistjoni marki analogu ħafna 512 00:25:34,290 --> 00:25:38,400 li jistampaw f varjabbli sostituti. 513 00:25:38,400 --> 00:25:44,120 Allura forsi utent tiegħek illoggjat qabel, u inti ffrankati n-numru tagħhom user 514 00:25:44,120 --> 00:25:51,710 fil $ _session ta PHP super globali fil-ID ċavetta. 515 00:25:51,710 --> 00:25:55,947 Allura forsi wara li illoggjat, tissettja $ _session ID ugwali għal 10, 516 00:25:55,947 --> 00:25:58,280 estrapolazzjoni mill-eżempju aħna biss raw tieni ilu. 517 00:25:58,280 --> 00:26:01,960 >> U hekk meta aħna attwalment tesegwixxi din il-mistoqsija ir-riżultati issa, 518 00:26:01,960 --> 00:26:08,440 ikun plagg fil 10, jew kwalunkwe il-valur ID $ _session hu. 519 00:26:08,440 --> 00:26:10,790 U sabiex il jippermetti li jkun xi ftit aktar dinamiku. 520 00:26:10,790 --> 00:26:12,699 Aħna mhux iebes kodifikazzjoni affarijiet fil aktar. 521 00:26:12,699 --> 00:26:14,490 Aħna iffrankar informazzjoni x'imkien u mbagħad 522 00:26:14,490 --> 00:26:18,924 nistgħu darb'oħra tuża dik l-informazzjoni lill tip ta 'tiġġeneralizza dak li rridu nagħmlu, 523 00:26:18,924 --> 00:26:21,090 u biss plug-in u l-bidla l-imġiba tal-paġna tagħna 524 00:26:21,090 --> 00:26:26,489 ibbażati fuq dak in-numru ID tal-utent fil-fatt huwa wara li ħadthom illoggjat. 525 00:26:26,489 --> 00:26:28,530 Huwa wkoll possibbli, għalkemm, li r-riżultati tiegħek stabbiliti 526 00:26:28,530 --> 00:26:30,840 jistgħu jikkonsistu ringieli multipli. 527 00:26:30,840 --> 00:26:33,990 F'liema każ, inti għandek firxa ta 'arrays-- 528 00:26:33,990 --> 00:26:35,334 firxa ta 'arrays assoċjattiva. 529 00:26:35,334 --> 00:26:37,000 U inti biss jeħtieġ li jtenni permezz tiegħu. 530 00:26:37,000 --> 00:26:41,950 U nafu kif jtenni permezz ta 'firxa fil-PHP, id-dritt? 531 00:26:41,950 --> 00:26:45,600 Allura hawnhekk huwa probabbilment l-aktar Ħaġa kumpless Rajna s'issa. 532 00:26:45,600 --> 00:26:49,640 Hija fil-fatt tintegra tliet lingwi flimkien. 533 00:26:49,640 --> 00:26:52,920 >> Hawnhekk aħmar, dan huwa xi HTML. 534 00:26:52,920 --> 00:26:56,872 Jien apparentement starting-- dan huwa snippet ta 'xi HTML li għandi. 535 00:26:56,872 --> 00:26:59,580 Jien jibdew paragrafu ġdid li jgħid il-moms ta Seinfeld TV. 536 00:26:59,580 --> 00:27:02,350 U mbagħad immedjatament wara Jien jibdew tabella. 537 00:27:02,350 --> 00:27:06,060 U mbagħad wara dan, I għandhom xi PHP, id-dritt? 538 00:27:06,060 --> 00:27:08,229 I kollha ta 'dan il-kodiċi PHP fil hemmhekk. 539 00:27:08,229 --> 00:27:09,645 Jien apparentement ser tagħmel mistoqsija. 540 00:27:09,645 --> 00:27:14,180 U biex jagħmlu l-mistoqsija, jien ser tkun qed tuża ommijiet tagħżel minn moms. 541 00:27:14,180 --> 00:27:15,970 >> Allura dan huwa getting-- dan huwa SQL. 542 00:27:15,970 --> 00:27:17,300 Allura l-blu huwa SQL. 543 00:27:17,300 --> 00:27:19,680 Il aħmar rajna tieni ilu kien HTML. 544 00:27:19,680 --> 00:27:21,360 U l-aħdar hawnhekk huwa PHP. 545 00:27:21,360 --> 00:27:23,400 Hekk jien jagħmlu query li database tiegħi, jien 546 00:27:23,400 --> 00:27:26,040 għażla kollha tal- ommijiet fit-tabella moms. 547 00:27:26,040 --> 00:27:30,710 Mhux biss tidjiq l-isfel għal partikolari ringiela, jien tistaqsi għalihom kollha. 548 00:27:30,710 --> 00:27:33,290 >> Imbagħad I jiċċekkjaw jekk riżultat huwa mhux ugwali ugwali falza. 549 00:27:33,290 --> 00:27:37,410 Dan huwa biss tiegħi mod ta 'verifika tip ta 'jekk ir-riżultati ma tkunx ugwali għal nulla, 550 00:27:37,410 --> 00:27:40,260 li aħna se tara c per eżempju. 551 00:27:40,260 --> 00:27:44,000 Bażikament din hija biss verifika biex tagħmel żgur li attwalment marret data b'lura. 552 00:27:44,000 --> 00:27:47,041 Minħabba I ma jridu jibdew istampar out data jekk I ma jiksbu ebda data. 553 00:27:47,041 --> 00:27:50,690 Imbagħad għal kull riżultati bħala riżultat il- sintassi foreach minn PHP, kollha qed nagħmel 554 00:27:50,690 --> 00:27:53,399 Hija twettaq stampar ommijiet $ riżultat. 555 00:27:53,399 --> 00:27:55,940 U hekk jien ser tikseb sett kollha tal-ommijiet ta each-- 556 00:27:55,940 --> 00:27:59,980 huwa ta 'firxa ta' assoċjattiva arrays-- u jien stampar ta 557 00:27:59,980 --> 00:28:03,649 kull wieħed bħala filliera tagħha stess ta 'tabella. 558 00:28:03,649 --> 00:28:05,690 U li verament pretty ħafna kollha hemm għaliha. 559 00:28:05,690 --> 00:28:07,750 Naf hemm ftit bit għaddejjin hawn 560 00:28:07,750 --> 00:28:13,210 f'dan l-aħħar pereżempju arrays ta arrays-- arrays ta arrays assoċjattiva. 561 00:28:13,210 --> 00:28:17,340 Imma verament ma biss għalli fl SQL biex tagħmel mistoqsija, 562 00:28:17,340 --> 00:28:21,102 normalment għażla wara konna diġà jpoġġu informazzjoni fit-tabella, 563 00:28:21,102 --> 00:28:22,310 u mbagħad biss tiġbdu out. 564 00:28:22,310 --> 00:28:25,710 >> U dan huwa aħna se iġbdu f'dan il-każ partikolari. 565 00:28:25,710 --> 00:28:31,120 Nixtiequ estratt kollha ta 'l-individwu ommijiet mit-tabella moms. 566 00:28:31,120 --> 00:28:35,970 Aħna ltqajna sett sħiħ minnhom, u aħna tixtieq li jtenni permezz ta 'u jistampa 567 00:28:35,970 --> 00:28:37,630 kull wieħed. 568 00:28:37,630 --> 00:28:40,510 Għalhekk għal darb'oħra, dan huwa probabbilment l-aktar eżempju kumplikata 569 00:28:40,510 --> 00:28:44,510 Rajna għaliex aħna qed taħlit tliet lingwi differenti flimkien, id-dritt? 570 00:28:44,510 --> 00:28:50,100 >> Għal darb'oħra, aħna għandna HTML hawn bl-aħmar, mħallta ma 'xi SQL hawn fil-blu, 571 00:28:50,100 --> 00:28:52,049 mħallta ma 'xi PHP fl-aħdar. 572 00:28:52,049 --> 00:28:53,840 Imma dawn kollha jilagħbu nicely flimkien, huwa 573 00:28:53,840 --> 00:28:57,060 biss kwistjoni ta 'żvilupp drawwiet tajba sabiex inti tista 'tikseb 574 00:28:57,060 --> 00:28:58,780 biex jaħdmu flimkien il-mod trid. 575 00:28:58,780 --> 00:29:03,790 U l-unika mod biex verament tagħmel dan huwa li prattika, il-prattika, il-prattika. 576 00:29:03,790 --> 00:29:06,740 Jien Doug Lloyd, dan huwa CS50. 577 00:29:06,740 --> 00:29:08,647