Te waihanga i nga Raraunga me nga Ripanga I roto i SQL

Te hanga i te Database

Kei te rite ranei koe ki te timata ki te hanga i nga raraunga me nga ripanga me te Reo Uiui Raupapa ? I roto i tenei tuhinga, ka torotoro tatou i te tukanga o te hanga i nga tepu ma te ringa ki te CREATE DATABASE me te whakahau CREATE TABLE. Mena he hou koe ki te SQL, ka hiahia pea koe ki te arotake wawe i to tuhinga SQL Basics .

Whakaritenga Pakihi

I mua i to matou noho ki te papapātuhi, me whakarite kia kaha to maatau ki nga whakaritenga a te kiritaki. He aha te huarahi pai hei whiwhi i tenei matauranga? Te korero ki te kiritaki, o te akoranga! I muri i te noho tahi me te Kaiwhakahaere Rauemi Tino o te XYZ, kua akohia e matou he kamupene hokohoko pouaka, he tino hiahia ki te tirotiro i nga korero mo o raatau kaihoko.

E wehewehe ana a XYZ Corporation i to raatau hoko ki nga rohe o te rawhiti me te hauauru, ka wehewehea ia ki nga rohe maha e taupokina ana e nga kaihoko hokohoko takitahi. Ko te Tari HR ka hiahia ki te aroturuki i te rohe e pa ana ki ia kaimahi me te mahinga utu utu a te kaimahi me te hanganga whakahaere. Hei whakatutuki i enei whakaritenga, kua hangaia e matou he paparangi korero e toru ngapu, e whakaatuhia ana i te hoahoa hononga-hononga i tenei waahanga.

Te whiriwhiri i te Kaupapa Raraunga

Kua whakaritea e matou ki te whakamahi i tetahi pūnaha whakahaere paerewa (a DBMS) ranei e hangahia ana i runga i te Reo Uiui Raupapa (SQL). Na reira, ko nga mea katoa o to maatau paparangi me nga whakahau hangahanga papaa kia tuhia me te ANSI SQL paerewa.

Hei painga ano, ko te whakamahi i te SQL ANSI-mana e whakarite kia mahi enei whakahau ki tetahi DBMS e tautoko ana i te paerewa SQL , tae atu ki Oracle me te Microsoft SQL Server. Mena kuaore i whiriwhiria e koe he kaupapa mo to papamahi, kei te haere koe i nga mahinga Raraunga Paerewa i roto i te tukanga whiriwhiri.

Te hanga i te Database

Ko taahi taahiraa tuatahi ko te hanga i te papaapu raraunga ano. He maha nga whakahaere whakahaere paatai ​​e whakarato ana i te raupapa o nga whiringa hei whakarite i nga tautuhinga pātengi raraunga i tenei taahiraa, engari ko taatau papanga noa ka whakaahei i te hanganga ohie o te raraunga. Ka rite ki nga whakahau katoa, ka hiahia pea koe ki te whakawhiti i nga tuhinga mo to DBMS hei whakatau mehemea ka tutuki nga hiahia o nga tawhitinga tawhito e tautokona ana e to maatau rorohiko. Me whakamahi te tono CREATE DATABASE ki te whakatu i to maatau paparangi:

Whakaritea nga kaimahi DATABASE

Tirohia nga korero mo te rahi o te whakamahinga i whakamahia i roto i te tauira i runga nei. He mahi noa i roto i nga kaiwhakahaere SQL hei whakamahi i nga reta nui mo nga kuputuhi SQL penei i te "CREATE" me te "DATABASE" i te whakamahi i nga reta iti katoa mo nga ingoa kua tautuhia e te kaiwhakamahi rite te ingoa raraunga "kaimahi". Ko enei whakaritenga e whakarato ana i te korerowari ngawari.

Haere tonu ki te pänui i tënei akoranga ka hangaia e mätou ngä ripanga mö to mätou pätengi raraunga

Ako atu

Mena e hiahia ana koe ki te ako atu mo te Reo Uiui Raupapa , korerotia te Kupu Whakataki ki te SQL , haina ranei mo to maatau-ī-mēra Akoranga Akoranga.

