From 8362bf63dea22bbf6736609b0f49c152f975eb63 Mon Sep 17 00:00:00 2001 From: tpearson Date: Wed, 20 Jan 2010 01:29:50 +0000 Subject: Added old abandoned KDE3 version of koffice git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/applications/koffice@1077364 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- doc/kexi/building.docbook | 248 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 248 insertions(+) create mode 100644 doc/kexi/building.docbook (limited to 'doc/kexi/building.docbook') diff --git a/doc/kexi/building.docbook b/doc/kexi/building.docbook new file mode 100644 index 00000000..9b900c77 --- /dev/null +++ b/doc/kexi/building.docbook @@ -0,0 +1,248 @@ + + + +Building Simple Databases + +Introduction + +To learn the basics of &kexi;, you could build a simple database +utilizing most elementary &kexi;'s features. To make things simpler, +advanced database design topics will not be covered here. + + +Start by creating a new empty Phone Book. + + + +Having a new empty database project, perform the following steps: + +Design database tables. Read . +Enter data into tables. Read . +Design database queries. Read . +Design forms. Read . +Use forms to enter data. Read . + + + + +Designing Database Tables + +First, there will be two tables added to your database: +persons and phone_numbers. +These are exactly the same tables as described in chapter Database and spreadsheet. +A layout for Persons can be found in section +Data integrity and validity +in that chapter. + + + + + +Select InsertTable + from the Menubar. You can also use the button Create +object: table on the Project +Navigator's toolbar. + + + + +The Table Designer's window will appear. Looking at the top of designer's window +you will notice that &kexi; proposed you a generic name like +template for the new table. The table design is not saved +yet so you will be able to assign more proper name later. Moreover, because of +the same reason, the table name is not yet visible in the +Project Navigator. + + + + + + +The Table Designer window + +Table Designer window consists of following columns: + +PK - Primary Key. + + +Field Caption - caption of the field +which will be displayed during data entering. + + +Data Type - a combo box containing a list of data types, +allowing to set a main rule for entered data for a given field. For example, +when an integer number data type is set for a field, a database user will not +able to enter letter characters into this field. + + +Comments - you can enter here any information useful for +understanding what the given field is provided for. This additional text will +be saved within the table design and only visible in design mode. + + + +In the Table designer window, every row corresponds to +a single table field. You can recognize you are in design +mode because the +Switch to Design View mode button is toggled on within +the main &kexi; toolbar. + + + + +Designing the <emphasis>Persons</emphasis> table + +In the first row click on the cell in the Field Caption +column and enter Name as field caption. + + +Notes about field names and captions + +Every table field must have a name and a caption, these cannot be empty. + + +Field name is a word used by the database, usually not visible for users of the database application. The name may not contain special (national) characters (like ±, ¶, Ü) +or space characters. The name must only contain roman letters, + +numbers and underscore sign "_". Use the latter instead of +spaces or dashes. + + +Field names must be started with a letter or underscore sign +"_", never with a number. + + +It does not matter whether you are using small or capital letters. +For &kexi; the database name "Persons" is the same as +"persons". + + +Field caption, on the other hand, allows you to enter any letters and special characters. It will be displayed for users of the database application. + + + + + + +In a similar way, enter the following fields into the table design: +surname +street +house_number +city + + + + +All the above fields, except house_number, are of type +text. +Change house_number field's type to integer +number. To do this, click on a cell in the Data +Type column, house_number row and then +click on drop down list's button +(you can also press F4 or +&Alt;Down. The list +of data types will appear. Select the Integer number type. + + +From now on, the house_number field only accepts numbers. + + + + +Persons table design is ready. Click +Switch to Data View button on the toolbar to finish +designing and switch to Data View for the table. This allows you entering +data into the table. + + + +As the design is not yet saved in the database, the Save Object As +dialog window appears. You need to specify the name for the new table. + + + +&kexi; offers a generic name like Table1. +To change the name, enter Persons into the +Caption field and press the +Enter key or click the OK +button. The Caption field will be used to display the +table to database end-users, ⪚ as a form. Unlike the name, the caption can +contain any characters including spaces and special characters. + + +Note that filling the Caption field automatically fills +the Name field. For your convenience the rule for using +only letters, numbers and the "_" character is kept. You +can alter the contents of the Name field if you want to. + + + + +You are asked about an agreement for automatic adding of primary key to the table. + + Click Add primary key +button to continue. + + + + +The Persons table has been created and opened in Data View. +Its name appears in the Project Navigator pane. + + + + +Create the phone_numbers table, in a similar +way as persons table. + + + +Create a person field of type Integer +number and phone of type Text. +Do not use a number type here because phone numbers can have many different +forms and prefixes. + + + +Click Switch to +Data View button on the toolbar and enter Phones +caption for the table. As for your previous table, allow &kexi; to automatically +create a primary key. + + + + + + + +&enteringdataintotables; + +&querydesigning; + +&designingforms; + +&enteringdatausingforms; + + + -- cgit v1.2.1