Famoronana Databases sy Tables ao amin'ny SQL

Famoronana Database

Vonona ny hanomboka hanangana tahiry sy latabatra amin'ny fiteny Structured Query ianao? Ao amin'ity lahatsoratra ity dia ahitantsika ny fizotran'ny famoronana tabilao amin'ny alalan'ny CREATE DATABASE sy CREATE TABLE commandes. Raha toa ianao ka vaovao amin'ny SQL, azonao atao ny mijery ny lahatsoratra SQL Basics aloha.

Business Requirements

Alohan'ny hijanonantsika eo amin'ny klavier, mila miantoka isika fa manana fahatakarana mafonja ny zavatra takian'ny mpanjifa. Inona no fomba tsara indrindra hahazoana io fahazoana io? Miresaka amin'ny mpanjifa, mazava ho azy! Rehefa avy niara-nipetraka tamin'ny talen'ny Human Resources XYZ izahay, dia nianatra fa orinasa fivarotana maimaim-poana izy ireo ary liana voalohany amin'ny fanaraha-maso ny vaovao momba ny mpividy.

Ny XYZ Corporation dia mampizarazara ny herim-pamokarana any amin'ny faritra atsinanana sy andrefana, izay samy mizara ho faritany maro, arakaraky ny fivarotana varotra. Ny Departemantan'ny HR dia te-hanara-maso ny faritr'ireo mpiasan'ny tsirairay ary koa ny drafitry ny salan'isan'ny mpiasa tsirairay sy ny rafitra mpanara-maso. Ho fanatanterahana ireo fepetra ireo, dia namorona daty misy tabilao telo izahay, aseho amin'ny endrika Diary momba ny fifandraisana eo amin'ity pejy ity.

Mifidiana sehatr'asa Database

Nanapa-kevitra ny hampiasa rafitra fitantanana database (na DBMS) izay naorina tamin'ny fiteny Structured Query (SQL). Noho izany, ny baikonay rehetra sy ny baiko famoronana ny latabatra dia tokony hosoratana amin'ny ANSI SQL amin'ny ankapobeny.

Ho tombon-tsoa fanampiny, amin'ny fampiasana ny SQL ho an'ny ANSI, dia ho azo antoka fa ireo baiko ireo dia hiasa amin'ny DBMS izay manohana ny SQL standard , isan'izany ny Oracle sy Microsoft SQL Server. Raha mbola tsy nifidy sehatra iray ho an'ny banky angona ianao, ny lahatsoratra Database Software Options dia mandeha aminao amin'ny alalan'ny fizotry ny fifantenana.

Famoronana Database

Ny dingana voalohany dia ny mamorona ny angona tahiry. Maro ireo rafitra fitantanana database no manolotra andian-dahatsoratra maromaro mba hampifanarahana ny fomba amam-pandrafetana amin'ny daty, saingy ny fitrandrahana antsika dia mamela ny fananganana rakitra tsotra fotsiny. Tahaka ny amin'ny didinay rehetra dia azonao atao ny manadihady ny antontan-taratasy momba ny DBMS anao mba hamaritana raha mifanaraka amin'ny zavatra ilain'ny rafi-pampandrosoana izay tohanan'ny rafitra manokana anao. Andao hampiasa ny baiko CREATE DATABASE mba hananganana ny antontan-kevitra izahay:

AMPIASAINA AMIN'NY DATABASA

Mariho manokana ny kapitalisma ampiasaina amin'ny ohatra etsy ambony. Fomba fanao mahazatra eo amin'ireo programa SQL ireo ny fampiasana ireo litera lehibe ho an'ny teny SQL, toy ny "CREATE" sy "DATABASE" raha mampiasa ny litera kely ambany ho an'ny anarana nomena anarana toy ny anarana "mpiasa". Ireo fivoriambe ireo dia manome fahafahana mora azo.

Tohizo ny famakiana io lesona io rehefa mamorona latabatra ho an'ny daty izahay.

Learn More

Raha tianao ny hianatra bebe kokoa momba ny Fiteny Query Structured , vakio ny Introduction to SQL na manorata ny e-mail fianarana malalaka fianarana SQL.

