Datu bāzu izveides pamati

Svarīgi!:  Šis raksts ir mašīntulkots, skatiet atrunu. Lūdzu, skatiet šī raksta versiju angļu valodā šeit jūsu informācijai.

Pareizi noformēta datu bāze nodrošina piekļuvi atjaunināta, precīzu informāciju. Tāpēc, ka pareizo dizains ir būtiski, lai sasniegtu savus mērķus darbā ar datu bāzi, ieguldīt laiku nepieciešams Uzziniet laba dizaina principi jēga. Beigās, jums ir daudz biežāk nonāktu ar datu bāzi, kas atbilst jūsu vajadzībām un viegli pielāgotu pārmaiņām.

Šajā rakstā sniegti norādījumi par plānošanu datora datu bāzē. Uzzināsit, kā izlemt, kāda informācija jums ir nepieciešams, kā sadalīt šo informāciju atbilstošajās tabulās un kolonnās un kā šīs tabulas, kas attiecas uz otru. Pirms veidojat savu pirmo datora datu bāzē, izlasiet šo rakstu.

Svarīgi!: Access nodrošina noformējuma pieredzi, kas ļauj izveidot datu bāzu lietojumprogrammas tīmeklim. Daudz noformējuma apsvērumiem ir atšķirīgas noformējot tīmeklim. Šajā rakstā netiek apspriest Web lietojumprogrammas datu bāze. Lai iegūtu papildinformāciju, skatiet rakstā datu bāzes izveide kopīgošanai tīmeklī.

Tēmas šajā rakstā

Daži datu bāzes termini jāzina

Kāda ir pareiza datu bāzes izveide?

Izveides procesā

Noteiktu datu bāzes mērķi

Atrašanas un organizēšanas nepieciešamo informāciju

Sadalot informāciju tabulās

Access datu bāzes datu vienumu kolonnās

Norādot primārās atslēgas

Tabulas relācijas izveide

Precizēšanas

Normalizēšana kārtulu lietošanas


Daži datu bāzes termini jāzina

jūsu tabulāsinformācija ir sakārtota Access : sarakstos, kas sastāv no rindu un kolonnu atgādina grāmatvede tastatūru vai izklājlapu. Vienkārša datu bāze, var būt tikai viena tabula. Lielākā daļa datu bāzēm, kas ir vairāk nekā vienu. Piemēram, var būt tabula, kurā tiek glabāta informācija par produktu, citā tabulā, kurā tiek glabāta informācija par pasūtījumiem un citas tabulas ar informāciju par klientiem.

attēls ar trim tabulām datu lapā

Katrai rindai precīzāk dēvēta par ierakstuun pēc katras kolonnas lauku. Ieraksts ir jēgpilnu un konsekventas veids, kā apvienot informāciju par kaut ko. Lauks ir viena vienuma informācijas — vienuma tips, kas tiek parādīta katrā ierakstā. Tabulā Products, piemēram, katru rindu vai ierakstu traucētu informāciju par produktiem. Katra kolonna vai lauks satur kāda tipa informāciju par šo produktu, piemēram, tās nosaukumu vai cenu.

Uz lapas sākumu

Kāda ir pareiza datu bāzes izveide?

Daži principi datu bāzes izveides procesā. Pirmais princips ir, ka informācijas dublikātu (ko dēvē arī par lieku datu) ir slikta, jo tas aizņem vietu un palielina kļūdas un neatbilstības iespējamību. Otrais princips ir ir svarīga datu precizitāte un pilnīga informācija. Ja datu bāzes tajā esošā informācija nav pareiza, atskaites, kas izmantoti datu bāzes dati būs informācija nav pareiza. Kā rezultātu jebkurā veicat lēmumus, kas ir balstīti uz šiem ziņojumiem, ir maldinošs.

Laba datu bāze ir tāda, ka:

  • Dala informācijas tēmu tabulās, lai samazinātu redundantos datus.

  • Nodrošina piekļuvi ar informāciju, kas ir jāveic, lai savienotu informāciju tabulās pēc nepieciešamības.

  • Palīdz atbalstu un nodrošina precīzu un informācijas integritāti.

  • Uzņemti datu apstrādes un atskaišu izveides vajadzībām.

Uz lapas sākumu

Izveides procesā

Noformējuma datu bāzi, veiciet šādas darbības:

  • Nosakiet datu bāzes mērķi   

    Tas palīdz sagatavoties veicamajām darbībām.

  • Atrodiet un organizējiet nepieciešamo informāciju   

    Apkopojiet visu veidu datus, iespējams, vēlēsities datu bāzei, piemēram, produkta nosaukumu un pasūtījuma numuru.

  • Datus sadalītu pa tabulām   

    Sadaliet datu vienumus galvenās vienības vai tēmās, piemēram produkti vai pasūtījumi. Katra tēma pēc tam kļūst par tabulu.

  • Datu vienumu pārveidošana kolonnās   

    Izlemt, kāda informācija jāglabā katrā tabulā. Katram vienumam kļūst par lauku un tiek parādīts kā tabulas kolonna. Piemēram, tabulā darbinieki var būt iekļauti tādi lauki, piemēram, uzvārds un darbā datumu.

  • Norādiet primārās atslēgas   

    Katrai tabulai izvēlieties primāro atslēgu. Primārā atslēga ir kolonna, kas tiek izmantots, lai unikāli identificē katru rindu. Piemērs var būt produkta ID vai pasūtījuma ID.

  • Iestatiet tabulu relācijas   

    Pārskatiet katru tabulu un izlemiet, kā vienas tabulas dati ir saistīti ar datiem citās tabulās. Pievienojiet tabulām laukus vai izveidojiet jaunu tabulu, lai precizētu relācijas, pēc vajadzības.

  • Precizējiet jūsu dizains   

    Analizēt jūsu dizains nav kļūdu. Izveidojiet tabulas un pievienojiet dažus datu paraugu ierakstus. Skatīt, ja varat iegūt nepieciešamos rezultātus no tabulām. Pielāgojiet dizainu, pēc vajadzības.

  • Lietot normalizēšana kārtulas   

    Lietojiet datu normalizēšana kārtulas, lai pārliecinātos, vai tabulas ir strukturētas pareizi. Pielāgojiet tabulas pēc nepieciešamības.

