Հիմնական նյութ
Դասընթաց․ (Ծրագրավորում) > Բաժին 3
Դաս 4: Փոփոխել տվյալների բազաներն SQL-ով- SQL-ով թարմացնել տվյալների բազան
- Փոխել տողերը UPDATE-ով ու DELETE-ով
- Մարտահրավեր․ դինամիկ փաստաթղթեր
- Փոխել աղյուսակները ստեղծելուց հետո
- Մարտահրավեր․ տարբեր զգեստներ
- Ավելի ապահով դարձրու քո SQL-ը
- Նախագիծ․ հավելվածի նմանակող
© 2024 Khan AcademyՕգտագործման պայմաններԳաղտնիության քաղաքականությունՔուքի (Cookie) ծանուցում
SQL-ով թարմացնել տվյալների բազան
Ինչպես դասընթացի ընթացքում ենք նշել, մենք շատ հաճախ կօգտագործենք SQL կամ SQL-անման լեզու՝ տվյալների բազայի համար։ Որոշ դեպքերում օգտագործում ենք միայն կարդացող գործողություններ, որոշ դեպքերում էլ՝ կարդացող/գրող գործողություններ։
Միայն կարդացող գործողության օրինակ է ինչ-որ հավելվածի կամ հետազոտական աշխատանքի տվյալների վերլուծությունը։ Օրինակ, եթե ես տվյալագետ եմ, գուցե հարցում կատարելով տեսնեմ, թե օգտատերերի որ մասն է պաղպաղակ ուտում վազելու օրը, որպեսզի հասկանամ, թե արդյոք մարզանքից հետո մարդիկ իրենց պարգևատրում են պաղպաղակով, թե ոչ։
SELECT * FROM diary_logs WHERE
food LIKE "%ice cream%" AND activity LIKE "%running%";
Այդպիսի տվյալների վերլուծության համար գրեթե ամեն գործողություն կատարվում է
SELECT
-ով. ամբողջը միայն կարդացող է։ Մենք չենք ստեղծում ինչ-որ նոր տվյալ, մենք հարցումներ ենք կատարում արդեն գոյություն ունեցող տվյալների վրա։ Ուղղակի պետք է կարողանանք շատ լավ կիրառել SELECT
հարցումները, բայց պարտադիր չէ իմանալ աղյուսակներ ստեղծելու, տողերը փոխելու և նմանատիպ հարցումները։Կարդացող/գրող գործողությունների օրինակ է, երբ ծրագրակազմի ինժեները հավելվածի համար ստեղծում է ծրագրի ներքին հատվածը։ Օրինակ, եթե ես լինեի առողջությունը չափող ծրագրի ծրագրակազմի ինժեներ, ես կգրեի կոդ, որն ամեն օր օգտատիրոջ տվյալներ լրացնելուց հետո կստեղծի նոր լոգ տվյալների բազայում։
INSERT INTO diary_logs (id, food, activity)
VALUES (123, "ice cream", "running");
Ես հավանաբար կօգտագործեմ SQL հրամանը սերվերային լեզվից և գրադարան՝ հրամանները գրելու գործը հեշտացնելու համար։ Ահա թե ինչպիսի տեսք կունենա տվյալներ ներմուծելը, եթե օգտագործեմ Python լեզուն SQLAlchemy գրադարանով․
diary_logs.insert().values(id=123, food="ice cream", activity='running')
Ես պետք է նաև SQL գրեմ, որ փոփոխեմ տվյալների բազան, եթե օգտատերը փոխել է իր օրական լոգը, ջնջել է այն կամ ջնջել է իր հաշիվը։ Եթե թիմը որոշի օգտատիրոջ լոգին ավելացնել ավելի շատ սյուներ, ինչպիսին է տրամադրության սյունը, որպեսզի ցույց տա, թե որքան ուրախ էր օգտատերը պաղպաղակ ուտելիս և վազելիս (իմ կանխատեսումը՝ շատ ուրախ), ես պետք է գրեմ SQL, որ սխեման փոփոխեմ։
Սրանք բոլորը գրելու գործողություններ են, և դրանք կիրառելը պարտադիր է, եթե ուզում ենք օգտագործել տվյալների բազա՝ տվյալները հավելվածում պահեստավորելու և թարմացնելու համար։
INSERT
-ը համեմատաբար ավելի ապահով է, որովհետև այն միայն ավելացնում է տվյալներ, բայց UPDATE
, DELETE
, DROP
կամ ALTER
գործողությունները կարող են շատ ավելի վտանգավոր լինել, որովհետև դրանք փոփոխում են արդեն գոյություն ունեցող տվյալները։ Դրա համար շատ կարևոր է դրանք լավ հասկանալը և զգուշությամբ օգտագործելը։ Շարունակիր և սովորիր, թե ինչպես դրանք օգտագործել։Ուզո՞ւմ ես միանալ խոսակցությանը։
Առայժմ հրապարակումներ չկան։