SQL Asusun

Koyi game da DDL, DML da JOINs

Harshen Sakamakon Lissafi yana daya daga cikin ginshiƙan ginin gine-ginen zamani. SQL ya ƙayyade hanyoyi da aka yi amfani da shi don ƙirƙirar da sarrafa manhajar bayanai akan duk manyan dandamali. Da farko kallo, harshen zai iya zama abin tsoro da kuma rikitarwa, amma ba haka ba ne mai wuya.

Wannan gabatarwa ga mahimman bayanan bayan SQL yana daukan taƙaitacciyar kallo akan wasu umarnin da aka yi amfani da su don ƙirƙirar da gyara bayanai.

Game da SQL

Sanarwar da aka yi daidai na SQL shine batutuwan rikice-rikice a cikin ɗakunan bayanai. A cikin daidaitattun SQL, Cibiyar Nazarin Harkokin Kasa ta Amirka ta bayyana cewa sanannun ikirarin da ake magana da shi shine "es queue el". Duk da haka, mutane da dama masu sana'a a cikin labaran sun karɓa zuwa furlan pronunciation "zabin." Zaɓin naku naka ne.

SQL ya zo a yawancin dandano. Bayanai na Oracle sunyi amfani da PL / SQL na mallakarta. Microsoft SQL Server yana amfani da Transact-SQL. Dukkan bambancin suna dogara ne akan ka'idar ANSI ta masana'antu. Wannan gabatarwa yana amfani da ka'idojin ANSI-compliant SQL waɗanda ke aiki akan kowane tsarin zamani na sirri na zamani.

DDL da DML

Umurni na SQL za a iya raba zuwa manyan harsuna guda biyu. Harshen Bayanin Bayanai (DDL) ya ƙunshi dokokin da aka yi amfani da su don ƙirƙirar da halakar bayanan bayanai da abubuwan bayanai. Bayan an tsara tsarin tsarin bayanai tare da DDL, masu sarrafa bayanai da masu amfani za su iya amfani da Harshen Magana (DML) don sakawa, dawo da gyaggyara bayanai da ke ciki.

Bayanan Bayanan Bayanan Harshe

Ana amfani da Harshen Bayanin Harshe don ƙirƙirar da halakar bayanan bayanai da abubuwan bayanai. Wadannan umarnin suna amfani da su ne da farko daga masu amfani da bayanai a lokacin tsarawa da kuma cire matakai na aikin basira. A nan ne kalli tsari da kuma amfani da hudu ka'idojin DDL:

CREATE. Shigar da tsarin sarrafa bayanai akan kwamfuta yana ba ka damar ƙirƙira da sarrafa bayanai masu zaman kansu masu yawa. Alal misali, ƙila ka so ka kula da bayanan abokan hulɗar abokan ciniki ga sashen tallace-tallace da kuma bayanan sirri ga ma'aikatar HR naka. Ana amfani da umurnin CREATE don kafa kowane ɗayan waɗannan bayanai a dandalinku. Misali, umurnin:

Ƙaddamar da ma'aikatan DATABASE

ƙirƙirar wani komai marar amfani mai suna "ma'aikata" a kan DBMS. Bayan ƙirƙirar bayanan, mataki na gaba shi ne ƙirƙirar tebur wanda ya ƙunshi bayanai. Za'a iya amfani da wani bambancin tsarin CREATE don wannan dalili. Dokar:

CREATE TABLE personal_info (first_name char (20) ba null, last_name char (20) ba null, worker_id int ba null)

ya kafa tebur mai suna "personal_info" a cikin database na yanzu. A cikin misali, teburin yana dauke da halayen halayen guda uku: sunan farko_name, last_name da employee_id tare da wasu ƙarin bayani.

Amfani. Dokar ta USE tana ba ka damar saka bayanin da kake son aiki tare da DBMS. Alal misali, idan kana aiki a cikin tallace-tallace tallace-tallace da kuma so ka ba da wasu umarni da zasu shafi tashar ma'aikaci, gabatar da su tare da umarnin SQL wanda ya biyo baya:

Amfani da ma'aikata

Yana da mahimmanci a koyaushe ku san abin da kuke aiki a gaban komitin umarni na SQL wanda ke sarrafa bayanai.

ALTER. Da zarar ka kirkiro tebur a cikin bayanai, zaka iya so ya canza fassararsa. Umurnin ALTER yana ba ka damar canza canje-canje a tebur ba tare da sharewa ba kuma ka sake rubuta shi. Dubi umarni mai biyowa:

ALTER TABLE personal_info ADD albashin kuɗi maras amfani

Wannan misali yana ƙara sabon sifa zuwa launi na sirri na sirri-ma'aikaci na albashi. Shawarar "kuɗi" ta ƙayyade cewa an adana albashin ma'aikaci ta hanyar yin amfani da takardun kuɗin daloli. A ƙarshe, ma'anar "null" tana gaya wa database cewa yana da kyau don wannan filin don kada ya sami darajar kowane ma'aikaci.

DROP. Umarnin ƙarshe na Bayanin Bayanai na Bayanai, DROP, yana ba mu damar cire dukkanin abubuwan bayanai daga DBMS. Alal misali, idan muna so mu cire matakan sirri na sirri na sirri wanda muka halitta, zamu yi amfani da wannan umarni:

DROP TABLE personal_info

Hakazalika, za a yi amfani da umurnin da ke ƙasa don cire duk ma'aikacin ma'aikaci:

Ma'aikatan DATABASE DROP

Yi amfani da wannan umurnin tare da kulawa. Dokar DROP ta kawar da dukkanin bayanan bayanai daga asusunka. Idan kana so ka cire takardun mutum, yi amfani da Dokar DELETE na Harshen Manhajar Bayanan.

Dokokin Harshen Bayanin Bayanai na Data

Ana amfani da Harshen Manhajar Bayanan (DML) don dawowa, sakawa da kuma gyara bayanin bayanan bayanai. Ana amfani da waɗannan umarnin da duk masu amfani da bayanai a lokacin aiki na yau da kullum.

A saka. Dokar shigarwa a cikin SQL ana amfani da shi don ƙara rubutun zuwa layin da ke ciki. Komawa zuwa misalin sirri na sirri daga ɓangaren da suka gabata, kuyi tunanin cewa sashen HR yana buƙatar ƙara sabon ma'aikaci zuwa asusunsa. Zaka iya amfani da umurnin kamar wannan:

Sanya cikin lambobin sirri na sirri ('bart', 'simpson', 12345, $ 45000)

Lura cewa akwai dabi'u hudu da aka kayyade don rikodin. Wadannan sun dace da layin da ke cikin layin da aka tsara: first_name, last_name, worker_id da albashi.

SANTA. Dokar SELECT shine umurnin da aka fi amfani da shi a cikin SQL. Yana ƙyale masu amfani da bayanai don dawo da bayanan da suke so daga cibiyar sadarwa. Yi la'akari da 'yan misalai, sake yin amfani da layin sirri na sirri na sirri daga ma'aikacin ma'aikaci.

Umurin da aka nuna a kasa ya dawo da duk bayanin da ke cikin launi na sirri na sirri. Lura cewa an yi amfani da alama azaman mai amfani a cikin SQL. Wannan a zahiri yana nufin "Zaɓi duk abin da ke cikin launi na sirri na sirri".

SANTA * FROM personal_info

A madadin, masu amfani suna son ƙayyade halayen da aka dawo daga cikin asusun. Alal misali, Ƙungiyar Harkokin Kasuwanci na iya buƙatar jerin sunayen sunaye na duk ma'aikata a cikin kamfanin. Kwamitin SQL wanda ya biyo baya zai dawo da wannan bayanin kawai:

Sanya adireshin karshe daga sirri na sirri

WANNAN ABIN za a iya amfani dashi don iyakance bayanan da aka dawo da waɗanda suka hadu da ka'idoji. Maigirma zai iya sha'awar nazarin bayanan ma'aikatan duk ma'aikatan da aka biya. Umurnin da ya biyo baya ya dawo da dukkanin bayanan da ke cikin sirri na sirri don bayanan da ke da albashi mafi girma fiye da $ 50,000:

SANTA * FROM personal_info YADDA albashi> $ 50000

UPDATE. Dokar UPDATE za a iya amfani da su don canza bayanin da ke cikin tebur, ko dai a cikin girman ko akayi daban-daban. Da alama kamfanin yana ba wa ma'aikata cikakken karuwar farashin kashi 3 cikin albashi a kowace shekara. Za a iya amfani da umarnin SQL ɗin nan da sauri don amfani da wannan ga dukan ma'aikatan da aka adana a cikin bayanai:

UPDATE personal_info Fara albashi = albashi * 1.03

Lokacin da sabon ma'aikaci Bart Simpson ya nuna aiki a sama da kuma bayan kiran da ake bukata, gudanarwa yana son ya fahimci abin da ya yi da wani tarin dala $ 5,000. WANNAN ABIN da za a iya amfani dashi don yaɗa Bart don wannan tadawa:

UPDATE personal_info Sakamakon albashi = albashi + $ 5000 GABA employee_id = 12345

KASHE. A ƙarshe, bari mu dubi umurnin DELETE. Za ku ga cewa rubutun wannan umarni yana kama da na sauran umarni na DML. Abin baƙin cikin shine, rahotonmu na kamfanonin kamfanoni na gaba bai yi daidai da tsammanin da Bart ya ɓoye ba. Dokar KASHE tare da wani wuri na ABIR za a iya amfani da su don cire rikodin sa daga launi na sirri na sirri:

KASHE DAGA personal_info BAYA ma'aikaci_id = 12345

Ya kasance

Yanzu da ka koyi dalilai na SQL, lokaci ya yi don matsawa zuwa ɗaya daga cikin batutuwan da suka fi dacewa da harshe ya kamata ya ba da - sanarwa na JOIN. Sanarwar ta JOIN ta ba ka damar hada bayanai a cikin maɓallai masu yawa don aiwatar da yawancin bayanai da yawa. Wadannan kalamai ne inda ikon gaskiya na cibiyar sadarwa ke zaune.

Don bincika yin amfani da wani mahimmanci YAKE aiki don haɗa bayanai daga tebur biyu, ci gaba da misali ta amfani da tebur PERSONAL_INFO kuma ƙara ƙarin teburin zuwa mahaɗin. Ka ɗauka kana da tebur da ake kira DISCIPLINARY_ACTION da aka halicce shi tare da sanarwa mai zuwa:

Sanya TABLE ba da horo ba (action_id ba shi da banza, ma'aikaci_id ba shi da wulakanci, sharuddan caji (500))

Wannan tebur yana ƙunsar sakamakon ayyukan horo a kan ma'aikatan kamfanin. Za ku lura cewa ba ya ƙunshi kowane bayani game da ma'aikaci ba tare da lambar ma'aikaci ba. Yana da sauƙi don tunanin abubuwa da yawa da za ku so su hada bayanai daga DISCIPLINARY_ACTION da Tables PERSONAL_INFO.

Ka ɗauka an tashe ka da ƙirƙirar rahoto da ke lissafin ayyukan da ake yi wa dukan ma'aikata da albashi mafi girma fiye da $ 40,000. Yin amfani da JININ aiki, a wannan yanayin, mai sauƙi ne. Za mu iya dawo da wannan bayanin ta yin amfani da umurnin mai zuwa:

BABI personal_info.first_name, personal_info.last_name, disciplinary_action.comments FROM personal_info, disciplinary_action YIN personal_info.employee_id = disciplinary_action.employee_id DA personal_info.salary> 40000

Lambar ta ƙayyade launi biyu da muke so mu shiga cikin sashe FROM FROM sannan kuma ya haɗa da wata sanarwa a cikin SABARI wannan sashi don iyakance sakamakon zuwa rubutun da ke da alamun ma'aikatan ma'aikata daidai kuma sun cika ma'auni na albashi fiye da $ 40,000.