Uz lapas sākumu

Noteiktu datu bāzes mērķi

Ieteicams pierakstīt datu bāzes mērķi uz papīra — tās mērķis, kā jūs plānojat izmantot to un kurš to izmantos. Mazu datu bāzi, kas mājas bizness, piemēram, jūs varētu rakstīt vienkāršas darbības, piemēram, "klientu datu bāze, kurā ir saraksts ar klientu datiem nolūkā ražo sūtījumi un atskaites." Ja bāze ir sarežģītāka vai to lieto vairākas personas, cik bieži notiek korporatīvā vidē, var būt garāks par rindkopu vai vairākas mērķi un jāiekļauj, kad un kā šī datu bāze tiks izmantota katrai personai. Ideja ir labi izstrādāts uzdevumu paziņojums par to, ka var izmantot visā datu bāzes izveides procesā. Kam šādu paziņojumu palīdz jums koncentrēties jūsu mērķiem, kad veicat lēmumus.

Uz lapas sākumu

Atrašanas un organizēšanas nepieciešamo informāciju

Lai atrastu un organizējiet nepieciešamo informāciju, sāciet darbu ar savu esošo informāciju. Piemēram, grāmatas vai glabājat klientu datus papīra formās faila korpusa var ierakstīt pirkšanas pasūtījumus. Iegūst šos dokumentus un saraksta katra veida informāciju, kas norādīta (piemēram, katrs lodziņš, ko aizpildāt formā). Ja jums nav nevienas formas, iedomājieties, ka jums ir forma, kurā reģistrēt klientu datus. Kāda informācija jums ievietot, veidlapā Kādas fill-in rūtiņas plānojat izveidot? Identificējiet un sarakstu katrs no šiem vienumiem. Piemēram, pieņemsim, ka jūs pašlaik klientu sarakstu glabājat kā indeksa kartītes. Pārbaudot šīs kartes var tikt parādīta katras kartes satur klientiem vārdu, adresi, pilsētas, valsts, pasta indekss un tālruņa numuru. Katrs no šiem vienumiem apzīmē iespējamais tabulas kolonnā.

Kā sagatavotā šajā sarakstā, nav jāuztraucas par panākt, lai to nevainojamu sākumā. Tā vietā saraksts katram vienumam, kas nāk prātā. Ja kāds cits izmantos datu bāzi, lūdziet savas idejas, pārāk. Jūs varat precizēt sarakstu vēlāk.

Pēc tam apsveriet, kāda tipa atskaites vai sūtījumi, ja vēlaties veidot no datu bāzes. Piemēram, iespējams, vēlēsities izveidot produktu pārdošanas atskaiti, lai parādītu pārdošanas rezultātus pa reģioniem vai krājumu kopsavilkuma atskaiti, kurā parādīti produktu krājumu līmeņi. Iespējams, vēlēsities arī izveidot standarta vēstules, lai nosūtītu klientiem, kas paziņo pārdošana notikumu vai piedāvā premium. Noformējiet domas atskaites un Iedomājieties, kas būtu jāizskatās. Informācija, kas jūs ievietotu šajā atskaitē? Uzskaitīt katram vienumam. Veiciet to pašu standarta vēstuli vai jebkuru citu atskaiti paredzat izveidi.

persona, kas iztēlojas produktu krājumu atskaiti

Piešķirot doma atskaites un sūtījumi, iespējams, vēlēsities izveidot palīdz noteikt vienumi ir nepieciešami jūsu datu bāzē. Piemēram, pieņemsim, ka vēlaties klientiem piedāvāt iespēju izvēlēties (vai ārpus) periodiskus e-pasta atjauninājumus, un jūs vēlaties izdrukāt to klientu sarakstu, kuras ir piekritušas. Lai reģistrētu šos datus, pievienojiet "Sūtīt e-pasta" kolonnas tabulas Klients. Katram klientam lauku var iestatīt uz Jā vai nē.

Prasības, lai nosūtītu e-pasta ziņojumus klientiem automātiskus citu vienumu veikt ierakstīšanu. Kad esat pārliecināts, ka klients vēlas saņemt e-pasta ziņojumus, jums ir jāzina e-pasta adresi, uz kuru nosūtīt tos. Tādēļ ir ierakstīt e-pasta adresi katram klientam.

Ir noderīgi veidotu paraugam katras atskaites vai izvades sarakstu un apsveriet iespēju kādi vienumi būs nepieciešams, lai tiktu parādīts pārskats. Piemēram, pārbaudot vēstules veidlapu, dažas lietas var būt prātā. Ja vēlaties iekļaut pareizu uzrunu — piemēram, "Misters", "Mrs" vai "Ms." virkne, kas sākas sveicienu, jums būs uzruna vienuma izveide. Turklāt, parasti varētu sākt vēstuli ar "Dārgo Smita", nevis "dārgo. Mr Sylvester Bērziņš". Tas norāda, kuru parasti vēlaties uzglabāt atsevišķi no vārds uzvārds.

