OpenOffice.org Base 3.2
5. TABULAS
5.1. Tabulas struktūras veidošana noformējuma skatā
Tabulās (table) tiek uzglabāta un attēlota datu bāzē glabājamā informācija.
Lai raksturotu tabulu veidošanas iespējas, jāatzīmē tas, ka Base nelimitē ne ierakstu, ne lauku skaitu tabulā. Tās vienīgais nosacījums ir datu ierakstu izmēra limits dažādiem datu tipiem (sk. Field Type kolonnā pieejamo datu tipu sarakstu). Jāņem vērā, ka datubāze ar ļoti lielām tabulām būs nepraktiska lietošanā, un tās apstrāde datoram prasīs daudz resursu.
Pieņemsim, ka jāizveido divas tabulas ar šādu struktūru.
4.1.1. Noformējuma skata atvēršana
Lai atvērtu tabulas noformējuma skatu, izpilda kādu no darbībām:
- ja tabula nav izveidota, tad izvēlas navigācijas rūtī tabulu objektus (Tables), uzdevumu rūtī izsaucot tabulas izveidi ar uzdevumu Create Table in Design View... vai arī izmantojot jaunu datubāzes objektu ievietošanas pogu standarta rīkjoslā, no saraksta izvēloties Table Design...;
- ja tabula ir izveidota, bet nav atvērta, tad lieto tabulas konteksta izvēlnes komandu Edit vai arī datubāzes objekta konteksta rīkjoslas rediģēšanas pogu Edit.
4.1.2. Lauku veidošana un tipu norādīšana
Lai izveidotu laukus un norādītu to tipus, tabulas Table1 dokumentā veic šādas darbības:
- kolonnā Field Name ievada lauka vārdu, piemēram, Valsts:
Ieteicams lauka nosaukumu veidot kā nepārtrauktu simbolu virkni, kas sastāv no latīņu alfabēta burtiem un cipariem, kā arī simbola „_”. |
- piespiež taustiņu vai vai izpilda klikšķi kolonnā Field Type;
- kolonnas Data Type sarakstā izvēlas atbilstošo datu tipu, piemēram, Text:
Kolonnas Field Type saraksts satur dažādus datu tipus. Blakus vienkāršajam nosaukumam iekavās ir atrodams SQL valodas datu tipa atslēgvārds:
- Image (LONGVARBINARY) – attēlu, video un liela izmēra datņu glabāšanai domāts lauks;
- Binary (VARBINARY) – datņu glabāšanai domāts lauks;
- Memo (LONGVARCHAR) – liela apjoma teksts;
- Number (NUMERIC) – skaitļi;
- Decimal (DECIMAL) – decimālskaitļi;
- Integer (INTEGER) – veseli skaitļi;
- Real (REAL) – reālskaitļi;
- Text (VARCHAR, VARCHAR_IGNORECASE) – teksts;
- Yes/No (BOOLEAN) – jā/nē patiesumvērtības;
- Date (DATE) – datums;
- Time (TIME) – laiks;
- Date/Time (TIMESTAMP) – laika zīmogs;
- piespiež taustiņu vai vai izpilda klikšķi kolonnā Description, kurā var ievadīt paskaidrojošu informāciju par lauku;
- ja nepieciešams, tad precizē lauka īpašības, piemēram, iestata lauka izmēru teksta laukam, piešķir noklusēto vērtību (datu ievadei);
- piespiež taustiņu vai vai izpilda klikšķi kolonnā Field Name un turpina ievadīt nākamo lauku vārdus, norādot to tipus, piemēram, iegūstot šādu tabulu:
4.1.3. Tabulas struktūras saglabāšana
Lai saglabātu izveidoto tabulas struktūru, saglabā tabulu, izpildot kādu no darbībām:
- piespiež ātrās piekļuves rīkjoslas pogu (Save);
- lieto dokumenta cilnes konteksta izvēlnes komandu Save.
Saglabājot tabulu pirmo reizi, atveras dialoglodziņš Save As, kurā:
- tekstlodziņā Table Name ievada tabulas nosaukumu, piemēram, Marsruti:
- piespiež pogu .
Gadījumā, ja tabulai nav izveidots primārās atslēgas lauks, atveras brīdinājuma dialoglodziņš, kurā tiek paziņots, ka nav definēta primārā atslēga (No primary key). Dialoglodziņā ir norādīts, ka ir obligāti nepieciešama vai nu primārā atslēga, vai unikāls ierakstu indekss, lai veiktu ierakstus šajā tabulā. Par unikālu ierakstu indeksu automātiski tiek uzskatīts pirmais tabulas lauks ar vesela skaitļa (Integer) datu tipu, kura vērtība pie katra jauna ieraksta tiek automātiski palielināta par vienu soli (AutoValue). Dialoglodziņa lejasdaļā tiek uzdots jautājums, vai veidot primāro atslēgu (Should a primary key be created now?):
- ļauj veidot primāro atslēgu, brīdinājuma dialoglodziņā piespiežot pogu .
4.1.4. Primārās atslēgas definēšana
Primārā atslēga (primary key) ir lauks, kas viennozīmīgi identificē datubāzes ierakstu. Primārās atslēgas laukā dati ir unikāli, t.i., nav divu ierakstu ar vienādām primāro atslēgu vērtībām.
Primārās atslēgas lauks var tikt definēts:
- veidojot tabulu noformējuma skatā un pirmo reizi saglabājot tabulu;
- veidošanas vai modificēšanas laikā norādot, kurš būs primārās atslēgas lauks.
Ja primārā atslēga ir definēta, tad, atverot izveidotu tabulu, piemēram, Marsruti, noformējuma skatā, dokumentam var būt šāds izskats:
Jāatzīmē, ka:
- pirms primārās atslēgas lauka, kuram pēc noklusējuma tiek piešķirts nosaukums ID, ir redzama primārās atslēgas pazīme ;
- parasti primārās atslēgas lauka nosaukums ir ID, bet to var arī veidot no tabulas vārda, kam pievienoti burti ID, piemēram, Marsruta_ID:
- ja primārās atslēgas lauka datu tips ir vesels skaitlis (Integer) ar aktivizētu automātisko vērtību palielināšanu (AutoValue), tad katra nākamā ieraksta primārās atslēgas lauka vērtība parasti ir par vienu lielāka nekā iepriekšējā.
Apskatīsim, kā primāro atslēgu var definēt tabulas struktūras veidošanas laikā vai pēc tās saglabāšanas. Piemēram, attēlā redzama atvērta iepriekš saglabāta tabula Marsruti, kurai nav definēta primārā atslēga:
Lai lietotājs definētu primāro atslēgu, tam ir jāaiziet pirms izvēlētā lauka definīcijas sākuma rindas un jāveic klikšķis ar labo peles taustiņu, tad no konteksta izvēlnes jāizvēlas primārās atslēgas aktivizēšana (Primary Key):