<!-- <!DOCTYPE chapter PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd"> --> <chapter id="building-databases"> <title >Bygga enkla databaser</title> <sect1 id="building-intro"> <title >Inledning</title> <para >För att lära dig grunderna i &kexi;, skulle du först kunna bygga en enkel databas som utnyttjar de mest grundläggande av &kexi;s funktioner. För att förenkla, täcks inte ämnet avancerad databaskonstruktion här. </para> <para >Starta genom att skapa en ny tom <emphasis >Telefonkatalog</emphasis >. </para> <para >När du har ett tomt nytt databasprojekt, utför följande steg:</para> <procedure> <step ><para >Konstruera databastabeller. Läs <xref linkend="designing-tables"/>.</para ></step> <step ><para >Skriva in data i tabeller. Läs <xref linkend="entering-data-into-tables"/>.</para ></step> <step ><para >Konstruera databasfrågor. Läs <xref linkend="designing-queries"/>.</para ></step> <step ><para >Konstruera formulär. Läs <xref linkend="designing-forms"/>.</para ></step> <step ><para >Använda formlär för att mata in data. Läs <xref linkend="entering-data-using-forms"/>.</para ></step> </procedure> </sect1> <sect1 id="designing-tables"> <title >Konstruera databastabeller</title> <para >Först lägger vi till två tabeller i din databas: <emphasis >personer</emphasis > och <emphasis >telefonnummer</emphasis >. Det är exakt samma tabeller som beskrivs i kapitlet <link linkend="database-and-spreadsheet" >Databaser och kalkylblad</link >. En layout för <emphasis >personer</emphasis > hittar du i avsnittet <link linkend="data-integrity-and-validity" >Dataintegritet och giltighet</link > i det kapitlet. </para> <procedure> <step> <para >Välj <menuchoice ><guimenu >Infoga</guimenu > <guimenuitem >Tabell...</guimenuitem ></menuchoice > i menyraden. Du kan också använda knappen <guilabel >Skapa objekt: tabell</guilabel > i <link linkend="project-navigator-pane" >Projektnavigeringens verktygsrad</link >. </para> </step> <step> <para >Fönstret för tabellkonstruktion visas. Om du tittar längst upp i konstruktionsfönstret ser du att &kexi; föreslår ett generellt namn som <emphasis >mall</emphasis > för den nya tabellen. Tabellkonstruktionen har inte sparats ännu så du kan tilldela ett lämpligare namn senare. Dessutom, av samma orsak, syns inte tabellnamnet ännu i <link linkend="project-navigator-pane" >Projektnavigeringen</link >. </para> </step> </procedure> <sect2 id="design-window"> <title >Fönstret för tabellkonstruktion</title> <itemizedlist> <title >Fönstret för tabellkonstruktion har följande kolumner:</title> <listitem ><para ><guilabel >PN</guilabel >: Primär nyckel. </para ></listitem> <listitem ><para ><guilabel >Fältrubrik</guilabel >: Fältnamnet (med andra ord, kolumnnamnet) som kommer att vara synligt vid inmatning av data. </para ></listitem> <listitem ><para ><guilabel >Datatyp</guilabel >: en kombinationsruta som innehåller en lista med datatyper, som gör det möjligt att ange en huvudregel för inmatning av data i ett givet fält. Om till exempel datatypen heltal anges för ett fält, kan inte användare av databasen skriva in en bokstav i fältet. </para ></listitem> <listitem ><para ><guilabel >Kommentarer</guilabel >: Här kan du skriva in vilken information som helst som är användbar för att förstå vad det givna fältet tillhandahålls för. Den här extra texten sparas i tabellkonstruktionen och är bara synlig i konstruktionsläge. </para ></listitem> </itemizedlist> <para >I fönstret <guilabel >Tabellkonstruktion</guilabel >, motsvarar varje rad ett enda fält i tabellen. Du märker att du är i <emphasis >konstruktionsläge</emphasis > eftersom knappen <guibutton >Byt till konstruktionsvy</guibutton > är markerad i &kexi;s huvudverktygsrad. </para> <procedure> <title >Konstruera tabellen <emphasis >Personer</emphasis ></title> <step ><para >Klicka på cellen i kolumnen <guilabel >Fältrubrik</guilabel > i första raden och skriv in <emphasis >namn</emphasis > som fältrubrik. </para> <itemizedlist> <title >Anmärkningar om fältnamn och rubriker</title> <listitem ><para >Varje tabellfält måste ha ett namn och en rubrik, de kan inte vara tomma. </para ></listitem> <listitem ><para >Fältnamnet är ett ord som används av databasen, oftast inte synlig för användare av databasprogrammet. Namnet får inte innehålla specialtecken (som ±, ¶, Ü) eller mellanslag. Namnet får bara innehålla bokstäver, siffror och understreck "_". Använd det senare istället för mellanslag eller streck. </para ></listitem> <listitem ><para >Fältnamn måste inledas med en bokstav eller ett understreck "_", aldrig med en siffra. </para ></listitem> <listitem ><para >Det spelar ingen roll om du använder små eller stora bokstäver. I &kexi;s databaser är "Personer" samma sak som "personer". </para ></listitem> <listitem ><para >Fältrubriken tillåter å andra sidan att du skriver in vilka bokstäver och specialtecken som helst. Den visas för användaren av databasprogrammet. </para ></listitem> </itemizedlist> </step> <step> <itemizedlist> <title >Skriv in följande fält i tabellkonstruktionen på samma sätt:</title> <listitem ><para ><guilabel >efternamn</guilabel ></para ></listitem> <listitem ><para >gatuadress</para ></listitem> <listitem ><para >gatunummer</para ></listitem> <listitem ><para >postort</para ></listitem> </itemizedlist> </step> <step ><para >Alla ovanstående fält utom <emphasis >gatunummer</emphasis > har typen text. Ändra fälttypen för <emphasis >gatunummer</emphasis > till <emphasis >heltal</emphasis >. För att göra det, klicka på en cell i kolumnen <emphasis >Datatyp</emphasis >, raden <emphasis >gatunummer</emphasis > och klicka på kombinationsrutans knapp. Du kan också trycka på <keycombo ><keycap >F4</keycap ></keycombo > eller <keycombo action="simul" >&Alt;<keycap >neråtpil</keycap ></keycombo >. Listan med datatyper visas. Välj typen <emphasis >Heltal</emphasis >. </para ><para >Från och med nu accepterar fältet <emphasis >gatunummer</emphasis > bara heltal. </para ></step> <!-- TODO setting additional properties: e.g. caption --> <step ><para >Konstruktionen av tabellen <emphasis >Personer</emphasis > är klar. Klicka på knappen <guibutton >Byt till datavy</guibutton > på verktygsraden för att avsluta konstruktionen och byta till datavy för tabellen. Det gör det möjligt att skriva in data i tabellen. </para ></step> <step ><para >Eftersom konstruktionen ännu inte har sparats i databasen, visas dialogfönstret <guibutton >Spara objekt som</guibutton >. Du måste ange den nya tabellens namn. </para> <para >&kexi; föreslår ett generellt namn som <emphasis >Tabell1</emphasis >. För att ändra namnet, skriv in <emphasis >Personer</emphasis > i fältet <emphasis >Rubrik:</emphasis > och tryck på returtangenten eller klicka på knappen <guibutton >Ok</guibutton >. Fältet <guilabel >Rubrik</guilabel > används för att visa tabellen för slutanvändare av databasen, t.ex. som ett formulär. I motsats till namnet kan rubriken innehålla vilka tecken som helst inklusive mellanslag och specialtecken. </para> <para >Observera att genom att fylla i fältet <guilabel >Rubrik</guilabel > fylls fältet <guilabel >Namn</guilabel > automatiskt i. För bekvämlighets skull, uppfylls regeln om att bara använda bokstäver, siffror och tecknet "_". Du kan ändra innehållet i fältet <guilabel >Namn</guilabel > om du vill. </para ></step> <step ><para >Du blir tillfrågad om att gå med på att automatiskt lägga till en primär nyckel i tabellen. Klicka på knappen <guibutton >Lägg till primär nyckel</guibutton > för att fortsätta. </para ></step> <step ><para >Tabellen <emphasis >Personer</emphasis > har skapats och öppnats i datavyn. Dess namn visas i <guilabel >projektnavigeringsrutan</guilabel >. </para ></step> <step ><para >Skapa tabellen <emphasis >telefonnummer</emphasis > på liknande sätt som tabellen <emphasis >personer</emphasis >. </para ></step> <step ><para >Skapa fältet <emphasis >person</emphasis > av typen <emphasis >Heltal</emphasis > och <emphasis >telefon</emphasis > av typen <emphasis >Text</emphasis >. Använd inte heltalstypen här, eftersom telefonnummer kan ha många olika former och prefix. </para ></step> <step ><para >Klicka på knappen <guibutton >Byt till datavy</guibutton > på verktygsraden och skriv in rubriken <emphasis >Telefon</emphasis > för tabellen. Tillåt att &kexi; automatiskt skapar en primär nyckel, som för den tidigare tabellen. </para ></step> </procedure> </sect2> </sect1> &enteringdataintotables; &querydesigning; &designingforms; &enteringdatausingforms; </chapter>