Svarīgi atcerēties ir jums vajadzētu pauze katra informācijas daļa mazākais noderīga daļās. Attiecībā uz vārds, uzvārds padarīt viegli pieejama, jūs tiks sadalīt nosaukumu divas daļas — vārds un uzvārds. Lai kārtotu pēc uzvārda atskaiti, piemēram, ir noderīgi ir uzvārds uzglabāt atsevišķi. Kopumā, ja vēlaties kārtot, meklēt, aprēķināt vai atskaiti, kas balstīta uz vienuma informāciju, jums ir iekļauti šī vienuma sava lauka.

Padomājiet par jautājumiem, iespējams, vēlēsities datu bāzi, lai atbildētu uz. Piemēram, cik piedāvātā produkta pārdošanas vai aizvērsit pagājušajā mēnesī? Kur dzīvo jūsu labākie klienti? Kas ir piegādātājs vislabāk pārdoto produktu? Paredzēšana šiem jautājumiem palīdz jums noteikt papildu vienumus, lai ierakstītu.

Pēc šo datu apkopošanas, esat gatavs nākamajai darbībai.

Uz lapas sākumu

Sadalot informāciju tabulās

Lai datus sadalītu pa tabulām, izvēlieties galvenās vienības vai tēmas. Piemēram, pēc datu atrašanas un sakārtošanas produktu pārdošanas datu bāzei, sākotnējais saraksts var izskatīties šādi:

rokrakstā pierakstīti datu vienumi, kas sagrupēti pa tēmām

Galvenās vienības parādīts šeit ir produktus, piegādātājiem, klientiem un pasūtījumi. Tādēļ ieteicams sākt ar šīm četrām tabulām: vienu ar faktiem par produktiem, vienu ar faktiem par piegādātājiem, no kurām viena apzīmē faktiem par klientiem un ceturto ar faktiem par pasūtījumiem. Lai gan šis nav pilnīgs saraksts, tas ir labs sākumpunkts. Varat turpināt precizēt savu sarakstu, līdz esat dizains, kas darbojas labi.

Vispirms pārskatot sākotnējo vienumu sarakstu, jūs, iespējams, vēlēsities ievietot tos visu vienā tabulā, nevis četru redzams iepriekšējā attēlā. Šeit jūs uzzināsit, kādēļ tas ir vēlama. Apsveriet iespēju kādu brīdi, tālāk redzamajā tabulā:

Attēls ar tabulu, kurā ietverti gan produkti, gan piegādātāji

Šajā gadījumā katrā rindā ir informācija par produktu, gan piegādātājs. Tā var būt daudz produktu no viena piegādātāja, piegādātāja nosaukuma un adreses datus ir jāatkārto vairākas reizes. Tā tiek nevajadzīgi aizņemta vieta diskā. Piegādātāja datu reģistrēšana tikai vienreiz atsevišķā tabulā piegādātāji un pēc tam šīs tabulas piesaistīšana tabulai produkti ir daudz labāks risinājums.

Otrā problēma ar šo dizainu, kas rodas, ja jums ir nepieciešams, lai modificētu informāciju par piegādātāja. Piemēram, pieņemsim, ka vēlaties mainīt piegādātāja adresi. Jo tā parādās vairākās vietās, nejauši varētu mainīt adresi vienuviet, bet aizmirst to izdarīt citas. Reģistrējot piegādātāja adresi tikai vienā vietā atrisina problēmu.

Noformējot datu bāzi, vienmēr centieties reģistrēt katru faktu tikai vienu reizi. Ja konstatējat, ka esat atkārtotu to pašu informāciju vienuviet vairāk nekā, piemēram, adresi konkrēts piegādātājs, ievietojiet šos datus atsevišķā tabulā.

Visbeidzot, pieņemsim, ka ir tikai viens produkts, ko Coho Winery, un jūs vēlaties izdzēst šo produktu, bet saglabāt piegādātāja nosaukuma un adreses datus. Kā jūs izdzēst produkta ierakstu, nezaudējot piegādātāja datus? Jūs nevarat. Tā kā katrā ierakstā ir informācija par produktu, kā arī fakti par piegādātāju, viens otra neizdzēšot nevar izdzēst. Lai atdalītu tālāk sniegto informāciju, ir jāsadala vienas tabulas divas: vienas tabulas, lai iegūtu informāciju par produktu, savukārt otru tabulu piegādātājs informāciju. Produkta ierakstu būtu dzēšana tikai fakti par produktu, nevis fakti par piegādātājs.

Kad esat izvēlējies tēmām, kas tiek rādīta tabulas, kolonnas tabulā jābūt tikai faktiem par šo tēmu. Piemēram, produktu tabulā jāsaglabā tikai fakti par produktiem. Tā kā piegādātāja adrese ir fakti par piegādātājs un nevis fakts par produktu, tas iederas piegādātāju tabulā.

Uz lapas sākumu

Access datu bāzes datu vienumu kolonnās