Amin'izao isika no namorona sy namorona ny angon-drakitra, dia vonona ny hanangana sehatra telo ampiasaina hanangonana tahirim-bolan'ny XYZ Corporation isika. Hametraka ny latabatra novolavolainay izahay teo amin'ny ampahany talohan'ity lesona ity.

Mamorona ny latabatra voalohany

Ny latabatra voalohanay dia ahitana ny angon-drakitra manokana ho an'ny mpiasa tsirairay avy amin'ny orinasa. Tokony hampidirintsika ny anaran'ny mpiasa tsirairay, ny karama, ny ID ary ny mpitantana tsirairay. Fomba fanehoana tsara ny fanasarahana ny anarana farany sy voalohany amin'ny sehatra samihafa mba hanatsorana ny fikarohana sy ny fikarohana amin'ny ho avy. Ankoatra izay, hanara-maso ny mpitantana ny mpiasa tsirairay isika amin'ny alàlan'ny fampidiran-dahatsoratra amin'ny mpiara-miasa amin'ny mpiandraikitra ao amin'ny rakitra tsirairay. Andao aloha hijery ny latabatry ny mpiasa.

Ny Attribut ReportsTo dia mitahiry ny ID ny mpiandraikitra tsirairay. Avy amin'ireo rakitsoratra naseho, afaka mamaritra fa i Sue Scampi no talen'ny Tom Kendall sy John Smith. Na dia izany aza, tsy misy ny fampahalalana ao amin'ny tahiry momba ny mpitantana Sue, araka ny asehon'ny fidirana NULL ao anatin'ny laharana.

Ankehitriny dia afaka mampiasa SQL isika mba hamoronana ny latabatra ao amin'ny tahirin-tsarin'ny mpiasa. Alohan'ny ahafahantsika manao izany, andeha hojerentsika fa ao anaty tahiry marina isika amin'ny alalan'ny famoahana baiko USE:

Mpampiasa USE;

Na koa, ny "DATABASE personnel;" Ny baiko dia hanao toy izany koa. Azontsika atao ny mijery ny baiko SQL ampiasaina hanamboarana latabatra mpiasa:

MIEZAKA TABLE ny mpiasa (employeeid INTEGER NOT NULL, lastname VARCHAR (25) NOT NULL, name VARCHAR (25) NOT NULL, reportsto INTEGER NULL);

Tahaka ny amin'ny ohatra etsy ambony, dia mariho fa ny fivoriam-pampianarana dia mandidy antsika hampiasa ireo litera lehibe rehetra ho an'ny teny SQL sy ireo litera madinika ho an'ireo columns sy latabatra nomena anarana. Ny baiko etsy ambony dia toa mampikorontan-tsaina amin'ny voalohany, saingy misy rafitra tsotra ao ambadik'izany. Ity misy fomba fijery ankapobeny izay mety hanazava zavatra kely:

CREATE TABLE table_name (safidy atendy Datatype, ..., attribute_name datatype safidy);

Ireo toetra sy karazana data

Ao amin'ny ohatra teo aloha, ny anaran'ny tabilao dia mpiasa ary anisan'izany ny toetra efatra: mpiasa, anarana, anarana nomena ary reporto. Ny daty dia mampiseho ny karazana fampahalalana tiantsika hotehirizina amin'ny sehatra tsirairay. Ny ID mpiara-miasa dia laharana tsotra iray, ka mampiasa ny INTEGER datatype ho an'ny sehatry ny mpiasa sy ny tatitra reportsto. Ny anaran'ny mpiasa dia karazana loko miovaova ary tsy manantena ny mpiasa iray hanana anarana na anarana farany mihoatra ny 25. Noho izany dia hampiasa ny karazana VARCHAR (25) isika ho an'ireo saha ireo.

Valiny NULL

Azontsika atao ihany koa ny manondro na NULL na NOT NULL amin'ny sahan-kevitra an'ny CREATE. Izany dia manambara fotsiny ny daty raha toa ka zarain'ny NULL (na tsia) ny sanda misy azy raha mampiditra ny laharan-databatra. Amin'ny ohatra asehonay, ny Departemantan'ny HR dia mitaky ny fametrahana ny ID sy ny famoaham-bokatra ho an'ny mpiasa tsirairay. Na izany aza, tsy ny mpiasa rehetra dia manana mpitantana - ny tale jeneralin'ny serasera dia tsy mitatitra! - Koa avelantsika ny lisitry NULL ao amin'io sehatra io. Mariho fa ny NULL dia ny sandan'ny dikan-teny ary ny fialana amin'io safidy io dia hamela ny sanda NULL ho an'ny toetra iray.

