<!--
  <!DOCTYPE chapter PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd">
-->

<chapter id="building-databases">
<title
>Lihtsate andmebaaside loomine</title>
<sect1 id="building-intro">
<title
>Sissejuhatus</title>
<para
>Kexi põhialuste tundmaõppimiseks tuleks esmalt luua lihtne andmebaas, mille juures saab ära kasutada kõige põhilisemaid Kexi omadusi. Et asjad lihtsamini selgeks saaksid, ei käsitleta siinkohal andmebaaside disaini kõiki üksikasju. </para>
<para
>Alustuseks loo uus tühi <emphasis
>telefoniraamat</emphasis
>. </para>
<itemizedlist>
<title
>Kui sul on nüüd uus tühi andmebaasiprojekt, võta ette järgmised sammud:</title>
<listitem
><para
>Andmebaasi tabelite kirjeldamine </para
></listitem>
<listitem
><para
>Andmete sisestamine tabelitesse </para
></listitem>
<listitem
><para
>Andmebaasipäringute kirjeldamine </para
></listitem>
<listitem
><para
>Vormide kujundamine </para
></listitem>
</itemizedlist>
</sect1>

<sect1 id="designing-tables">
<title
>Andmebaasi tabelite kirjeldamine</title>
<para
>Kõigepealt pane tähele, et sinu andmebaasis on kaks tabelit: <emphasis
>isikud</emphasis
> ja <emphasis
>telefoninumbrid</emphasis
>. Need on samad tabelid, mida kirjeldab osa <link linkend="database-and-spreadsheet"
>Andmebaas ja arvutustabel</link
>. Tabeli <emphasis
>Isikud</emphasis
> ülesehitust tutvustab sama peatüki osa <link linkend="data-integrity-and-validity"
>Andmeterviklus ja -õigsus</link
>. </para>
<itemizedlist>
<listitem>
<para
>Vali menüükäsk <menuchoice
><guimenu
>Lisamine</guimenu
><guimenuitem
>Tabel</guimenuitem
> </menuchoice
>. Selle asemel võib kasutada ka nuppu <guilabel
>Loo objekt: tabel</guilabel
>, mille leiab <link linkend="project-navigator-pane"
>projekti navigaatori tööriistaribalt</link
>. </para>
</listitem>
<listitem>
<para
>Ilmub tabeli kirjeldamise aken. Selle ülaosas märkad, et Kexi on andnud sinu uuele tabelile üldise nime, näiteks <emphasis
>mall</emphasis
>. Tabel ei ole veel aga salvestatud, nii et hiljem saad sellele anda sobivama nime. Samal põhjusel ei ole ka tabeli nime veel näha <link linkend="project-navigator-pane"
>projekti navigaatoris</link
>. </para>
</listitem>
</itemizedlist>


<sect2 id="design-window">
<title
>Tabeli kirjeldamise aken</title>
<itemizedlist>
<title
>Tabeli kirjeldamise aken koosneb järgmistest veergudest:</title>
<listitem
><para
><emphasis
>PK</emphasis
> - primaarvõti. </para
></listitem>
<listitem
><para
><emphasis
>Väkja nimi</emphasis
> - välja ehk veeru nimi, mis on näha andmete sisestamise ajal. </para
></listitem>
<listitem
><para
><emphasis
>Andmetüüp</emphasis
> - liitkast erinevate andmetüüpide nimekirjaga, mis võimaldab valida antud väljale sisestatavate andmete põhireegli. Kui selleks on näiteks täisarv, siis ei saa andmebaasi kasutaja sisestada antud väljale tähti. </para
></listitem>
<listitem
><para
><emphasis
>Kommentaarid</emphasis
> - siia saab lisada mis tahes infot, mis aitab mõista, milleks antud väli on mõeldud. See lisatekst salvestatakse koos tabeli kirjeldusega ja seda näeb ainult kirjeldamisrežiimis. </para
></listitem>
</itemizedlist>
<para
><emphasis
>Tabeli kirjekdamise</emphasis
> aknas vastab iga rida tabeli ühele väljale. Seda, et viibid parajasti <emphasis
>kujundamisrežiimis</emphasis
>, näitab &kexi; peamisel tööriistaribal sisse lülitatud nupp <emphasis
>Lülitu kujundusvaatele</emphasis
>. </para>