Lai noteiktu tabulas kolonnas, izlemiet, kāda informācija ir jāseko par šo tēmu reģistrētas tabulā. Piemēram, tabulai Customers vārdu, adresi, pilsēta-rajons-pasta indekss, sūtīt e-pastu, Uzruna un e-pasta adrese ietver labs sākuma kolonnu sarakstu. Katrā ierakstā tabulā ir vieniem un tiem pašiem no kolonnām, tāpēc varat saglabāt vārdu, adresi, pilsēta-rajons-pasta indekss, sūtīt e-pastu, Uzruna un e-pasta adreses informāciju katram ierakstam. Piemēram, adreses kolonnā ir norādītas klientu adreses. Katrs ieraksts satur datus par vienu klientu, un adreses laukā ietverta šī klienta adrese.

Kad esat nosaka sākotnējo katras tabulas kolonnu kopu, varat turpināt precizēt kolonnas. Piemēram, labāk būtu saglabāt klienta vārdu kā divās atsevišķās kolonnās: vārdu un uzvārdu, tāpēc, ka varat kārtot, meklēšana un indekss tikai šīs kolonnas. Tāpat arī adrese faktiski sastāv no piecām atsevišķas sastāvdaļas, adresi, pilsētas, valsts, pasta indekss un valsts/reģiona, un tas arī ir jēga, lai tos glabātu atsevišķā kolonnā. Ja vēlaties veikt meklēšanu, filtrēt vai kārtot pēc valsts/reģiona operācijas, piemēram, jums nepieciešama valsts informāciju, kas glabājas atsevišķā kolonnā.

Jums ir jāapsver, vai datu bāzes turiet informāciju, kas ir iekšzemes izcelsmes tikai vai starptautisko, kā arī. Piemēram, ja plānojat saglabāt starptautiskas adreses, ieteicams ir kolonna reģions, nevis stāvoklī, jo šāda kolonna var pielāgot gan iekšzemes valstu un reģionu citu valstu/reģionu. Tāpat pasta indekss ir izdevīgāka par pasta indekss, ja plānojat saglabāt starptautiskas adreses.

Šajā sarakstā norādīti daži padomi par kolonnu noteikšanu.

  • Neiekļaujiet aprēķinātie dati   

    Lielākajā daļā gadījumu nebūtu ieteicams saglabāt tabulu aprēķinu rezultātus. Tā vietā varat likt programmai Access veikt aprēķinus, kad vēlaties redzēt rezultātu. Piemēram, pieņemsim, ka pastāv produktu par pasūtījuma atskaiti, kurā parādīti vienības starpsummu pasūtījumā katrai kategorijai produkta datu bāzē. Tomēr ir bez vienības uz pasūtījuma starpsummu kolonnas jebkurā tabulā. Tā vietā, tabulā produkti tiek iekļauta vienības uz pasūtījuma kolonnai, kurā atrodas vienības pasūtīts katram produktam. Ņemot vērā šos datus, programma Access aprēķina starpsummu ikreiz, kad drukājat atskaiti. Starpsummu sevi nav jāglabā tabulā.

  • Glabāt informāciju mazākais loģiskajām daļām   

    Iespējams, jūs mēģināt ir viena lauka uzvārdiem vai produktu nosaukumus ar produktu aprakstus. Ja tiek apvienoti vairāk nekā viena veida informācija laukā, ir grūti vēlāk izgūt atsevišķiem faktiem. Mēģiniet datus sadalīt loģiskās daļās; piemēram, izveidojiet atsevišķus laukus vārdu un uzvārdu, vai produkta nosaukums, kategorija un apraksts.

Datu vienumu saraksts datu bāzes izveides procesā

Kad ir precizēts datu kolonnas katrai tabulai, jūs esat gatavi katrai tabulai izvēlieties primāro atslēgu.

Uz lapas sākumu

Norādot primārās atslēgas

Katras tabulas jāiekļauj kolonnai vai kolonnu kopai, kas unikāli identificē katru tabulā saglabāto rindu. Tas parasti ir unikāls identifikācijas numurs, piemēram, darbinieka ID numurs vai sērijas numurs. Datu bāzu terminoloģiju, šī informācija tiek dēvēta par tabulas primāro atslēgu . Programma Access izmanto primārās atslēgas laukus, lai ātri saistīt datus no vairākām tabulām un apkopotu šos datus jūsu vajadzībām.

Ja jums jau ir unikālu identifikatoru, lai izveidotu tabulu, piemēram, produkta numuru, kas identificē katru produktu katalogu, varat izmantot šo identifikatoru kā tabulas primārās atslēgas — bet tikai tad, ja vērtības šajā kolonnā vienmēr būs atšķirīga katram ierakstam. Primārās atslēgas nevar izmantot dublētās vērtības. Piemēram, neizmantojiet personu vārdus kā primāro atslēgu, jo nosaukumi nav unikāli. Jūs varētu būt ērti divi cilvēki ar tādu pašu nosaukumu tajā pašā tabulā.

Primārajai atslēgai vienmēr ir vērtība. Ja kolonnas vērtība var kļūt nepiešķirtu vai Nezināms (trūkstošo vērtību) kādā brīdī, to nevar izmantot kā primārās atslēgas komponentu.

Jūs vienmēr būtu izvēlēties primāro atslēgu, kuru vērtība netiks mainīta. Datu bāzes, kas izmanto vairāk nekā vienu tabulu, tabulas primārās atslēgas var izmantot kā atsauces citās tabulās. Ja primārā atslēga izmaiņas, izmaiņu arī jāpiemēro visur atslēga ir atsauce. Izmantojot primārā atslēga, kas netiks mainīta samazina iespēju, ka primārā atslēga vairs nav sinhronizēta ar citām tabulām, kas atsaucas uz to.