Manangana ny sisa tavela

Andeha hojerentsika ny latabatry ny latabatra. Avy amin'ny fijerena haingana an'io angon-drakitra io, dia hita fa mila mitahiry singa iray sy lamosina roa farafahakeliny isika. Tahaka ny tamin'ny ohatra teo alohantsika, tsy manantena ny ID ny faritra hanimba karatra mihoatra ny 25. Na izany aza, misy ny anaran'ny faritanintsika manana anarana lava kokoa, hany ka hanitatra ny lavaka azo avaozina io toetra io ho karazany 40. Andeha hojerentsika ny SQL mifanaraka amin'izany:

CREATE TABLE territories (territorid INTEGER NOT NULL, territoire Description VARCHAR (40) NOT NULL, regionid VARCHAR (25) NOT NULL);

Farany, hampiasa ny latabatra EmployeeTerritories isika mba hitazonana ny fifandraisana eo amin'ny mpiasa sy ny faritany. Ny fampahalalana amin'ny antsipiriany momba ny mpiasa tsirairay sy ny faritany tsirairay dia voatahiry ao amin'ny latabatra roa teo aloha. Noho izany dia ilaintsika ihany ny manangona ireo tarehimarika roa ireo ao anatin'ity latabatra ity. Raha mila manitatra an'ity fampahalalana ity isika dia afaka mampiasa JOIN ao amin'ny baiko mifandraika amin'ny data mba hahazoana vaovao avy amin'ny tabilao maromaro. Ity fomba famahanana ny angon-drakitra ity dia mampihena ny famerana ny volavolan-tserasera ary manome antoka ny fampiasana ny toerana malalaka amin'ny fitaterana. Hanafaka lalina ny baikon'ny JOIN izahay ao anatin'ny lesona manaraka. Ity ny code SQL hametrahana ny latabatra farany:

MITADY mpiasa mpiandraikitra ny mpiasa (mpiara-miasa INTEGER NOT NULL, territorial INTEGER NOT NULL);

Ny SQL-n'ny Mechanism dia manome alalana ny fananganana ny rafitry ny daty iray taorian'ny famoronana

Raha mahagaga anao manokana androany, mety ho tsikaritrao angamba fa "tsy ampoizina" ny iray amin'ireo fepetra takiana amin'ny fampiharana ny tabilan'ny banky. Nasain'ny Tale HR an'ny XYZ Corporation fa handefa fanazavana momba ny karama mpiasa ny banky ary tsy navela hanome izany ao amin'ny tabilan'ny banky izahay.

Na izany aza, tsy very daholo ny rehetra. Azontsika atao ny mampiasa ny baiko ALTER TABLE mba hampidirana an'ity toetra ity amin'ny daty misy antsika. Tianay ny mitahiry ny karama ho toy ny lanjany tsy manan-tsahala. Ny syntax dia mitovy amin'ny baikon'ny CREATE TABLE, eto izy ity:

ALTER TABLE mpiasa mpiasa ADD salan'isa INTEGER NULL;

Mariho fa nilaza izahay fa ny sanda NULL dia avela ho an'ity toetra ity. Amin'ny ankabeazan'ny toe-javatra dia tsy misy safidy rehefa mampiditra tsanganana eo amin'ny latabatra misy. Izany dia noho ny tabilao efa misy andalana tsy misy fidirana amin'io toetra io. Noho izany, ny DBMS dia manantona ny sanda NULL mba hamenoana ny voina.

Ary izany dia manatsara ny fijerintsika ny SQL daty sy ny fizotry ny famoronana tabilao. Miverena matetika matetika amin'ny famoahana vaovao ao amin'ny andian-dahatsoratra SQL. Raha tianao ny fampatsiahivana imailaka rehefa ampidirina lahatsoratra amin'ny tranonkala About Databases ireo lahatsoratra vaovao, aoka ho azo antoka fa hosoratana amin'ny gazetinay!