1 00:00:00,000 --> 00:00:02,000 [Powered by Google Translate] [СКЛ] 2 00:00:02,000 --> 00:00:04,000 [КРИСТОФЕР Вартоломеј] [Универзитет Харвард] 3 00:00:04,000 --> 00:00:06,000 [Ово је ЦС50] [ЦС50 ТВ] 4 00:00:07,950 --> 00:00:11,620 Дакле, програмери користе базе података као средство за чување и организовање 5 00:00:11,620 --> 00:00:13,620 наши стални подаци у табелама. 6 00:00:13,620 --> 00:00:18,960 То значи да ваши подаци се чувају на непроменљиву просецима као што су хард диск, 7 00:00:18,960 --> 00:00:22,940 па чак и када је рачунар искључен, подаци још увек нетакнута. 8 00:00:22,940 --> 00:00:29,530 И, као програмери, наши програми користе базе података за сценарије као што су складиштење 9 00:00:29,530 --> 00:00:32,890 Корисник информације са веб форми, гледајући инвентар, 10 00:00:32,890 --> 00:00:36,210 или ажурирање информација о томе шта сајтови прикажу. 11 00:00:37,150 --> 00:00:40,070 Али, како смо заправо у интеракцији са наше базе података, 12 00:00:40,070 --> 00:00:43,150 или шта ми користимо за читање, чување, брисање, 13 00:00:43,150 --> 00:00:46,070 и ажурирају своје податке у оквиру ових табелама базе података? 14 00:00:47,280 --> 00:00:49,700 Па, одговор је да ми користимо посебан тип базе језика 15 00:00:49,700 --> 00:00:53,400 која комуницира директно са нашим табелама базе података. 16 00:00:53,400 --> 00:00:56,740 То је име Струцтуред Куери Лангуаге, 17 00:00:56,740 --> 00:00:58,740 [Струцтуред Куери Лангуаге] 18 00:00:58,740 --> 00:01:00,740 или шта ја називам СКЛ. 19 00:01:00,740 --> 00:01:05,100 >> Сада, [Се-куел], или СКЛ, није програмски језик, 20 00:01:05,100 --> 00:01:08,580 али уместо тога, то је језик који нуди стандардни скуп команди 21 00:01:08,580 --> 00:01:13,520 да преузме и манипулишу подацима из различитих система за управљање базама података. 22 00:01:13,520 --> 00:01:17,630 За потребе ЦС50, ићи ћемо преко четири основне команде: 23 00:01:17,630 --> 00:01:21,210 избор, уметање, ажурирање и брисање. 24 00:01:21,210 --> 00:01:26,230 Осим тога, ми ћемо користити базу података веб интерфејс назван пхпМиАдмин, 25 00:01:26,230 --> 00:01:29,890 који је инсталиран на уређају за писање наше СКЛ изјаве. 26 00:01:30,830 --> 00:01:33,050 Дакле, да би се сећате ове команде, 27 00:01:33,050 --> 00:01:37,080 Донео сам неке колаче у ормар да помогне са нашим сценарија. 28 00:01:39,650 --> 00:01:42,210 Рецимо да имате базу података једног Цупцаке а, 29 00:01:42,210 --> 00:01:44,490 где чувате све информације о вашем цупцакес. 30 00:01:44,490 --> 00:01:48,220 Сада, базе података може да садржи много табела 31 00:01:48,220 --> 00:01:50,950 и саме табеле могу садржати многе колоне. 32 00:01:50,950 --> 00:01:57,020 Унутар наше базе Цупцаке, имамо сто се зове цупцаке_цупбоард. 33 00:01:57,020 --> 00:02:00,500 Ова табела ће се користити за складиштење све информације о цупцакес 34 00:02:00,500 --> 00:02:02,990 који су, па, у вашем ормару. 35 00:02:02,990 --> 00:02:07,770 Колоне које су у табели представљају атрибуте Цупцаке. 36 00:02:07,770 --> 00:02:14,560 На пример, цупцаке_цупбоард се колоне су 37 00:02:14,560 --> 00:02:15,920 Торта ИД ЦакеТипе, ЦакеЦолор и ЦакеИсНице. 38 00:02:15,920 --> 00:02:23,040 Овај боолеан-куцани колона се користи да одреди да ли је колач лепо или није лепо. 39 00:02:23,040 --> 00:02:26,560 Ми ћемо да почнемо са писањем одабраном изјаву. 40 00:02:26,560 --> 00:02:32,160 Изаберите изјаве се користе за преузимање података о одређеном табели базе података. 41 00:02:32,160 --> 00:02:34,890 У овом сценарију, желимо да знамо све 42 00:02:34,890 --> 00:02:39,080 о свим цупцакес које постоје у нашем ормару. 43 00:02:39,080 --> 00:02:48,670 Синтакса за то је "Изабери" Спаце Стар, или *, простор од простора наше табеле, 44 00:02:48,670 --> 00:02:52,050 који је цупцаке_цупбоард. 45 00:02:52,050 --> 00:02:54,640 Идемо напред и изврши то. 46 00:02:56,670 --> 00:03:00,140 >> Као што можемо видети, ово су све цупцакес у нашем ормару. 47 00:03:00,140 --> 00:03:05,110 Важно је напоменути да * или звездицу, је вилд цард карактер 48 00:03:05,110 --> 00:03:08,830 који означава скуп свих колона неке табеле. 49 00:03:08,830 --> 00:03:13,650 Нормално, можемо приступити одређену колону или колоне 50 00:03:13,650 --> 00:03:16,950 заменом * са стварним имена колоне. 51 00:03:16,950 --> 00:03:21,220 Ако желимо више колона, али не све, можемо постићи 52 00:03:21,220 --> 00:03:25,620 од писања имена колона ограничавању сваку колону зарезом. 53 00:03:25,620 --> 00:03:28,620 На пример, рецимо само повратите ЦакеИд и ЦакеТипе у цупцаке_цупбоард табели. 54 00:03:28,620 --> 00:03:38,370 Синтакса за то је: СЕЛЕЦТ простор ЦакеИД зарез 55 00:03:38,370 --> 00:03:44,370 ЦакеТипе простор од нашег стола, цупцаке_цупбоард. 56 00:03:44,370 --> 00:03:46,370 Идемо напред и изврши ово. 57 00:03:49,340 --> 00:03:52,670 И овде, ми смо тек сада имамо две колоне смо одређене 58 00:03:52,670 --> 00:03:54,670 за сваки цупцаке у нашем орману. 59 00:03:54,670 --> 00:03:57,710 Такође можемо побољшамо наше резултате упита навођењем 60 00:03:57,710 --> 00:04:00,910 "Где" клаузула одмах након име табеле. 61 00:04:02,000 --> 00:04:05,410 На пример, чини се да цупцаке у нашем орману 62 00:04:05,410 --> 00:04:08,660 то јест, добро, није тако лепо изгледа. 63 00:04:08,660 --> 00:04:13,950 Хајде да схватим све колачиће у нашем орману који су, па, не тако леп 64 00:04:13,950 --> 00:04:16,110 помоћу "Где" клаузула. 65 00:04:16,110 --> 00:04:26,390 Синтакса за то је: СЕЛЕЦТ * простор простор из свемира цупцаке_цупбоард 66 00:04:26,390 --> 00:04:34,080 Простор где је простор наше условно колону, у овом случају ЦакеИсНице =, 67 00:04:34,080 --> 00:04:36,900 и боолеан вредност Фалсе. 68 00:04:36,900 --> 00:04:42,750 Важно је напоменути да ако користите жице, морате заокружити апострофа. 69 00:04:42,750 --> 00:04:49,620 Ово важи за све конце у СКЛ, или, у СКЛ базама смислу, варијантни карактера 70 00:04:49,620 --> 00:04:51,620 познат као варцхар дататипе. 71 00:04:51,620 --> 00:04:57,660 У овом случају, ми користимо Тачно или Нетачно, што је Боолеан вредност и није ниска. 72 00:04:59,120 --> 00:05:00,660 Идемо напред и изврши ову команду. 73 00:05:00,660 --> 00:05:05,340 >> Ло и гле, то је случај да имамо 1 чоколаде 74 00:05:05,340 --> 00:05:07,920 Не тако добар колач у нашем орману. 75 00:05:09,620 --> 00:05:11,460 Даље, ми ћемо да напише изјаву инсерт. 76 00:05:11,460 --> 00:05:15,560 Убаци изјаве служе за уметање или додавање 77 00:05:15,560 --> 00:05:17,770 додатни редови података у вашој табели базе података. 78 00:05:17,770 --> 00:05:23,160 Враћајући наш сценарио, претпоставимо да смо управо направили потпуно нови колач. 79 00:05:25,910 --> 00:05:30,080 Пошто смо веома организовани Цупцаке једу, ми ћемо морати да убаците овај нови колач 80 00:05:30,080 --> 00:05:32,330 у нашем цупцаке_цупбоард табели. 81 00:05:32,330 --> 00:05:40,690 Синтакса за то је ово: Убаците простора у простор наше табеле, 82 00:05:40,690 --> 00:05:46,830 цупцаке_цупбоард, размак (, 83 00:05:46,830 --> 00:05:51,060 и овде смо навели колона имена, разграничена зарезом, 84 00:05:51,060 --> 00:05:59,790 ЦакеТипе зарез зарез ЦакеЦолор ЦакеИсНице) простор. 85 00:05:59,790 --> 00:06:06,540 Након тога, ми смо написали реч ВАЛУЕС простор (и овде 86 00:06:06,540 --> 00:06:12,170 улазимо односно вредност за сваку колону, такође разграничене зарезом. 87 00:06:12,170 --> 00:06:17,830 Један цитат, јер су сви ВАРЦХАР вредности ћемо их окружују у апострофа, 88 00:06:17,830 --> 00:06:26,780 Путер од кикирикија "Зарез" светло браон 'зарез Истина. 89 00:06:26,780 --> 00:06:30,480 Сада је важно да се сваки ред јединствени број да се идентификује. 90 00:06:30,480 --> 00:06:33,660 Аутоинцрементинг колону пружа ово као 91 00:06:33,660 --> 00:06:37,410  "Не постоје две исте легитимације може икада постојати у овој табели." 92 00:06:37,410 --> 00:06:39,480 Идемо напред и извршити. 93 00:06:39,480 --> 00:06:45,380 Ето, све организовано. 94 00:06:49,720 --> 00:06:52,100 >> Следећи СКЛ изјава да ћемо написати је ажурирање података. 95 00:06:52,100 --> 00:06:55,650 Ажурирање изјава може да се користи за измену података у колони 96 00:06:55,650 --> 00:06:58,440 за било које постојеће ред у вашој табели базе података. 97 00:06:59,670 --> 00:07:03,420 Раније у нашој сценарију, користећи селецт изјаву, ми смо идентификовали цупцаке 98 00:07:03,420 --> 00:07:08,300 у табели наше цупцаке_цупбоард чије ЦакеИсНице вредност била Нетачно. 99 00:07:08,300 --> 00:07:12,050 Претпоставимо да, док је наш путер од кикирикија цупцаке је у рерни, 100 00:07:12,050 --> 00:07:15,790 смо направили наш не-тако-добар цупцаке веома лепо. 101 00:07:18,020 --> 00:07:22,240 Бити тако изузетно организована, ми желимо да наша колачићу да одражава ову вредност 102 00:07:22,240 --> 00:07:24,240 у нашем цупцаке_цупбоард табели. 103 00:07:24,240 --> 00:07:28,710 Дакле, хајде да ажурирамо нашу колач од чоколаде у бази података да одражава. 104 00:07:28,710 --> 00:07:39,720 Синтакса је: УПДАТЕ простор наш сто, цупцаке_цупбоард, простор СЕТ простор 105 00:07:39,720 --> 00:07:44,240 колона које желите да промените, ЦакеИсНице =. 106 00:07:44,240 --> 00:07:49,210 Онда овде поставимо нашу нову вредност Труе простора. 107 00:07:49,210 --> 00:07:54,290 Сада, јер ми не желимо да ажурирате све редове са овом вредношћу, 108 00:07:54,290 --> 00:07:57,400 желимо да обезбеди "Где" клаузулу да ће нам дођете 109 00:07:57,400 --> 00:07:59,830 до тачног реда које желите да измените. 110 00:07:59,830 --> 00:08:03,690 У овом случају, ми знамо да постоји само један цупцаке 111 00:08:03,690 --> 00:08:06,670 која има ЦакеИсНице вредност Фалсе. 112 00:08:06,670 --> 00:08:11,030 Осим тога, ми ћемо такође обезбедити да смо ажурирање тачан ред 113 00:08:11,030 --> 00:08:13,030 помоћу "и" клаузулу. 114 00:08:14,340 --> 00:08:17,270 Ми користимо "и" клаузулу да усавршите наш упит даље. 115 00:08:17,270 --> 00:08:20,380 У овом случају, јер знамо да је цупцаке је чоколада, 116 00:08:20,380 --> 00:08:23,160 ћемо користити ову ЦакеТипе колону. 117 00:08:23,160 --> 00:08:31,500 ГДЕ простор наша условна колона простор ЦакеИсНице простор = Фалсе, 118 00:08:31,500 --> 00:08:38,330 и простор ЦакеТипе = 'ЦХОЦОЛАТЕ'. 119 00:08:38,330 --> 00:08:41,880 Дакле, стављајући га сви заједно, ова исправка саопштењу 120 00:08:41,880 --> 00:08:44,670 пронађе све колачиће на нашем Цупцаке ормар, 121 00:08:44,670 --> 00:08:50,520 и ако постоји цупцаке чија колона ЦакеИсНице садржи вредност ФАЛСЕ 122 00:08:50,520 --> 00:08:54,130 и ЦакеТипе садржи вредност ЦХОЦОЛАТЕ, 123 00:08:54,130 --> 00:08:58,240 желимо да ажурирате одређену вредност редова ЦакеИсНице на Труе. 124 00:08:58,240 --> 00:09:01,140 Дакле, идемо напред и извршити изјаву. 125 00:09:03,860 --> 00:09:05,860 И сада смо организовали. 126 00:09:06,650 --> 00:09:09,220 >> Све ово говори о цупцакес је ме мало гладан. 127 00:09:09,220 --> 00:09:11,360 Мислим да би требало да се помогне да се један. 128 00:09:11,360 --> 00:09:17,670 Али, ако сам стварно једете овај колач, ја би барем се уклонити своје постојање 129 00:09:17,670 --> 00:09:19,670  из нашег цупцаке_цупбоард табеле. 130 00:09:20,650 --> 00:09:22,590 Да бисте то урадили, ми ћемо користити "Делете" изјаву. 131 00:09:22,590 --> 00:09:27,400 "Обриши" изјава може да се користи да уклони све или неке редове из табеле. 132 00:09:27,400 --> 00:09:29,920 Ако желите да уклоните неку специфичну ред из табеле, 133 00:09:29,920 --> 00:09:34,360 онда морате обезбедити "Где" клаузулу, чиме наводећи колону 134 00:09:34,360 --> 00:09:37,660 који би требало да буду јединствени у ред који желите да уклоните. 135 00:09:37,660 --> 00:09:47,370 Ово је синтакса: ДЕЛЕТЕ простора из свемира наш сто, цупцаке_цупбоард, простор. 136 00:09:47,370 --> 00:09:51,760 Сада, у овом тренутку, када си овако далеко у својој изјави делете 137 00:09:51,760 --> 00:09:54,240 желите да будете веома опрезни. 138 00:09:54,240 --> 00:09:59,970 На пример, ако желите да покренете овај упит, као што је, без пружања неки "Где" клаузулу 139 00:09:59,970 --> 00:10:04,500 Ја бих изгубити све податке у овој табели цупцаке_цупбоард, 140 00:10:04,500 --> 00:10:09,590 већ зато што сам већ знао да је моја торта ИД је јединствен, ја ћу користити 141 00:10:09,590 --> 00:10:12,410 Ред Велвет колач ИД за мој "где" клаузуле. 142 00:10:14,550 --> 00:10:20,670 ГДЕ простор наша колона, ЦакеИД = 1. 143 00:10:20,670 --> 00:10:25,010 Јер ово је интегер вредност нема потребе да га окружују у апострофа. 144 00:10:25,010 --> 00:10:27,020 Дакле, хајде да извршава изјаву. 145 00:10:33,560 --> 00:10:35,990 Па, сад кад смо избрисала постојање овог Цупцаке 146 00:10:35,990 --> 00:10:40,360 из наше цупцаке_цупбоард табели, имамо само једну ствар леви: 147 00:10:41,680 --> 00:10:43,680 Нека нестане. 148 00:10:43,680 --> 00:10:46,990 Ја сам Кристофер Вартоломеја. Ово је ЦС50.