You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
309 lines
8.6 KiB
309 lines
8.6 KiB
<!--
|
|
<!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
|
|
> 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 <guilabel
|
|
>Byt till datavy</guilabel
|
|
> 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>
|
|
|