Na kua hangahia e matou a maatau paparangi, kua rite matou ki te timata ki te hanga i nga papa e toru hei whakamaara i nga raraunga kaimahi kaimahi a XYZ Corporation. Ka whakatinanahia e matou nga ripanga i hangaia e matou i te waahanga o mua o tenei akoranga.

Te waihanga i to tatou Ripanga Tuatahi

Ko ta matou papa tuatahi ko nga raraunga whaiaro mo ia kaimahi o ta matou kamupene. Me whakauru i nga ingoa o ia kaimahi, utu, ID, me te kaiwhakahaere. He pai te hoahoa hoahoa hei wehe i nga ingoa whakamutunga me nga ingoa tuatahi ki nga waahi motuhake hei whakaiti i te rapu raraunga me te tohatoha i nga wa kei te heke mai. Waihoki, ka aroturuki tatou i te kaiwhakahaere o ia kaimahi na roto i te whakauru i te tohutoro ki te ID kaimahi a te kaiwhakahaere i roto i ia pukamahi kaimahi. Kia titiro tuatahi ki te tepu kaimahi e hiahiatia ana.

Ko te ReportsTo nga taonga e tiaki ana i te ID hei kaiwhakahaere mo ia kaimahi. Mai i nga tauira tauira kua whakaaturia, ka taea e matou te whakatau ko Sue Scampi te kaiwhakahaere o Tom Kendall me John Smith. Heoi, kaore he korero i roto i te papaunga raraunga i runga i te kaiwhakahaere o Sue, pera i whakaaturia e te urunga NULL i tana rarangi.

Na, ka taea e matou te whakamahi i te SQL ki te waihanga i te ripanga i roto i to maatau papaarati. I mua i ta matou mahi, me whakarite kei te tika matou i roto i te papatohu tika na roto i te tuku i te whakahau USE:

Te kaimahi kaimahi;

I tua atu, ko te "kaimahi DATABASE"; ka mahia e te whakahau te mahi ano. Na, ka taea e tatou te titiro ki te ture SQL i whakamahia hei waihanga i to taatau kaimahi:

WHAKATAHI nga kaimahi TABLE (kaore i te WHAKANUI KI TE NULL, ko te ingoa VARCHAR (25) NO NULL, te ingoa tuatahi VARCHAR (25) NO NULL, reportsto INTEGER NULL);

Kia rite ki te tauira o runga ake nei, kia mahara kei te whakatinana i te kirimana hōtaka ka whakamahi matou i nga reta nui mo nga kupumatua SQL, me nga reta iti mo nga kohinga ingoa me nga ripanga kaiwhakamahi. Ko te whakahau i runga ake ka raruraru i te tuatahi, engari he tino hanganga tera i muri. Anei he tirohanga whānui e taea ai te whakakore i nga mea ake:

Whakaritehia te TABLE te ingoa o te ripanga (ingoa kaiwhakamahi raraunga, huanga, ..., kōwhiringa tautuhinga kōpaki_autu);

Nga momo me nga momo Raraunga

I roto i te tauira o mua, ko nga ingoa o te tepu he kaimahi, a ko nga waahanga e wha e uru ana ki a matou: employeeid, namename, firstname, and reportsto. Ko te kaituhi e whakaatu ana i te momo korero e hiahia ana matou ki te rokiroki i ia mara. Ko te ID kaimahi he nama taurangi noa, na ka whakamahia e matou te tuhinga tuhinga INTEGER mo te mara kaimahi me te papaaatarongo. Ko nga ingoa o nga kaimahi ka tohu i te roa o te roa, a kaore e whakaarohia e tetahi kaimahi tetahi ingoa tuatahi, ingoa whakamutunga atu i te 25 nga horopaki. Na, ka whakamahia e matou te momo VARCHAR (25) mo enei mara.

NULL Uara

Ka taea hoki e tautuhi i te NULL, i te NOT NULL ranei i roto i te waahi whiringa o te tauākī CREATE. Ma tenei e korero ana i te papaaataata ka whakaaetia nga uara NULL (ranei kore) mo taua huanga i te wa e tohaina ai nga rarangi ki te paataka. I roto i ta tatou tauira, ka hiahia te Tari HR kia whakaurua he ID me tona ingoa mo ia kaimahi. Engari, kaore he kaiwhakahaere o nga kaimahi katoa - ko te korero a te Tumuaki ki tetahi tangata! - na ka whakaaetia e matou nga whakauru NULL ki taua mara. Kia mahara ko NULL te uara taunoa me te whakakore i tenei kōwhiringa ka whakaaetia nga uara NULL mo te huanga.