Bieži, pieņemtas unikāls numurs tiek izmantots kā primārā atslēga. Piemēram, varat katram pasūtījumam piešķirt unikālu pasūtījuma numuru. Pasūtījuma numura vienīgais mērķis ir identificēt pasūtījumu. Pēc piešķiršanas tas vairs netiek mainīts.

Ja jums nav prātā, kolonnas vai sleju kopu, kas varētu kalpot kā primārā atslēga, apsveriet iespēju izmantot kolonnu, kuras datu tips ir AutoNumber. Ja izmantojat datu tipu AutoNumber, programma Access automātiski piešķir vērtību. Šāda identifikators nav faktiskās vērtības; tajā nav faktisko datu, kas raksturotu rindu, kas to veido. Faktiskās vērtības identifikatori ir vispiemērotākais kā primāro atslēgu, jo tie nemainās. Primārā atslēga, kas ir informācija par rindas — tālruņa numuru vai klienta nosaukumu, piemēram, visticamāk, lai mainītu, tā pati faktu informācija var mainīties.

Attēls, kurā redzama tabula Produkti ar primārās atslēgas lauku.

1. iestatīts datu tips AutoNumber bieži kolonnas var ērti izmantot kā primāro atslēgu. Nav divas produkta ID ir vienādas.

Dažos gadījumos, iespējams, vēlēsities izmantot divus vai vairākus laukus, kas kopā tabulas primāro atslēgu. Piemēram, detalizēta informācija par pasūtījumu tabulā, kurā glabājas līnijas elementi attiecīgajam pasūtījumi varētu izmantot divas kolonnas tās primāro atslēgu: pasūtījuma ID un produkta ID. Kad primārajā atslēgā ir izmantotas vairākas kolonnas, to sauc arī par salikto atslēgu.

Produktu pārdošanas datu bāzē var izveidot AutoNumber kolonnu katras tabulas, kas kalpos kā primārā atslēga: ProductID tabulā Products, OrderID pasūtījumu tabula, CustomerID tabulai Customers un SupplierID tabulai piegādātājiem.

Datu vienumu saraksts datu bāzes izveides procesā


Uz lapas sākumu

Tabulas relācijas izveide

Tagad, kad ir sadalītas tabulas datus, jums ir nepieciešams veids, kā šo informāciju atkal apkopot jēgpilnā veidā. Piemēram, šajā formā ir apkopoti dati no vairākām tabulām.

Forma Pasūtījumi

1. Šajā formā iekļautā informācija iegūta no tabulas Klienti...

2.... darbinieku tabulas...

3.... tabulas orders...

4.... tabulas produkti...

5.... … un tabulā pasūtījuma dati.

Access ir relāciju datu bāzu pārvaldības sistēma. Relāciju datu bāzē, varat datus sadalīt atsevišķās tēmas balstītās tabulās. Pēc tam izmantojiet tabulu relācijas, lai apkopotu datus pēc nepieciešamības.

Uz lapas sākumu

Relācijas viens pret daudziem izveide

Aplūkojiet šo piemēru: produktu tabulas Piegādātāji un produkti orders datu bāzes. Piegādātājs var piegādāt jebkādu skaitu produktu. Tā seko, ka jebkura piegādātāja attēlots tabulā piegādātāji, var būt vairāki produkti attēlots tabulā Products. Relācija starp piegādātājiem tabulas un produkti ir relācija viens pret daudziem.

viens pret daudziem koncepcija

Lai attēlotu relācija viens pret daudziem datu bāzes noformējuma, paņemiet primāro atslēgu relācijas pusē "viens" un pievienojiet to kā papildu kolonnu vai kolonnas tabulas relācijas pusē "daudzi". Šajā gadījumā, piemēram, pievienot kolonnu Piegādātāja ID no tabulas Piegādātāji tabulā Products. Programma Access tad var izmantot piegādātāja ID numuru tabulā Products, lai atrastu pareizo piegādātājs katram produktam.

Kolonna piegādātāja ID tabulā produkti tiek dēvēta par ārējās atslēgas. Ārējā atslēga ir citas tabulas primārās atslēgas. Kolonna piegādātāja ID tabulā produkti ir ārējā atslēga, jo tā ir arī primārā atslēga tabulā Piegādātāji.

Datu vienumu saraksts datu bāzes izveides procesā

Jūs pamats pievienošanās saistītajās tabulās, izveidojot pārus primārās atslēgas un ārējās atslēgas. Ja neesat pārliecināts, kurām tabulām būtu jābūt kopējā kolonnu, nosakot relāciju viens pret daudziem nodrošina, ka divas saistītās tabulas patiešām, būs nepieciešama kopīga kolonna.

Uz lapas sākumu

Relācija daudzi pret daudziem izveide

Apsveriet relāciju starp tabulām produkti un pasūtījumi.

Vienā pasūtījumā var būt iekļauti vairāk nekā viens produkts. No otras puses, viens produkts var būt iekļauts daudz pasūtījumu. Tāpēc katru ierakstu tabulā Orders, var būt daudz ierakstu tabulā Products. Un katram ierakstam tabulā Products, var būt daudz ierakstu tabulā pasūtījumi. Šāda veida relāciju sauc relācija daudzi pret daudziem, jo jebkuram produktam var būt vairāki pasūtījumi; un jebkādā secībā, var būt vairāki produkti. Ņemiet vērā, ka atklāt daudzi pret daudziem relācijas starp tabulām, ir svarīgi apsvērt relācijas abas puses.