<itemizedlist>
<title
>Tabeli <emphasis
>Isikud</emphasis
> kirjeldamise alustamiseks:</title>
<listitem
><para
>Klõpsa esimeses reas lahtrile veerus <emphasis
>Välja nimi</emphasis
> ja määra välja välja nimeks <emphasis
>nimi</emphasis
>. </para>
<itemizedlist>
<title
>Märkus väljanimede kohta</title>
<listitem
><para
>Igal väljal peab olema nimi, see ei saa puududa. </para
></listitem>
<listitem
><para
>Väljanimed ei tohi sisaldada erimärke (näiteks ±, ¶, Ü) ega tühikut. Nimed võivad sisaldada ainult tähti, arve ja alakriipsu &quot;_&quot;. Viimast on hea kasutada näiteks tühikute või side/mõttekriipsude asemel. </para
></listitem>
<listitem
><para
>Väljanimed peavad algama tähe või alakriipsuga &quot;_&quot;, aga mitte arvuga. </para
></listitem>
<listitem
><para
>Pole vahet, kas kasutad suur- või väiketähti. &kexi; jaoks on andmebaasi nimi &quot;Isikud&quot; samaväärne nimega &quot;isikud&quot;. </para
></listitem>
</itemizedlist>
</listitem>
<listitem>
<itemizedlist>
<title
>Samamoodi sisesta tabelisse järgmised väljad:</title>
<listitem
><para
><guilabel
>perekonnanimi</guilabel
></para
></listitem>
<listitem
><para
>tänav</para
></listitem>
<listitem
><para
>majanumber</para
></listitem>
<listitem
><para
>linn</para
></listitem>
</itemizedlist>
</listitem>
<listitem
><para
>Kõigi mainitud väljade, välja arvatud <emphasis
>majanumber</emphasis
>, tüübiks on <emphasis
>tekst</emphasis
>. Määra välja <emphasis
>majanumber</emphasis
> tüübiks <emphasis
>täisarv</emphasis
>. Selleks klõpsa lahtril veerus <emphasis
>Andmetüüp</emphasis
> ja reas <emphasis
>majanumber</emphasis
> ning seejärel andmetüüpide nimekirja sisaldaval nupul (sama tulemuse saab vajutamisega klahvile <keycombo
><keycap
>F4</keycap
></keycombo
> või <keycombo action="simul"
>&Alt;<keycap
>Nool alla</keycap
></keycombo
>). Ilmub andmetüüpide nimekiri. Vali sealt <emphasis
>Täisarv</emphasis
>. </para
><para
>Edaspidi saab väljale <emphasis
>majanumber</emphasis
> sisestada ainult arve. </para
></listitem>
<!-- TODO setting additional properties: e.g. caption -->
<listitem
><para
>Tabel <emphasis
>Isikud</emphasis
> ongi nüüd kirjeldatud. Klõpsa tööriistaribal nupule <guilabel
>Lülitu andmevaatele</guilabel
>, millega saad lõpetada kirjeldamise ja näha tabelit andmevaates. See võimaldab sisestada tabelisse andmeid. </para
></listitem>
<listitem
><para
>Tabel ei ole veel andmebaasi salvestatud, mistõttu ilmub dialoog &quot;Objekti salvestamine&quot;. Siin tuleb uuele tabelile nimi anda. </para
><para
>&kexi; pakub omalt poolt üldist nime, näiteks <emphasis
>Tabel1</emphasis
>. Selle muutmiseks kirjuta <emphasis
>Isikud</emphasis
> väljale <emphasis
>Pealdis</emphasis
> ja vajuta klahvi <keycombo
> <keycap
>Enter</keycap
></keycombo
> või klõpsa nupule <guilabel
>OK</guilabel
>. Välja <emphasis
>Pealdis</emphasis
> sisu kasutatakse tabeli näitamisel andmebaasi kasutajale näiteks vormi korral. Erinevalt nimest võib pealdis sisaldada igasuguseid märke, kaasa arvatud tühikud ja erimärgid. </para
><para
>Pane tähele, et välja <emphasis
>Pealdis</emphasis
> täitmisel täidetakse automaatselt ka väli <emphasis
>Nimi</emphasis
>. Sinu elu kergendamiseks peetakse kinni reeglist, et nimes saab kasutada ainult tähti, arve ja märki &quot;_&quot;. Soovi korral võid muidugi välja <emphasis
>Nimi</emphasis
> sisu muuta. </para
></listitem>
<listitem
><para
>Sinu käest päritakse, kas soovid tabelile automaatselt lisada primaarvõtme. Jätkamiseks klõpsa nupule <guilabel
>Lisa primaarvõti</guilabel
>. </para
></listitem>
<listitem
><para
>Nüüd ongi tabel <emphasis
>Isikud</emphasis
> loodud ja avatud andmevaates. Selle nime näeb ka projekti navigaatori paneelil. </para
></listitem>
<listitem
><para
>Loo tabel <emphasis
>telefoninumbrid</emphasis
> samamoodi, nagu lõid tabeli <emphasis
>isikud</emphasis
>. </para
></listitem>
<listitem
><para
>Määra välja <emphasis
>isik</emphasis
> tüübiks <emphasis
>Täisarv</emphasis
> ja välja <emphasis
>telefon</emphasis
> tüübiks <emphasis
>Tekst</emphasis
>. Ära kasuta arvutüüpi, sest telefoninumbrid võivad esineda väga mitmesugusel kujul ja väga erinevate eesliidetega. </para
></listitem>
<listitem
><para
>Klõpsa tööriistaribal nupule <guilabel
>Lülitu andmevaatele</guilabel
> ja määra tabeli pealdiseks <emphasis
>Telefonid</emphasis
>. Nagu eelmise tabeli korral, luba Kexil automaatselt luua primaarvõti. </para
></listitem>
</itemizedlist>

</sect2>

</sect1>

</chapter>