Te hanga i nga Ripanga Tuku

Na, kia ata titiro ki te papa whenua. Mai i te tere o te titiro ki enei raraunga, ka puta mai me maatau he roopu tauwhitinga me nga aho e rua. Ka rite ki to taatau tauira o mua, kaore matou e tatari ana i te ID Takiwa kia horo atu i te 25 nga tahua. Heoi, he ingoa roa o etahi o o matou rohe, na ka whakawhānuihia e matou te roa o te huanga ki nga tohu 40. Kia titiro ki te SQL e hāngai ana:

Whakaritea nga rohe TABLE (rohe WHAKANUI KORE NULL, rohe Whakamārama VARCHAR (40) NO NULL, rohe VARCHAR (25) NOT NULL);

Hei whakamutunga, ka whakamahi matou i te ripanga kaimahi ki te raupapatanga i nga hononga i waenga i nga kaimahi me nga rohe. Ko nga korero taipitopito e pa ana ki nga kaimahi me nga waahi katoa kei roto i o maatau papa e rua. Na reira, ko te mea tika kia raupapatia nga tau whakauru taurangi maha i tenei tepu. Ki te hiahia matou ki te whakawhānui ake i tenei korero, ka taea e matou te whakamahi i te JOIN i roto i ta maatau waahanga raraunga hei tiki i nga korero mai i nga ripanga maha. Ko tenei tikanga mo te kohikohi i nga raraunga e whakaiti ana i te waahi i roto i to maatau paparangi me te whakarite i te whakamahinga pai o te mokowhiti i runga i o maatau taonga rokiroki. Ka hipoki tatou i te whakahau a te JOIN i roto i te waahanga ako i muri mai. Tenei ko te waehere SQL hei whakatinana i to taatau whakamutunga:

KAUPAPA TABLE nga kaitono mahi (kaore i te WHAKANUI KAUPAPA NULL, te rohe kaore i te WHAKANUI KI TE NULL);

Ko te Hanga Momo SQL kei te Whakawhiti i te Hanganga o te Paerewa I muri i te Hangahanga

Mena kei te tino mohio koe i tenei ra, kua mohio pea koe kua "ngaro" tetahi o nga waahanga hoahoa i te whakatinanatanga o o taatau papapupurangi. Ko te Kaiwhakahaere Rangatira o te Kamupene o te Kamupene o XYZ e tono ana kia paahitia nga korero utu mo nga kaimahi mo te paerewa raraunga, a kaore i pai ki te whakarato mo tenei i roto i nga ripangapurangi i hanga e matou

Heoi, kaore katoa i ngaro. Ka taea e matou te whakamahi i te whakahau ALTER TABLE ki te whakauru i tenei huanga ki to maatau paparangi. E hiahia ana matou ki te penapena i te utu hei painga maha. He rite tonu te raupapa i te mea o te ture CREATE TABLE, kei konei ko:

TĒTAHI kaimahi TABLE kaimahi ADD utu INTEGER NULL;

Kia mahara kua tohua e matou ko nga uara NULL e whakaaetia ana mo tenei huanga. I roto i te nuinga o nga take, kaore he whiringa ka whakauruhia he pou ki tetahi ripanga kei roto. He tika tenei na te mea kei roto i te ripanga nga rarangi kaore he urunga mo tenei huanga. Na reira, ka whakauru aunoa te DBMS i te uara NULL hei whakaki i te whakakore.

Na ko te whakakii i to tatou titiro ki te paerewa SQL me te tukanga hanga ripanga. Tirohia ano mo nga waahanga hou i roto i to raupapa akoranga tuturu SQL. Mena e hiahia ana koe ki te whakamahara i te ī-mēra ka whakauruhia nga tuhinga hou ki te pae Raraunga Mōhiohio, me tino whakaae koe ki to maatau panui!