Divu tabulu tēmas — pasūtījumi un produkti — ir relācija daudzi pret daudziem. Tas rada problēmas. Lai saprastu problēmu, iedomājieties, kas notiks, ja mēģināt izveidot relāciju starp abām tabulām, pievienojot lauku produkta ID tabulai Pasūtījumi. Lai ir vairāk nekā viens produkts vienam pasūtījumam, jums ir vairāk nekā viens ieraksts vienam pasūtījumam tabulā Orders. Jūs varētu atkārtotu pasūtījuma informāciju katrai rindai, kas attiecas uz atsevišķu pasūtījumu — iegūstot efektīva noformējums, kas var izraisīt nepareizus datus. Rodas tā pati problēma, ja ievietojat pasūtījuma ID lauku tabulā Products — jums būtu vairāk nekā vienam ierakstam tabulā Products katram produktam. Kā atrisināt šo problēmu?

Atbilde ir trešās tabulas izveide, ko bieži dēvētu par savienojuma tabulu, kas sadala relāciju daudzi pret daudziem divas relācijas viens pret daudziem. Ievietojiet primārās atslēgas abu tabulu trešā tabula. Rezultātā trešā tabula ieraksta katru gadījumu vai instances relāciju.

relācija daudzi pret daudziem

Katram ierakstam tabulā pasūtījuma dati atbilst vienam pasūtījuma rindas vienumam. Tabulā pasūtījuma dati primārā atslēga sastāv no divām laukiem — ārējās atslēgas no tabulas produkti un pasūtījumi. Izmantojot tikai pasūtījuma ID lauku nedarbojas kā šīs tabulas primārā atslēga, jo vienā pasūtījumā var būt vairāki rindas vienumi. Pasūtījuma ID tiek atkārtots katram pasūtījuma rindas vienumam, lai lauku nesatur unikālās vērtības. Izmantojot tikai produkta ID lauku nedarbojas, jo viens produkts var parādīties daudz dažādu pasūtījumu. Bet kopā, divos laukos vienmēr katram ierakstam veido unikālu vērtību.

Produktu pārdošanas datu bāzē tabulas pasūtījumi un produkti nav saistīti ar otru tieši. Tā vietā tās ir netieši saistītas caur tabulu Pasūtījuma dati. Relācija daudzi pret daudziem starp pasūtījumiem un produktu datu bāzē ir izveidota, izmantojot divas relācijas viens pret daudziem:

  • Tabulā pasūtījumi un pasūtījuma dati ir relācija viens pret daudziem. Katrā pasūtījumā var būt vairāki rindas vienumi, bet katrs rindas vienums ir saistīts tikai ar vienu pasūtījumu.

  • Starp tabulām produkti un pasūtījuma dati ir relācija viens pret daudziem. Katram produktam var būt vairāki rindas vienumi, kas ar to saistīta, bet katrs rindas vienums attiecas tikai uz vienu produktu.

Tabulā pasūtījuma dati, varat noteikt visus produktu noteiktā secībā. Varat arī noteikt visus pasūtījumus noteiktam produktam.

Pēc iekļaujot tabulā pasūtījuma dati, tabulu un lauku saraksts varētu izskatīties apmēram šādi:

Datu vienumu saraksts datu bāzes izveides procesā


Uz lapas sākumu

Ekrānuzņēmums, kurā redzamas pieejamās emocijzīmes un vadīkla, ar ko tās var ieslēgt un izslēgt

Citas relāciju tips ir relācija. Piemēram, pieņemsim, ka jums jāreģistrē īpaša papildinformācija par produktu, jums būs nepieciešams reti vai kas attiecas tikai uz dažiem produktiem. Tā nav nepieciešama informācija par bieži, un tādēļ, ka saglabājot informāciju tabulā Products radīs tukšu lauku katram produktam, uz kuru tas neattiecas, kurus ievietojat atsevišķā tabulā. Tāpat kā tabulā produkti, izmantojiet ProductID kā primāro atslēgu. Relācija starp šo papildu tabulu un tabulu produkti ir relācija viens pret vienu. Katram ierakstam tabulā Product, pastāv viena atbilstošais ieraksts papildu tabulā. Kad noteiktu šādu relāciju, abām tabulām jākopīgo kopējam laukam.

Kad jums atklāt jāveic relāciju datu bāzes, apsveriet, vai varat ievietot datus no divām tabulām kopā vienā tabulā. Ja nevēlaties, lai to, ka kāda iemesla dēļ, iespējams, jo tas radītu daudz brīvas vietas šajā sarakstā norādīti kā varat iekļaut relācijas savā datu bāzē:

  • Ja abām tabulām ir viena un tā pati tēma, jūs, iespējams, varat izveidot relāciju, izmantojot abās tabulās vienu primāro atslēgu.

  • Ja abām tabulām ir dažādas tēmas un dažādas primārās atslēgas, izvēlieties vienu no tabulām (jebkuru) un ievietojiet tās primāro atslēgu otrā tabulā kā ārējo atslēgu.

Relāciju starp tabulām palīdz nodrošināt, ka jums ir pareizās tabulas un kolonnas. Ja pastāv relācija viens pret vienu vai viens pret daudziem, saistītās tabulas ir nepieciešams kopīgot bieži kolonna vai kolonnas. Ja pastāv relācija daudzi pret daudziem, trešā tabula ir nepieciešams, lai iekļautu relāciju.

Uz lapas sākumu

Precizēšanas

Kad esat tabulu, lauku un relācijas, jums ir nepieciešams, būtu izveide un aizpildītu jūsu tabulas ar parauga datiem, un mēģiniet strādāt ar informāciju: vaicājumu izveidi, pievienojot jaunus ierakstus, un tā tālāk. Darot tas palīdz izcelt potenciālās problēmas — piemēram, iespējams, jāpievieno kolonna, kurā esat aizmirsis, lai ievietotu noformējuma posmā vai tabula, kurā vajadzētu sadalīt var būt divi tabulās, lai noņemtu dublēšanas.

Redzētu, vai varat izmantot datu bāzes saņemt atbildes, ko vēlaties. Izveidojiet aptuvenu melnrakstus formās un atskaitēs un pārbaudiet, vai tajās paredzēts datu tiek parādīti. Meklējiet nevajadzīgas datu dublēšanas un, kad atrodat, mainiet datu bāzi, lai to novērstu.

Kā jūs izmēģināt sākotnējo datu bāzi, jums visdrīzāk atklāj uzlabojumi. Lūk, dažas lietas, lai meklētu:

  • Vai neesat aizmirsis kādu kolonnu? Ja jā, šī informācija iederas esošajās tabulās? Ja tā ir informācija par kaut ko citu, iespējams, ir jāizveido jauna tabula. Izveidot kolonnu katram datu vienumam ir jāseko. Ja informāciju nevar aprēķināt no citām kolonnām, tas ir iespējams, ka jums būs nepieciešams jaunu kolonnu.

  • Ir nevajadzīgas visas kolonnas, jo tie var aprēķināt, izmantojot esošus laukus? Ja vienuma informāciju no citiem esošās kolonnas var aprēķināt — atlaidi aprēķina no mazumtirdzniecības cenas, piemēram — tas parasti ir labāk tikai to darīt, un izvairītos no izveidotu jaunu kolonnu.

  • Tiek atkārtoti ievadāt informācijas dublikātu kādā no tabulām? Ja tā ir, jūs, iespējams, vajadzēs sadalīt tabulas divas tabulas, kurās ir relācija viens pret daudziem.

  • Vai jums ir tabulas ar daudziem laukiem, ierobežots ierakstu skaits un daudzi tukši lauki atsevišķiem ierakstiem? Ja tā ir, apdomājiet pārveidot tabulu tā, lai tajā būtu mazāk lauku un vairāk ierakstu.

  • Katrs datu vienums ir sadalīts mazākais noderīgs daļas? Ja nepieciešams atskaiti, kārtot, meklēt vai aprēķinātu informācijas elementā, novietojiet šo vienumu atsevišķā kolonnā.

  • Vai katrā kolonnā ir ietverts fakts par tabulas tēmu Ja kolonna nav iekļauta informācija par tabulas tēmu, tai jābūt citā tabulā.

  • Ir visas relācijas starp tabulām, kas attēlo, biežāk izmantotie lauki vai trešo tabulu? Relācijas viens pret vienu un viens pret daudziem pieprasīt kopējās kolonnas. Relācijas daudzi pret daudziem nepieciešama trešās tabulas.

Rafinēšana tabulas produkti

Pieņemsim, ka katram produktam produktu pārdošanas datu bāzē ietilpst vispārīgi kategoriju, piemēram, dzērieni, garšvielas vai jūras. Tabulā produkti var tikt iekļauts lauks, kurā redzama katra produkta kategorija.

Pieņemsim, ka pēc izpētes un precizēšanas datu bāzi, jūs nolemjat saglabāt kategorijas kopā ar tās nosaukuma apraksts. Ja kategorijas apraksts lauka pievienošana tabulai produkti, jums ir jāatkārto katrā kategorijā aprakstā katram produktam, kas ietilpst kategorijā — tas nav labs risinājums.

Labākais risinājums ir Kategorijas pārveidot par jaunu tēmu datu bāzes, lai izsekotu, izmantojot savu tabulu un savu primāro atslēgu. Pēc tam varat pievienot primārā atslēga tabulas kategorijas tabulai produkti kā ārējo atslēgu.

Tabulām kategorijas un produkti ir relācija viens pret daudziem: kategorijas var būt iekļauti vairāki produkti, bet produkts var būt iekļauti tikai vienas kategorijas.

Kad pārskatāt izveidotās tabulas struktūras, jābūt ieslēgtam meklē atkārtotām grupām. Piemēram, apsveriet iespēju tabula, kurā ir šādas kolonnas:

  • Produkta ID

  • Nosaukums

  • Produkta ID1

  • Name1

  • Produkta ID2

  • Name2

  • Produkta ID3

  • Name3

Šeit katrs produkts ir atkārtota kolonnu grupa, kas atšķiras no citām tikai, pievienojot skaitli kolonnas nosaukuma beigās. Ja redzat šādi numurētas kolonnas, ieteicams pārskatīt izveidoto datu bāzi.

Šāda projekta ir vairāki trūkumi. Iesācējiem pats tā liek augšējā robeža uz produktu skaitu. Tiklīdz pārsniedzat šo ierobežojumu, tabulas struktūru, kas ir galvenās administratīvās uzdevums ir jāpievieno jauna kolonnu grupa.

Vēl viena problēma ir piegādātāji, kuriem ir mazāk nekā maksimālais produktu skaits atkritumu vietu, jo papildu kolonnas būs tukšas. Ļoti nopietni problēmu ar šādu dizains ir, ka tas padara daudzus uzdevumus grūti veiktu, piemēram, kārtošanu vai indeksēšanu tabulas pēc produkta ID vai nosaukuma.

Ja redzat atkārtotu grupu pārskatiet cieši ar skatu uz sadalīšana divos tabulas noformējuma. Iepriekšējā piemērā būtu ieteicams izmantot divas tabulas, vienu piegādātājiem un vienu produktiem, kuras saista piegādātāja ID.

Uz lapas sākumu

Normalizēšana kārtulu lietošanas

Jūs varat izmantot datu normalizēšana kārtulas (dažreiz sauktas par normalizēšana kārtulām) kā nākamo darbību savā datu bāzē. Izmantojiet šīs kārtulas, lai pārliecinātos, vai tabulas ir strukturētas pareizi. Kārtulu lietošana datu bāzes noformējuma process tiek dēvēta par normalizēšanu datu bāzi vai tikai normalizēšana.

Normalizēšana ir vispiemērotākā, pēc tam, kad ir iekļauti visi datu vienumi un esat nonācis iepriekšēju noformējums. Ideja ir, lai palīdzētu nodrošināt, ka jums ir sadalīta datu vienumu atbilstošajās tabulās. Kādas normalizēšana nevar veikt ir pārliecinieties, ka esat atlasījis pareizo datu vienumus sākas ar.

Lietot kārtulu pēc kārtas, katrā darbībā pārliecinoties saņemtā vienā, ko sauc par "parasta forma." jūsu dizains Piecas parasta forma plaši pieņemts — pirmā parastā forma ar piektajā parastā forma. Šajā rakstā tiek izvērsta pirmie trīs veidi, jo tie visi, kas nepieciešams lielākajai daļai datu bāzes noformējumu.

Pirmā parastā forma

Pirmā parastā forma norāda, ka pie katras tabulas rindu un kolonnu krustošanās, pastāv vienu vērtību, un nekad vērtību saraksts. Piemēram, nevar būt lauks ar nosaukumu cena, kurā tiek ievietotas vairākas cenas. Ja domājat par katru rindas un kolonnas krustpunktu kā šūnu, katrai šūnai var būt tikai viena vērtība.

Otrā parastā forma

Otrā parastā forma pieprasa katram bez atslēgas kolonna ir pilnībā atkarīgās visas primārās atslēgas, nevis tikai taustiņu daļa. Ja jums ir primārā atslēga, kas sastāv no vairāk nekā viena kolonna, tiek lietota šī kārtula. Piemēram, pieņemsim, ka jums ir tabula ar šādām kolonnām, kur pasūtījuma ID un produkta ID veido primāro atslēgu:

  • Pasūtījuma ID (primārā atslēga)

  • Produkta ID (primārā atslēga)

  • Produkta nosaukums

Šo dizainu pārkāptas otrā parastā forma, jo produkta nosaukums ir atkarīgs no produkta ID, bet ne uz pasūtījuma ID, tāpēc nav atkarīga no visas primārās atslēgas. Produkta nosaukums ir jānoņem no tabulas. Tas iederas citā tabulā (produkti).

Trešā normālā forma

Trešā normālā forma pieprasa, ne tikai katra kolonna bez atslēgas ir atkarīga no visas primārās atslēgas, bet visas kolonnas bez atslēgām ir atkarīgas no otra.

Vēl viens veids, kā sakot, tas ir, ka katra atslēgas kolonna ir jābūt atkarīgās primārā atslēga un nekas, bet primārā atslēga. Piemēram, pieņemsim, ka jums ir tabula, kurā ir šādas kolonnas:

  • Produkta ID (primārā atslēga)

  • Nosaukums

  • SRP

  • Atlaide

Pieņemsim, ka atlaide ir atkarīga no ieteicamās mazumtirdzniecības cenas (SRP). Šajā tabulā pārkāpj trešā parastā forma, jo kolonna bez atslēgas atlaidi, ir atkarīgs no citas kolonnas bez atslēgas (SRP). Kolonnas neatkarības nozīmē, ka, jums jābūt iespējai mainīt jebkuru kolonnu bez atslēgas, neietekmējot citas kolonnas. Ja maināt vērtību laukā SRP, attiecīgi mainās atlaide, tādējādi pārkāpjot šo kārtulu. Šajā gadījumā atlaide ir jāpārvieto uz citu tabulu, kas ir ievadīta SRP par.

Uz lapas sākumu

Piezīme.: Mašīntulkošanas atruna. Šo rakstu ir tulkojusi datorsistēma bez cilvēka iejaukšanās. Microsoft piedāvā šos mašīntulkojumus, lai palīdzētu angliski nerunājošajiem lietotājiem izmanot saturu par Microsoft produktiem, pakalpojumiem un tehnoloģijām. Tā kā šis raksts ir mašīntulkots, tajā var būt leksikas, sintakses un gramatikas kļūdas.

Paplašiniet savas Office prasmes
Iepazīties ar apmācību
Esiet pirmais, kas saņem jaunās iespējas
Pievienoties Office Insider programmai

Vai šī informācija bija noderīga?

Paldies par jūsu atsauksmēm!

Paldies par atsauksmēm! Šķiet, ka varētu būt noderīgi sazināties ar kādu no mūsu Office atbalsta aģentiem.

×