# Manuale di &kexi;

## Introduzione

&kexi; è un'applicazione per la gestione di banche dati. Può essere utilizzato per creare delle banche dati, inserire dati, eseguire interrogazioni e processare i dati. È possibile creare dei moduli per generare una interfaccia personalizzata ai tuoi dati. Tutti gli oggetti della banca dati - tabelle, interrogazioni e moduli - vengono memorizzati nella banca dati, rendendo più semplice la condivisione dei dati e della progettazione.

&kexi; fa parte della suite di produttività &calligra; per KDE.

Oltre a memorizzare le tue banche dati &kexi; in file, &kexi; può anche memorizzare i tuoi dati in un server di banche dati. L'utilizzo di un server di banche dati ti permette di condividere le tue banche dati con altre persone, e permette inoltre a più persone di usare la banca dati nello stesso momento. I seguenti server di banche dati sono supportati da &kexi;:

- MySQL

- PostgreSQL

Ulteriori informazioni su &kexi; possono essere reperite sulla pagina di &kexi; sul sito di Calligra, e sul sito dedicato esclusivamente a Kexi.

Se hai domande riguardo &kexi; esistono due mailing list a tua disposizione La mailing list degli utenti di &kexi; può essere usata per le domande circa l'utilizzo di &kexi; oppure circa il progetto &kexi;. La mailing list degli sviluppatori di &kexi; può essere usata per le domande circa lo sviluppo di &kexi;. Ulteriori informazioni su come iscriversi a tali liste, insieme a qualche altro modo per contattare gli sviluppatori di &kexi;, possono essere reperite qui.

Questo manuale per &kexi; 2.5 è basato sul Manuale di &kexi; per Kexi 1.1. Per il coordinamento del lavoro su questo manuale contattare Jarosław Staniek, email: kexi at kde.org

## Informazioni di base su Kexi

- Banche dati Kexi

- Creare un nuovo file banca dati

- La finestra principale di Kexi

  - Elementi principali dell'applicazione

- Aprire un file banca dati di Kexi esistente

  - Aprire un file banca dati dalla finestra di dialogo Apri progetto esistente

  - Apertura di un file di banca dati di Kexi esistente facendo clic sull'icona di un file .kexi

- Usare l'aiuto integrato

### Banche dati di Kexi

Molte applicazioni, come OpenOffice.org, LibreOffice o &Microsoft; Excel, creano dei file chiamati documenti. Anche &kexi; crea dei file, ma ci riferiamo ad essi come file banche dati di &kexi;, oppure semplicemente come file banche dati.

Oltre a poter memorizzare le tue banche dati in file banche dati, &kexi; può anche utilizzare delle banche dati che si trovano su server di banche dati, motivo per cui ci riferiamo ad essi come file banche dati e non semplicemente come banche dati.

Anche il termine progetto &kexi;, o semplicemente progetto viene utilizzato per far riferimento alle banche dati di &kexi;, senza tenere conto se siano memorizzate in file o su un server per banche dati.

I file banca dati di &kexi; hanno normalmente l'estensione `.kexi`

### Creare un nuovo file banca dati

1. Avvia &kexi;, oppure se è già in esecuzione, utilizza Kexi Nuovo... (Ctrl+N).

2. Nella pagina Nuovo progetto, nella sezione Progetti vuoti, scegli Banca dati vuota.

3. Nella pagina Metodo di memorizzazione, fai clic su File.

4. In Titolo e nome del file del progetto, definisci un titolo e il nome del file del progetto.

5. Fai clic su Successivo per creare il progetto.

- Quando cambi il titolo del progetto, il nome di file proposto viene automaticamente adattato.

- Puoi usare il navigatore dei file per scegliere una cartella dove vuoi salvare il file della tua banca dati.

### La finestra principale di Kexi

La Barra degli strumenti a schede in alto fornisce l'accesso alle azioni ed ai comandi comuni.

Il Navigatore di progetto e l'Editor delle proprietà vengono mostrati in pannelli su ogni lato di un riquadro figlio. Possono essere ridimensionati o nascosti. Un pannello può essere nascosto facendo clic sulla piccola croce che si trova nella parte alta del pannello (appena sotto la barra degli strumenti).

Gli oggetti banca dati (tabelle, interrogazioni, &etc;) elencati nel Navigatore di progetto possono essere aperti facendo clic (o doppio clic, in base alle impostazioni generali di KDE) sui loro nomi.

#### Elementi principali dell'applicazione

Gli elementi principali della finestra dell'applicazione &kexi; sono:

Barra degli strumenti a schede

- Contiene i comandi disponibili all'applicazione. Potrai trovare una descrizione dettagliata di ogni comando nell'appendice.

Pannello del navigatore di progetto

- Contiene una lista di tutti gli oggetti (tabelle, interrogazioni, moduli, ...) creati all'interno del progetto attualmente aperto. Il navigatore contiene inoltre una piccola barra degli strumenti con i comandi più utili in relazione agli oggetti della banca dati.

Area degli oggetti aperti della banca dati / Finestre a schede

- Un'area centrale dell'applicazione, che occupa la maggior parte dello schermo. L'interfaccia utente contiene delle schede selezionabili con finestre sempre massimizzate.

Pannello dell'editor delle proprietà

- Contiene una lista di proprietà per gli oggetti attivi. Per alcuni oggetti (⪚ le finestre dei moduli) può consistere di diverse schede.

#### Barra degli strumenti a schede

La barra degli strumenti è il luogo che fornisce l'accesso alla maggior parte dei comandi e delle azioni di &kexi;.

Usando le azioni che si trovano nelle varie schede della barra degli strumenti puoi:

- Creare / aprir / chiudere progetti Kexi

- Creare oggetti banca dati

- Importare / esportare dati

In base al contesto possono essere visibili altre schede:

- La scheda Progettazione modulo è visibile se il Progettista dei moduli è in uso.

- La scheda Progettazione rapporto è visibile se il Progettista dei rapporti è in uso.

#### Panello Navigatore di progetto

Il pannello Navigatore di progetto è uno degli elementi della finestra principale di &kexi; utilizzati più di frequente. Il pannello contiene una lista di tutti gli oggetti creati all'interno del progetto per banca dati Kexi attualmente aperto. Gli oggetti sono divisi in gruppi: tabelle, interrogazioni, modelli, rapporti e script.

Il pannello Navigatore di progetto contiene inoltre una piccola barra degli strumenti per i comandi utilizzati più di frequente (da sinistra a destra): Apri oggetto selezionato, Progetta oggetto selezionato, e Cancella oggetto selezionato.

Per ogni oggetto nella lista è disponibile un menu contestuale utilizzando il pulsante destro del mouse.

Facendo doppio clic con il pulsante sinistro del mouse sul nome di ogni oggetto nella lista, si apre l'oggetto nella Vista dati. Se la finestra dell'oggetto era stata già aperta, l'azione la attiva semplicemente senza cambiare la propria modalità di visualizzazione.

Anche se che il tuo sistema operativo o il gestore delle finestre può essere impostato per gestire i clic singoli invece dei doppi clic, &kexi; usa il doppio clic nel Navigatore di progetto per evitare di aprire grandi basi di dati o eseguire interrogazioni per errore.

#### Area degli oggetti aperti della banca dati / Finestre a schede

Quando fai doppio clic su un oggetto nel navigatore di progetto, questo si aprire nell'area degli oggetti aperti della banca dati. Ogni finestra ha la sua scheda in &kexi;.

Puoi risistemare le schede trascinandole e chiuderle tramite il pulsante di chiusure delle schede posizionato all'estremità destra della striscia delle schede.

Più avanti ci sarà un'opzione per staccare le schede, creando qualcosa in qualche modo simile ad un'interfaccia MDI. Ciò potrebbe essere utile per soluzioni personalizzate o schermi multipli.

#### Pannello editor delle proprietà

Nel pannello di modifica proprietà puoi modificare le proprietà dell'oggetto mostrato nella finestra attiva. In base al contesto, il pannello consiste di una o più schede. La prima scheda sempre visibile, Proprietà, contiene una lista di proprietà disponibili.

Regole per l'utilizzo del pannello di modifica delle proprietà:

- Ogni riga contiene una singola proprietà.

- Puoi utilizzare il mouse oppure la tastiera per modificare i valori di una particolare proprietà.

- I tipi di valori per le proprietà usati più di frequente sono:

  - un numero; puoi inserire il valore direttamente oppure incrementarlo o decrementarlo facendo clic con il tasto sinistro del mouse sulle frecce.

  - testo

  - menu a discesa di valori

  - Sì/no; puoi commutare il valore facendo clic sul pulsante; il valore Sì (vero) significa che il pulsante è acceso, il valore No (falso) significa che il pulsante è spento.

- Non c'è necessità di confermare i valori modificati: le modifiche sono immediatamente visibili dopo essersi spostati su una riga differente nella lista del pannello di modifica delle proprietà o premendo il tasto &Enter;.

- I nomi delle proprietà modificate di recente che non sono ancora state memorizzate nella banca dati vengono mostrate in grassetto.

- Dopo aver modificato il valore di una proprietà, apparirà un pulsante speciale Annulla modifiche nella parte destra della lista dell'Editor delle proprietà. Facendo clic su di esso puoi ripristinare il valore della proprietà a quello originale caricato dalla banca dati al momento dell'apertura dell'oggetto banca dati. Il pulsante è visibile solamente quando la proprietà è effettivamente evidenziata.

Il pannello dell'Editor delle proprietà è vuoto se:

- non è stata aperta alcuna finestra per gli oggetti banca dati, oppure

- la finestra dell'oggetto banca dati attivo non offre proprietà; tipicamente è il caso in cui è stata aperta nella Vista dati invece che nella Vista progetto.

### Aprire un file banca dati di Kexi esistente

Ci sono due modi per aprire un file banca dati di &kexi; esistente:

#### Aprire un file banca dati dalla finestra di dialogo Apri progetto

- Avvia &kexi;. Dovresti vedere la finestra di dialogo di avvio Benvenuto in Kexi, che ti consente di scegliere e aprire uno dei progetti usati di recente.

- Se il progetto non è nella pagina dei progetti usati di recente scegli Apri... (&Ctrl;O). Vedrai la seguente finestra di dialogo:

- Dalla barra degli indirizzi scegli la cartella che contiene il file che stai cercando.

- Puoi sia scegliere un file che sarà aperto immediatamente, sia inserire il suo nome nella casella Nome: e fare clic su Successivo.

Note

- Il menu a discesa Filtro: ha come valore predefinito Tutti i tipi di file supportati (*.kexi, *.kexic, *.kexis, *.mdb). Nel caso in cui il file che stai cercando ha un'altra estensione, puoi modificare la scelta nel menu a discesa Filtro: con Tutti i file per mostrare tutti i file disponibili (senza tenere conto dell'estensione).

- Se hai selezionato un file di un tipo esterno, come un file `.mdb` di MS Access, &kexi; ti fornirà un opzione per importarlo.

- Se hai selezionato un file connessione dati (con l'estensione `.kexic`) oppure un file scorciatoia ad un progetto su un server per banche dati (con l'estensione `.kexis`), &kexi; mostrerà le finestre di dialogo appropriate.

#### Aprire un file di banca dati di Kexi esistente facendo clic sull'icona di un file .kexi

- Fai clic sull'icona del file utilizzando il tuo gestore di file oppure il tuo desktop. &kexi; aprirà il progetto banca dati automaticamente.

Note

Nota circa i file banche dati acceduti per via remota.Potresti voler aprire un file di banca dati che si trova su una sorgente remota (⪚ un server web o FTP o una condivisione di rete MS Windows). KDE ti permette di aprire, dalle applicazioni, dei file che si trovano su sorgenti remote e di salvare le modifiche sulle sorgenti, ma non nel caso di file banca dati. Facendo clic su di un file banca dati collocato su una sorgente remota, scaricherai il file in una cartella temporanea sul tuo computer e tutte le modifiche verranno apportate su questo file locale. Il file remoto originale rimarrà intatto, per questo si raccomanda di copiare (scaricare) il file prima sul computer, per poi aprirlo e ricopiarlo sulla sorgente remota se vuoi mantenerla aggiornata.

### Usare l'aiuto integrato

Sono disponibili i seguenti modi per ottenere aiuto in &kexi;:

Il manuale sotto forma di documento elettronico.

- Il manuale è disponibile premendo il tasto F1 o facendo clic nella barra del menu e selezionando Aiuto.

I suggerimenti Che cos'è?.

- Seleziona Che cos'è dal menu che appare quando fai clic su , quindi fai clic su un'area del programma per ricevere suggerimenti su di essa.

## Costruire semplici banche dati

- Introduzione

- Progettare le tabelle della banca dati

  - Finestra Progettazione tabella

- Inserire dei dati nelle tabelle

- Progettare interrogazioni per la banca dati

- Progettare i moduli

  - Termini più importanti

  - Moduli e tabelle

  - Lavorare con la progettazione dei moduli

  - Usare la scheda Oggetti

  - Inserire oggetti - campi di testo

  - Assegnare fonti di dati

  - Inserire etichette di testo

  - Azioni

  - Schemi degli oggetti

- Inserire dei dati usando i moduli

### Introduzione

Per imparare le basi di &kexi;, potresti costruire una semplice banca dati usando le funzionalità più elementari di &kexi;. Per rendere le cose più semplici gli argomenti relativi alla progettazione avanzata di una banca dati non verranno affrontati qui.

Comincia creando una nuova rubrica telefonica vuota.

Ora che hai un nuovo progetto di banca dati vuoto, compi i prossimi passi:

1. Progetta le tabelle della banca dati. Leggi la sezione chiamata Progettare le tabelle della banca dati.

2. Inserisci i dati nella tabelle. Leggi la sezione chiamata Inserire dei dati nelle tabelle.

3. Progetta le interrogazioni per la banca dati. Leggi la sezione Progettare interrogazioni per la banca dati.

4. Progetta i moduli. Leggi la sezione chiamata Progettare i moduli.

5. Usa i moduli per inserire i dati. Leggi la sezione chiamata Inserire dei dati usando i moduli.

### Progettare le tabelle della banca dati

Per prima cosa, ci saranno due tabelle aggiunte alla tua banca dati: `Persone` e `Telefoni`. Sono esattamente le stesse tabelle descritte nel capitolo Banca dati e foglio di calcolo. Puoi trovare lo schema di `Persone` nella sezione Integrità e validità dei dati in questo capitolo.

1. Seleziona Tabella dalla barra del menu. Puoi anche utilizzare il pulsante Crea oggetto: tabella nel menu contestuale dell'elemento Tabelle del Navigatore del progetto.

2. Apparirà la finestra di progettazione tabella. Osservando la parte alta della finestra noterai che &kexi; ti ha proposto un nome generico per la nuova tabella, come Tabella1. La progettazione della tabella non viene ancora salvata, così potrai assegnarle un nome più appropriato in seguito. Inoltre, per la stessa ragione, il nome della tabella non è ancora visibile nel Navigatore di progetto.

#### Finestra Progettazione tabella

##### La finestra Progettazione tabella è composta dalle seguenti colonne:

- - Informazioni aggiuntive per il campo

- Descrizione campo - descrizione del campo che sarà visibile durante l'inserimento dei dati.

- Tipo di dati - una casella a scelta multipla che contiene una lista dei tipi di dati e che ti permette di impostare una regola generale per i dati immessi in un dato campo. Ad esempio, quando viene impostato il tipo di dati numero intero per un campo, un utente della banca dati non riuscirà ad inserire lettere in questo campo.

- Commenti - qui puoi inserire qualsiasi informazione utile a comprendere lo scopo del campo. Questo testo addizionale verrà salvato all'interno del progetto della tabella e sarà visibile solamente in modalità progettazione.

Nella finestra di progettazione tabella ogni riga corrisponde a un singolo campo della tabella. Puoi renderti conto di essere nella modalità progettazione perché il pulsante Progettazione è attivato nella barra degli strumenti della finestra di progettazione tabella.

##### Progettazione della tabella Persone

Fai clic sulla prima riga nella cella della colonna Descrizione campo ed inserisci `Nome` come descrizione del campo. Inserendo un valore nel campo Descrizione campo, il campo Nome sarà riempito automaticamente come visto nel pannello dell'Editor di proprietà.

Note sui nomi dei campi e sulle descrizioni

- Ogni campo di una tabella deve avere un nome ed una didascalia, non possono essere vuoti.

- Il nome del campo è una parola usata dalla banca dati, tipicamente non visibile agli utenti dell'applicazione. I nomi non possono contenere caratteri speciali (nazionali, come ±, ¶, Ü) o degli spazi. I nomi devono contenere solamente lettere romane, numeri e trattini bassi _. Usa l'ultimo al posto di spazi o trattini.

- I nomi dei campi devono cominciare con una lettera o un trattino basso _, mai con un numero.

- Non importa se usi lettere minuscole o maiuscole. Per &kexi; un nome di campo come `Persone` è lo stesso di `persone`.

- Le descrizioni dei campi, d'altro canto, ti permettono di inserire qualsiasi lettera e carattere speciale. Verrà mostrata agli utenti dell'applicazione per banche dati.

In maniera simile, inserisci i seguenti campi nel progetto della tabella:

- `cognome`

- `via`

- `numero_casa`

- `città`

Tutti i campi precedenti, eccetto `numero_casa`, sono di tipo testo. Modifica il tipo del campo `numero_casa` in numero intero. Per fare ciò, fai clic su una cella nella colonna Tipo di dati, riga `numero_casa`, e fai clic sul pulsante del menu a discesa oppure premi F4. Apparirà la lista dei tipi di dati. Puoi usare anche i tasti freccia Su e Giù per selezionare un altro tipo. Seleziona il tipo Numero intero.

D'ora in poi il campo `numero_casa` accetterà solamente dei numeri.

Il progetto della tabella Persone è pronto. Fai clic sul pulsante Data nella barra degli strumenti per completare la progettazione e per passare alla Vista dati per la tabella. Questo ti permette di inserire dati nella tabella.

Visto che il progetto non è ancora stato salvato nella banca dati, apparirà la finestra di dialogo Salva oggetto come. Devi specificare il nome della nuova tabella.

&kexi; presenta un nome generico come Tabella1. Per cambiare il nome inserisci `Persone` nel campo Descrizione e premi il tasto &Enter; o fai clic sul pulsante OK. Il campo Descrizione sarà usato per mostrare la tabella agli utenti finali della banca dati, ⪚ come modulo. Al contrario del nome, la descrizione può contenere qualsiasi carattere inclusi spazi e caratteri speciali.

Nota che riempendo il campo Descrizione verrà riempito automaticamente anche il campo Nome. Per tua comodità vale ancora la regola di utilizzare solamente lettere, numeri ed il trattino basso _. Se vuoi, puoi modificare i contenuti del campo Nome.

1. Ti verrà chiesto di accettare l'aggiunta automatica di una chiave primaria alla tabella. Fai clic sul pulsante Aggiungi chiave primaria per continuare.

2. La tabella Persone è stata creata ed aperta nella vista dati. Il suo nome appare nel pannello del Navigatore di progetto.

3. Crea la tabella `Telefoni`, in maniera simile a icome hai creato la tabella `Persone`.

4. Crea un campo `persona` di tipo Numero intero e `telefono` di tipo Testo. Non usare un tipo numerico qui perché i numeri telefonici possono avere forme e prefissi diversi.

5. Fai clic sul pulsante Dati sulla barra degli strumenti ed inserisci la descrizione `Telefoni` per la tabella. Come per la tabella precedente, permetti a &kexi; di creare automaticamente una chiave primaria.

### Inserire dei dati nelle tabelle

Hai progettato le tabelle `Persone` e `Telefoni`. Nessuna delle due contiene ancora dei dati. Puoi inserirne alcuni, e con questo capitolo imparerai a farlo velocemente ed efficientemente.

Comincia con la tabella `Persone`. Aprila nella Vista dati utilizzando Apri nel menu contestuale di Navigatore di progetto o il pulsante nella barra degli strumenti. La cella corrente viene marcata con un bordo più spesso (tipicamente nero), un cursore della cella. Il contenuto della cella, se esiste, è evidenziato con un colore differente. La riga corrente, &ie; quella su cui hai posizionato il cursore rettangolare, è marcata sulla sinistra con un simbolo a forma di freccia.

Puoi navigare tra le celle della tabella utilizzando i tasti freccia o i tastiPagina giù, Pagina su, Inizio, Fine; puoi anche fare clic con il mouse su una cella per selezionarla.

All'inizio, dopo aver aperto la tabella `Persone`, il cursore è posizionato sulla colonna `id`. La colonna ha la proprietà numerazione automatica definita, marcata con il testo di colore blu (numero automatico) nell'ultima riga. Significa che non devi inserire dei valori a mano quando inserisci dei dati in una nuova riga, poiché la cella verrà riempita automaticamente con numeri in successione.

Il modo con il quale si inseriscono nuove righe e dati al loro interno in &kexi; è diverso dal modo in questo viene fatto nei fogli di calcolo. Per inserire dei dati in una nuova riga, devi usare i tasti freccia o il mouse per spostare il tuo cursore sulla riga speciale vuota contrassegnata da un segno più. Posiziona il tuo cursore sulla (seconda) colonna `nome` ed inserisci il nome di una persona. Inserisci anche un cognome, una via, numero di telefono e città. Quando hai fatto, sposta il cursore della cella sull'ultima riga vuota usando il tasto Giù oppure facendo clic sull'ultima riga con il mouse per aggiungere una nuova riga.

#### Dettagli sulle azioni disponibili durante l'inserimento di dati nella tabelle

- Dal momento in cui inserisci il primo carattere, viene avviata la modifica della riga corrente. Apparirà un simbolo a forma di matita nella parte sinistra della tabella.

- Anche facendo doppio clic su una cella con il pulsante sinistro del mouse o premendo il tasto &Enter; o F2 potrai modificare la riga corrente.

- Se si preme il tasto &Esc; quando si stanno modificando i contenuti di una cella verranno annullate le modifiche apportate a quella cella. Tuttavia, il simbolo della matita non scomparirà perché puoi ancora spostarti su una cella differente della riga che stai modificando per cambiare i suoi contenuti. Per annullare i cambiamenti apportati all'intera riga che si sta modificando, premi di nuovo il tasto &Esc;.

- Invece di premere il tasto &Esc; puoi fare clic sul pulsante Annulla le modifiche del record della barra degli strumenti.

- Premi i tasti &Shift;&Enter; per accettare le modifiche apportate a tutte le celle della riga che stai attualmente cambiando.

Riempi la tabella `Telefoni` con dei dati. Nella colonna `persona` devi indicare un identificativo numerico (`id`) di una persona esistente nella tabella `Persone`.

### Progettare interrogazioni per la banca dati

Lo scopo principale di una banca dati è di memorizzare e di aiutarti nell'estrazione di informazioni che stai cercando. A differenza delle banche dati scritte su fogli di carta, una banca dati di &kexi; ti permette di specificare più criteri di ricerca. I risultati vengono restituiti più velocemente anche con grandi insiemi di dati. Tutto questo rappresenta un punto di forza delle banche dati, sebbene, per essere in grado di eseguire interrogazioni sulla tua banca dati, devi imparare come comunicare alla banca dati quello che stai cercando.

Attraverso le interrogazioni puoi limitare i dati provenienti da una tabella ad un insieme predefinito di righe e di colonne così come unire (join) dinamicamente i dati proveniente da diverse tabelle.

Per vedere come funzionano in pratica le interrogazioni, ne creerai una di nome contatti che unisce i dati proveniente dalle due tabelle `Persone` e `Telefoni`(progettate qui e riempite con dati qui).

1. Crea una nuova interrogazione vuota selezionando Interrogazione dalla barra degli strumenti. Apparirà la finestra progettazione. Essa è divisa in due aree: le relazioni dell'interrogazione in alto e le colonne dell'interrogazione in basso.

2. Seleziona la tabella `Persone` nel menu a discesa Tabella: posizionata nella parte alta della finestra e fai clic sul pulsante Inserisci. Apparirà una rappresentazione grafica della tabella nell'area destinata alle relazioni. Fai la stessa cosa per la tabella `Telefoni` in modo da inserire anch'essa.

3. Aggiungi le relazioni della interrogazione utilizzando la tecnica del trascinamento: fai clic sul campo `id` nella tabella `Persone` e trascinalo sul campo `persone` della tabella `Telefoni`. Questo unirà entrambi i campi creando una nuova relazione.

4. Fai doppio clic sul campo `nome` nella tabella `Persone` per aggiungere il campo come una colonna di interrogazione. In modo simile, aggiungi i campi `cognome`, `via`, `numero_casa`, `città` dalla tabella `Persone` e `telefono` dalla tabella `Telefoni`.

5. Il progetto della interrogazione è ora pronto per alcune prove. Fai clic sul pulsante Dati della barra degli strumenti per passare dalla progettazione alla visualizzazione dei dati forniti come risultati dell'interrogazione.

6. Salva il progetto dell'interrogazione per un uso successivo facendo clic sul pulsante Salva nella barra degli strumenti. Poiché il progetto dell'interrogazione non è stato ancora salvato, ti verrà chiesto di specificare un nome. Inserisci il testo `Contatti` nel campo didascalia e fai clic sul pulsante OK.

### Progettare i moduli

- Termini più importanti

- Moduli e tabelle

- Lavorare con la progettazione dei moduli

- Usare la scheda Oggetti

- Inserire oggetti - campi di testo

- Assegnare fonti di dati

- Inserire etichette di testo

- Azioni

- Schemi degli oggetti

#### Termini più importanti

Modulo

- Una finestra per inserire dei dati e presentarli sullo schermo del computer in modo facile.

Fonte dati per un modulo

- Tabelle o interrogazioni di banche dati che forniscono i dati mostrati nel modulo. La fonte di dati è necessaria poiché i moduli stessi sono solo degli strumenti per la visualizzazione e l'inserimento di dati, mentre le tabelle e le interrogazioni sono fonti di dati. I moduli nuovi e vuoti non hanno alcuna fonte dati assegnata, per questo non mostrano alcun dato dalla vostra banca dati finché non ne assegnate loro una.

Campo di un modulo

- Equivalente diretto di una colonna in una tabella o in una interrogazione. I campi più utilizzati sono quelli per la visualizzazione di testo e numeri. L'inserimento di un nuovo valore o la modifica di uno esistente in un campo di questo tipo provoca una modifica nella colonna della tabella o interrogazione ad esso legata (dopo aver confermato la modifica).

Progettazione di un modulo

- Insieme di operazioni che stai compiendo per definire l'aspetto e le funzioni di un modulo. Per fare questo, devi fornire una fonte di dati, inserire dei campi di un modulo di diversi tipi e collocarli nella posizione appropriata.

Oggetto modulo

- Elemento di un modulo. I tipi di oggetti principali sono:

  - Oggetti che mostrano informazioni, ⪚ una casella di testo o una casella immagine. Ogni oggetto di questo tipo può essere legato ad un campo di una fonte dati (la colonna di una tabella o di una interrogazione). Perciò, essi sono chiamati in breve campi di un modulo.

  - Oggetti in grado di eseguire azioni specifiche, ⪚ un pulsante per chiudere il modulo corrente. All'interno di altre applicazioni, esso è chiamato a volte controllo di un modulo poiché può eseguire un'azione definita in precedenza per controllare il comportamento della tua applicazione per banche dati.

  - Altri oggetti che permettono di arricchire l'aspetto di un modulo, come ⪚ un “oggetto linea” può separare visivamente due aree del modulo.

Oggetto contenitore

- Un oggetto che può contenere altri oggetti all'interno della sua area. Ad esempio, un riquadro o una scheda sono contenitori. La superficie del modulo è essa stessa un contenitore. Un pulsante di comando non può essere chiamato contenitore poiché non è possibile inserire oggetti al suo interno. In casi più complicati, degli oggetti contenitore possono essere inseriti all'interno di un altro contenitore, quindi l'annidamento è possibile.

#### Moduli e tabelle

Nel capitolo Inserire dei dati nelle tabelle hai imparato come inserire dati direttamente nelle tabelle usando la loro vista a foglio di calcolo. Tuttavia, in molti casi i moduli sono più adatti all'inserimento dei dati:

- Una tabella può contenere troppe colonne per mostrarle sul tuo schermo. Un modulo può mostrare tali dati usando righe multiple.

- Un modulo permettere di suddividere visivamente i campi di dati in gruppi logici, aumentando quindi la leggibilità. È possibile inserire etichette con informazioni aggiuntive per dare agli utente ulteriori suggerimenti su come usare il modulo o sul significato dei campi di dati forniti.

- I pulsanti di comando possono essere usati all'interno dei moduli per i comandi più comuni, così che gli utenti possono usare i moduli in un modo simile alle applicazioni che conoscono.

Nella vista a foglio di calcolo, mostrare campi di testo con dati su più righe oppure immagini è tanto semplice quanto farlo nei moduli.

#### Lavorare con la progettazione dei moduli

Come per la progettazione delle tabelle o delle interrogazioni, puoi utilizzare la vista dati e la vista progettazione. Il progetto di un modulo viene eseguito nella vista progettazione. Ci riferiremo spesso alla finestra per il progetto dei moduli con il termine Progettazione modulo.

1. Per creare un nuovo modulo vuoto, seleziona Modulo dalla barra degli strumenti. In alternativa, puoi usare il comando Crea oggetto: modulo dal pulsante a discesa della barra degli strumenti del navigatore di progetto o il comando Crea oggetto: modulo dal menu contestuale del navigatore di progetto.

2. Apparirà un nuovo riquadro: puoi ridimensionare il modulo spostando i bordi. Il modulo è ricoperto da una griglia che semplifica il posizionamento accurato degli oggetti.

Così come con quella di progettazione delle tabelle, la finestra di progettazione modulo fornisce un pannello Editor delle proprietà. Per risparmiare un po' di spazio sullo schermo, il pannello ha tre schede relative al modulo attualmente selezionato:

La scheda Proprietà

- Contiene una lista di proprietà dell'oggetto attualmente selezionato.

La scheda Fonte dati

- Contiene le proprietà relative in modo specifico alla fonte dati dell'oggetto attualmente selezionato o del modulo stesso.

La scheda Oggetti

- Contiene una gerarchia di tutti gli oggetti del modulo. La lista semplifica la ricerca per nome e la navigazione tra gli oggetti.

Vengono mostrate informazioni circa il nome ed il tipo dell'oggetto attualmente selezionato nella prima e nella seconda scheda.

Sono disponibili anche barre degli strumenti aggiuntive:

- La barra degli strumenti Oggetti usata l'inserimento di nuovi oggetti nel modulo. Seleziona Progettazione modulo per mostrarla.

#### Usare la scheda Oggetti

La scheda oggetti nel pannello delle Proprietà fornisce una lista di oggetti del modulo e la loro gerarchia. Ogni oggetto viene presentato all'interno della gerarchia accanto agli altri oggetti che si trovano allo stesso livello (che hanno lo stesso contenitore come genitore). Gli oggetti figli (all'interno dei contenitori) vengono presentati utilizzando nomi indentati.

Per ogni oggetto viene mostrato il nome ed il tipo. Al tipo è associata anche un'icona - la stessa che viene mostrata nella barra degli strumenti usata durante il progetto del modulo.

- Cambiando la selezione corrente nella lista verrà attivata la selezione corrispondente nel modulo che si sta progettando. Ciò permette di cercare più facilmente gli oggetti tramite i nomi ed una navigazione più semplice. Ad esempio, è possibile selezionare un oggetto tramite il nome, e poi passare alla scheda Proprietà per modificare le proprietà dell'oggetto.

- Tenere premuto il tasto &Ctrl; mentre si seleziona un elemento dalla lista degli oggetti permette di selezionare oggetti multipli in una sola volta. Tenere premuto il tasto &Shift; permette di selezionare l'intera lista di oggetti.

Dare nomi ragionevoli agli oggetti può essere utile, ma non è obbligatorio. Nota che il nome di un oggetto è una proprietà non visibile all'utente del modulo. Gli utenti vedranno solamente un testo dell'oggetto, fornito dalla proprietà Testo o simili.

#### Inserire oggetti - campi di testo

Creiamo un modulo che fornisce informazioni su alcune persone, &ie; un modulo collegato alla tabella `Persone`.

Se il modulo che si sta progettando deve presentare dei dati ottenuti da una banca dati, devi posizionare campi appropriati al suo interno. Per farlo, usa i pulsanti sulla barra degli strumenti Oggetti. Ogni pulsante corrisponde ad un singolo tipo di oggetti.

1. Fai clic sul pulsante Casella di testo nella barra degli strumenti Oggetti.

2. Fai clic sulla superficie del modulo con il pulsante sinistro del mouse. Un nuovo oggetto casella di testo verrà posizionato nel punto in cui hai fatto clic. Prima di rilasciare il pulsante puoi trascinare il mouse per specificare la dimensione desiderata dell'oggetto.

3. Se necessario, sposta l'oggetto inserito trascinandolo nella posizione desiderata. In seguito puoi ridimensionarlo trascinando uno dei piccoli quadrati che compaiono negli angoli. Nota che i quadrati sono visibili solamente quanto l'oggetto viene selezionato. Se ne selezioni un altro oppure la superficie del modulo, i quadrati spariscono.

4. Fai nuovamente clic sul pulsante Casella di testo nella barra degli strumenti e fai clic sulla superficie del modulo per inserire un altro oggetto. Ripeta questa azione un'altra volta finché non ottieni altre tre caselle di testo nel tuo modulo. Per semplicità ci limitiamo a cinque campi di dati.

- Nella modalità progettazione di moduli è disponibile un menu contestuale che si attiva facendo clic con il pulsante destro del mouse sull'oggetto desiderato oppure sulla superficie del modulo. Il menu offre comandi come Taglia, Copia, Incolla, Elimina ed altri, più complessi. Sono disponibili anche scorciatoie da tastiera per questi comandi. Alcuni di essi sono solo disponibili per certi tipi di oggetti.

- I comandi Taglia, Copia e Incolla rendono possibile spostare o copiare degli oggetti tra moduli, addirittura tra progetti di banche dati separati.

- Tenere premuto il tasto &Ctrl; mentre si fa clic su un oggetto permette di selezionare diversi oggetti.

- Invece di utilizzare i comandi Copia e Incolla, per duplicare un oggetto all'interno dello stesso modulo puoi tenere premuto il tasto &Ctrl; mentre sposti l'oggetto. Dopo aver rilasciato il pulsante del mouse l'oggetto trascinato non verrà spostato ma copiato nella nuova posizione.

#### Assegnare fonti di dati

I campi inseriti non hanno ancora nessuna fonte dati assegnata, quindi non sono in grado di mostrare informazioni dalla banca dati. Per assegnare una fonte dati usa la scheda (fonte dati) del pannello Editor delle proprietà.

Il primo passo consiste nello specificare la fonte dati del modulo, &ie; il posto dal quale vengono raccolti i dati visualizzati. Come detto in precedenza, userai la tabella `Persone` come fonte dati per il tuo nuovo modulo.

1. Fai clic sulla superficie del modulo, poiché modificherai le sue proprietà.

2. Passa alla scheda (fonte dati) ed inserisci il nome `persone` dal menu a discesa Fonte dati per il modulo. Oppure puoi selezionare questo nome dal menu a discesa.

Hai assegnato la fonte dati per il modulo. Ora devi specificare la fonte dati per ogni oggetto.

1. Fai clic sul primo oggetto campo di testo nella parte alta del modulo.

2. Nella scheda (fonte dati) del pannello delle proprietà inserisci il nome del campo `nome` nel menu a discesa Fonte dati dell'oggetto. Oppure puoi selezionare questo nome dal menu a discesa.

3. Fai clic sul successivo oggetto casella di testo ed inserisci `cognome` come fonte dati.

4. Inserisci le fonti dei dati per i campi di testo via, numero_casa e città in modo simile.

Puoi ora salvare il progetto del modulo (non è obbligatorio per verificare il modulo in azione). Per salvarlo, fai clic su pulsante della barra degli strumenti Salva. Al momento del salvataggio ti verrà chiesto di inserire il nome del modulo. Inserisci `Persone` come didascalia e fai clic sul pulsante OK. Il nome del modulo verrà riempito automaticamente.

Questo è il momento giusto per controllare il tuo modulo. Fai clic sul pulsante della barra degli strumenti Dati. A meno che tu non abbia commesso un errore durante l'inserimento delle fonti dati, dovresti vedere i campi del modulo riempiti con i dati proveniente dalla tabella `Persone`.

- Se vuoi rimuovere l'associazione della fonte dati per un oggetto di un modulo, puoi usare il pulsante nella casella Fonte dati per l'oggetto.

- Usa il pulsante (Vai alla fonte dati del modulo selezionato) per selezionare la tabella o interrogazione appropriata nel Navigatore di progetto, così puoi aprire velocemente una tabella o una interrogazione che rappresenta la fonte dati del modulo.

#### Inserire etichette di testo

Per rendere più semplice agli utenti del modulo la comprensione del significato di ogni oggetto, sarebbe necessario aggiungere delle etichette di testo ad essi con titoli appropriati. Per creare delle etichette di testo viene utilizzato l'oggetto etichetta.

Inserisci tre oggetti di tipo etichette di testo sul modulo, posizionandoli alla sinistra dei campi di testo (o alla destra se il tuo sistema operativo usa una disposizione da destra a sinistra). All'inserimento di una nuova etichetta, nella sua posizione appare un cursore di testo da cui puoi inserire il titolo desiderato. Inserisci consecutivamente: `Nome`, `Cognome` e `Via`, `Numero casa` e `Città`. Inoltre, nella parte superiore del modulo inserisci un'altra etichetta che mostra il nome del modulo, &ie; `Persone`. Ingrandisci la dimensione di questa etichetta e incrementa la grandezza del carattere tramite Tipo carattere nella scheda Proprietà.

#### Azioni

Una azione è una singola attività isolata nell'applicazione, disponibile agli utenti per essere eseguita. Può anche essere eseguita automaticamente come reazione ad un dato evento (⪚ dopo l'apertura di un modulo).

##### Assegnare delle azioni ai pulsanti del modulo

È possibile assegnare molte azioni ai pulsanti del modulo. L'azione assegnata viene eseguita dopo aver premuto il pulsante.

Per assegnare un'azione:

1. Passa alla vista progettazione del modulo se non lo hai ancora fatto.

2. Seleziona l'oggetto pulsante esistente facendo clic su di esso o inserisci un nuovo oggetto pulsante sul modulo. Se hai inserito un nuovo pulsante, inserisci il suo titolo e premi il tasto &Enter;.

3. Fai clic sull'oggetto pulsante con il pulsante destro del mouse per visualizzare il menu contestuale.

4. Seleziona il comando Assegna azione... dal menu contestuale.

5. Apparirà una finestra di dialogo Assegna azione al pulsante con un elenco di azioni disponibili. Una delle azioni è selezionata se l'oggetto ha già un'azione assegnata. Altrimenti nell'elenco Categoria azione è selezionato l'elemento Nessuna azione.

6. Dalla lista Categoria azione seleziona l'elemento Azioni applicazione. Verranno elencate le azioni disponibili per le applicazioni.

7. Seleziona una delle azioni dalla lista (⪚ Elimina l'oggetto selezionato).

Dopo il passaggio alla vista dati del modulo puoi provare se l'azione funziona.

- Per eliminare l'assegnazione di un'azione, seleziona l'elemento Nessuna azione dalla lista Categoria azione della finestra di dialogo Assegna azione al pulsante.

- Le azioni funzionano solamente nella vista dati di un modulo. Non tutti le assegnazioni di azioni hanno senso. Ad esempio, l'azione Tipo carattere... è disponibile nella vista dati, ma solo se ne hai selezionato uno nella vista progettazione. Se fai delle modifiche alle impostazioni del carattere, esse verranno applicate al testo dell'oggetto grafico selezionato.

#### Schemi degli oggetti

Nella maggior parte dei casi, gli oggetti di un modulo dovrebbero essere organizzati ed allineati in modo conveniente. Posizionare, allineare e ridimensionare gli oggetti a mano non è facile e questi parametri non vengono regolati quando l'utente ridimensiona il modulo. Effettivamente la situazione è anche peggiore, poiché non puoi assumere che un dato modulo richieda un dato spazio perché gli utenti utilizzano diverse dimensioni dei caratteri e risoluzioni dello schermo.

L'uso di strumenti speciali chiamati schemi degli oggetti, può aiutare a disporre gli oggetti del modulo. La disposizione degli oggetti è un'azione che prevede il raggruppamento di due o più oggetti in modo tale che essi siano ben posizionati ed abbiamo dimensioni appropriate.

L'uso di schemi di disposizione in un modulo migliora l'allineamento. Inoltre, lo spazio è utilizzato in maniera migliore. I campi di testo sono più vicini tra di loro, la spaziatura è costante.

##### Politiche di ridimensionamento degli oggetti in uno schema

Invece di impostare una dimensione fissa per gli oggetti, in &kexi; puoi scegliere tra varie politiche per le dimensioni degli oggetti. Le politiche per le dimensioni rappresentano una strategia flessibile per controllare come un oggetto viene allungato (o ristretto) in base agli oggetti vicini o allo spazio disponibile nel modulo.

Gli oggetti inseriti in una riga saranno ridimensionati perché il relativo testo sia visibile.

Per ogni oggetto inserito nel modulo, esistono delle impostazioni per le politiche per le dimensioni disponibili nell'Editor di proprietà. Queste impostazioni vengono presentate come un gruppo di proprietà chiamato Politica per le dimensioni.

Questo gruppo di proprietà contiene:

Tipo grandezza orizzontale

- che definisce la dimensione orizzontale dell'oggetto,

Tipo grandezza verticale

- che definisce la dimensione verticale dell'oggetto,

Allungamento orizzontale

- che definisce il grado di attività della politica per la dimensione orizzontale,

Allungamento verticale

- che definisce il grado di attività della politica per la dimensione verticale

##### Valori delle politiche delle dimensioni

I seguenti valori sono disponibili nel menu a discesa per le proprietà Politica or. e Politica vert. nell'editor di proprietà:

Fisso

- questo valore significa che l'oggetto non potrà essere ridimensionato automaticamente; dovrebbe mantenere le dimensioni costanti definite al momento della progettazione (larghezza o altezza),

Minimo

- questo valore significa che la dimensione originale dell'oggetto è impostato al minimo possibile, è sufficiente e non c'è bisogno di espandere l'oggetto, ma verrà ridimensionato se necessario. Questo tipo di politiche può essere utilizzato per forzare l'espansione di un oggetto all'intera larghezza o altezza, specialmente se hai impostato un valore per l'allungamento maggiore di 0.

Massimo

- questo valore significa che le dimensioni originali dell'oggetto vengono impostate al massimo possibile e che possono essere ridotte senza annullare l'usabilità e la leggibilità dell'oggetto, se altri oggetti hanno bisogno di più spazio,

Preferito

- questo valore significa che le dimensioni originali dell'oggetto sono le migliori e le preferite; l'oggetto può essere ridotto o espanso, tuttavia, e rimarrà leggibile,

Espansione

- questo valore significa che le dimensioni originali dell'oggetto sono ragionevoli ma che l'oggetto può essere anche ridotto; può anche essere espanso per occupare tutto lo spazio possibile,

Espansione minima

- questo valore significa che le dimensioni originali dell'oggetto sono permesse; può essere espanso per occupare tutto lo spazio possibile,

Ignorato

- questo valore significa che le dimensioni originali dell'oggetto vengono ignorate; l'oggetto può essere espanso per occupare tutto lo spazio possibile ma gli altri oggetti in genere non glielo permetteranno

Tipi di oggetti diversi hanno diverse politiche delle dimensioni predefinite; ad esempio, gli oggetti pulsante hanno politiche delle dimensioni impostate a Minimo (in entrambe le direzioni), mentre gli oggetti campo di testo hanno le politiche delle dimensioni verticali impostate a Fisso.

Le politiche delle dimensioni più utilizzate sono Preferito, Minimo e Massimo.

##### Allungamento verticale e orizzontale

Le proprietà Allungamento vert. e Allungamento or. accettano valori interi maggiori od uguali a 0. Queste proprietà permettono di regolare il comportamento delle politiche delle dimensioni. Il valore predefinito per esse è 0. Un valore più alto di allungamento significa che l'oggetto verrà espanso più di oggetti che hanno valori di allungamento inferiori.

### Inserire dei dati usando i moduli

L'inserimento e la modifica dei dati è tipicamente compito dell'utente di un'applicazione per banche dati. Il progettista di una banca dati dovrebbe controllare il modulo in termini di corretto inserimento dei dati, e vedere se il modulo funziona come ci si aspettava.

Per verificare il tuo modulo, passa alla vista dati. Verrà mostrata una singola riga della banca dati (record). Ti puoi spostare tra i campi utilizzando il tasto sinistro del mouse oppure i tasti e &Shift; . Durante le modifiche sarà visibile un'icona a forma di matita vicino al navigatore dei record. Dopo aver inserito i dati in una riga (record) puoi premere i tasti &Shift;&Enter; oppure fare clic sul pulsante Salva record della barra degli strumenti per confermare le modifiche apportate alla riga corrente. Facendo clic sul pulsante Annulla le modifiche del record della barra degli strumenti verranno scartate le modifiche apportate alla riga corrente e verranno ripristinati i contenuti dei campi di dati. Puoi usare il pulsante del navigatore dei record per spostarti su una nuova riga. Tutte le funzioni del navigatore sono inoltre disponibili in modo simile nella vista dati tabella.

## Configurare Kexi

- Agganciare e sganciare i pannelli laterali

### Agganciare e sganciare i pannelli laterali

I pannelli laterali Navigatore di progetto e Editor delle proprietà possono essere sganciati tramite:

- Un doppio clic sulla maniglia nella sommità del pannello; oppure

- Un clic singolo sul pulsante a diamante nella sommità del pannello, vicino alla x.

Una volta sganciato, le finestre dei pannelli possono essere nuovamente agganciati nella finestra principale in maniera simile a come sono stati sganciati:

- Con un doppio clic sulla maniglia nella sommità della finestra; oppure

- Un clic singolo sul pulsante a diamante nella sommità del pannello, vicino alla x.

Quando un pannello viene sganciato &kexi; ricorda l'ultima posizione in cui è stato agganciato, così quando lo riaggancerai il pannello sarà nuovamente nella stessa posizione.

## Guida ai comandi

- La scheda Kexi

- La scheda Crea

- La scheda Dati

- La scheda Dati esterni

- La scheda Strumenti

- La scheda Progettazione modulo

- La scheda Progettazione rapporto

### La scheda Kexi

La scheda &kexi; è il luogo dove puoi interagire con i progetti di &kexi;.

Selezionando un'azione si aprirà uno schermo a destra del menu, mostrando le opzioni relative all'azione che hai scelto.

Le opzioni disponibili sono:

Benvenuto

- Qui puoi scegliere di aprire un progetto su cui hai lavorato recentemente.

Apri

- Qui puoi scegliere di aprire un progetto &kexi; memorizzato su file o su un server di banca dati.

Chiudi

- Questa azione chiude il progetto &kexi; attualmente aperto.

Nuovo

- Da qui puoi seguire l'assistente per creare un nuovo progetto &kexi;.

Importa, esporta o invia...

- Qui puoi seguire l'assistente per importare i dati esistenti per progetto attualmente aperto in &kexi;.

Esci

- Chiude &kexi;.

### La scheda Crea

Dalla scheda Crea puoi creare oggetti che saranno aggiunti al tuo progetto.

Tabella

- La selezione di Tabella ti porta allo strumento di progettazione tabella nella vista di progettazione per permetterti di aggiungere definizioni di campi alla tua tabella.

Interrogazione

- La selezione di Interrogazione ti porta allo strumento di progettazione interrogazioni nella vista di progettazione e ti permette di progettare un'interrogazione per ottenere risultati personalizzati dalle tabelle nel tuo progetto.

Modulo

- La selezione di Modulo ti porta allo strumento di progettazioni moduli nella vista di progettazione per permetterti di aggiungere oggetti al tuo modulo.

Rapporto

- La selezione di Rapporto ti porta allo strumento di progettazione rapporti nella vista di progettazione per permetterti di aggiungere oggetti al tuo rapporto.

Script

- La selezione di Script ti porta nell'editor degli script per permetterti di aggiungere codice personalizzato al tuo progetto o agli oggetti.

### La scheda Dati

Dalla scheda Dati puoi manipolare i dati nelle tue tabelle o oggetti nei vari elementi (moduli, rapporti, ecc)

Taglia

- Taglia, inserisce il dato/oggetto negli appunti e lo rimuove dalla sua posizione attuale.

Copia

- Copia, inserisce il dato/oggetto negli appunti senza rimuoverlo dalla sua posizione attuale.

Incolla

- Incolla, inserisce il dato/l'oggetto grafico che si trova negli appunti nella tabella/nell'oggetto rispettivamente.

Incolla speciale

- Incolla speciale, è usato per inserire dati arbitrari contenuti negli appunti in una tabella in maniera prevedibile, in modo che siano aggiunti correttamente in base alla definizione della tabella.

Trova

- Trova, apre la finestra di dialogo di Trova per poter cercare un testo particolare nei dati della banca dati.

### La scheda Dati esterni

Dalla scheda Dati esterni puoi importare dati da altre fonti nel tuo progetto &kexi;.

Importa dati da file

- Importa dati da file, mostra una finestra di dialogo che ti consente di importare dati da file CSV o di testo semplice in una nuova tabella nel tuo progetto.

Importa tabelle

- Importa tabelle, apre l'assistente per l'importazione di tabelle che ti consente di importare dati da un file `fods`, `mdb`, `ods`, `tsv` o da un altro server di banca dati in una nuova tabella nel tuo progetto.

Esporta dati in un file

- Esporta dati in un file, mostra una finestra di dialogo che ti consente di esportare i dati attuali delle tabelle in un file di testo semplice o in un file CSV.

La tabella deve essere aperta per poter esportare dati da essa in un file.

### La scheda Strumenti

Dalla scheda Strumenti puoi manipolare i tuoi progetti.

Compatta banca dati

- Compatta banca dati, controlla la presenza di piccoli errori nella banca dati e ne riduce la dimensione.

Dovresti compattare la banca dati regolarmente per mantenerla in buono stato, specialmente dopo delle operazioni che coinvolgono molti record (aggiunte e cancellazioni di massa)

### La scheda Progettazione modulo

Dalla scheda Progettazione modulo puoi selezionare gli oggetti da aggiungere al modulo.

Puntatore

- Puntatore, passa alla modalità di selezione degli oggetti.

Selezionando un qualsiasi oggetto si passa alla modalità di inserimento dell'oggetto. Puoi quindi fare clic in qualsiasi punto del modulo per posizionare l'oggetto.

Etichetta

- Un oggetto Etichetta mostra informazioni predefinite in un modulo. Normalmente è usato come didascalia vicino ad altri oggetti collegati a dati.

Casella di testo

- Un oggetto Casella di testo è un contenitore a singola riga per dati contenuti nella tua tabella.

Editor di testi

- Un Editor di testo è un contenitore multiriga per dati contenuti nella tua tabella.

Casella combinata

- Una Casella combinata mostra un elenco di opzioni da cui scegliere.

Casella

- Una Casella permette di per mantenere due o tre stati per i dati (⪚ Acceso/Spento)

Immagine

- Un'Immagine contiene un'immagine legata ad un campo in una tabella.

Pulsante

- Un Pulsante ti consente di definire azioni che devono essere eseguite in seguito ad un clic su di esso.

Riquadro

- Un Riquadro è usato come contenitore per altri oggetti.

Riquadro di gruppo

- Un Riquadro di gruppo è usato per raggruppare altri oggetti e controllarne lo stato.

Oggetto scheda

- Un Oggetto scheda è usato come contenitore per altri oggetti e può avere molte pagine che contengono vari oggetti.

Linea

- Una Linea è usata come separatore logico tra le varie parti di un modulo.

Browser Web

- Un Browser web è un oggetto che consente di visualizzare una pagina web all'interno di un modulo.

Assegna azione

- Assegna azione è usata per assegnare un'azione da eseguire quando si verifica un evento (⪚ il clic su un pulsante).

### La scheda Progettazioni rapporti

Dalla scheda Progettazione rapporto puoi selezionare gli oggetti da aggiungere al tuo rapporto.

Etichetta

- Un oggetto Etichetta mostra informazioni predefinite in un rapporto. Normalmente è usato come didascalia vicino ad altri oggetti collegati a dati.

Campo

- Un oggetto Campo è un contenitore su riga unica per dati contenuti nella tua tabella.

Testo

- Un oggetto Testo è un contenitore multiriga per dati contenuti nella tua tabella.

Immagine

- Un oggetto Immagine contiene un'immagine legata ad un campo in una tabella.

Casella

- Un oggetto Casella permette di per mantenere due o tre stati per i dati (⪚ Acceso/Spento)

Linea

- Una Linea è usata come separatore logico tra le varie parti di un modulo.

Grafico

- Un componente Grafico è usato per aggiungere una rappresentazione visuale dei tuoi dati, presentati tramite un grafico.

Web

- Un oggetto Web è usato per fornire un componente browser web minimale e stampare su un rapporto informazioni che arrivato da un sito locale o web.

Codice a barre

- Un oggetto Codice a barre è usato per creare, a partire dai dati contenuti in un campo, un codice a barre da stampare in un rapporto.

## Appendice A. Introduzione alle banche dati

- Che cos'è una banca dati?

- Banca dati e foglio di calcolo

- Progettazione di una banca dati

- Chi ha bisogno di una banca dati?

- Software per la creazione di banche dati;

### Che cos'è una banca dati?

Una banca dati può essere definita come una collezione di dati su un argomento. È organizzata in modo tale da rendere semplice scorrere le informazioni, apportare delle modifiche oppure aggiungere nuovi elementi.

Guarda il diagramma per uno degli esempi di sopra: una semplice rubrica telefonica.

L'immagine di sopra mostra un insieme di contatti presentati su schede diverse. Sembra che tale scheda possa costituire una singola riga in una tabella:

### Tabella dei contatti

Nome | N. tel.
Joan | 699 23 43 12
Adam | 711 19 77 21

Termini e definizioni: un dato singolo che costituisce parte di una collezione più grande può essere chiamato riga o in maniera più professionale record. La collezione viene generalmente chiamata tabella. Inoltre, il nome più naturale per la tabella è quello che descrive i dati che offre/contiene, cioè Contatti. Ogni riga nella tabella è formata da colonne, spesso chiamate campi. Nella tabella `Contatti` ci sono due colonne (campi): Nome e N. tel.

Per utilizzi più semplici una banca dati può essere costituita da una singola tabella. Molti le considerano equivalenti. Come vedrai, tipicamente avremo bisogno di più di una tabella nel caso di banche dati reali.

Per riassumere, hai appena visto una semplice banca dati con una tabella `Contatti`.

Verifica il contenuto di

### Banca dati e foglio di calcolo

È molto probabile che tu abbia già usato applicazioni per fogli di calcolo come Calligra Sheets, LibreOffice Calc o &Microsoft; Excel. In tal caso, probabilmente ti starai chiedendo: visto che sia un foglio di calcolo che una banca dati hanno delle tabelle, perché dovrei usare una banca dati?

Confrontando i fogli di calcolo con le banche dati puoi incontrare i seguenti problemi, che verranno affrontati in maggior dettaglio in seguito.

#### In cosa una banca dati differisce da un foglio di calcolo?

Superando gradualmente la capacità di un telefono cellulare, amplia la tua tabella `Contatti` aggiungendo una colonna (campo) `Indirizzo`. Aggiungi più numeri di telefono (ufficio, casa) per ogni persona ed aggiungi dei cognomi ai nomi. Per rendere il tutto più facile facciamo le seguenti assunzioni:

- La tabella è limitata a due persone (ovviamente ce ne potrebbero essere centinaia e migliaia in una vera banca dati)

- Non esistono due persone con lo stesso nome e cognome

#### Tabella dei contatti

Nome e cognome | Tel | Indirizzo
Joan Smith | 699 23 43 12 | Western Gate 1, Warsaw
Adam Willson | 711 19 77 21 | London, Frogs Drive 5
Joan Smith | 110 98 98 00 | Western Gate 1
Smith Joan | 312 43 42 22 | Warsaw, Western Gate 1
ADAM Willson | 231 83 02 04 | Frogs Drive 5, London

Una tabella di questo tipo può essere realizzata sia un foglio di calcolo che in una banca dati. Utilizzare un foglio di calcolo è sicuramente molto semplice. Quali problemi emergono a questo punto?

#### Integrità referenziale sui dati

Supponi di utilizzare un foglio di calcolo e di avere la necessità di modificare l'indirizzo di almeno una persona. Nasce un piccolo problema: devi cambiare spesso l'indirizzo su diverse righe. Ad esempio, Joan appare su tre righe. Sorgerebbe un problema serio se dimenticassi di modificarne una - l'indirizzo associato a questa persona risulterebbe ambiguo, quindi i tuoi dati perderebbero l'integrità.

Inoltre non c'è un modo semplice per cancellare una determinata persona dalla tabella dato che devi ricordarti di cancellare tutte le righe che la riguardano.

#### Ridondanza di dati

È direttamente connesso al problema precedente. Nei campi Nome e cognome e Indirizzo vengono inseriti più volte gli stessi dati. È tipico del modo inefficiente con il quale un foglio di calcolo memorizza i dati, poiché la banca dati cresce inutilmente, il che richiede più risorse (dimensione più grande dei dati ed accesso più lento).

Come puoi risolvere questi problemi con una banca dati? Puoi separare le informazioni in porzioni più piccole creando tabelle aggiuntive, come `Persone` con sole due colonne: `Nome e cognome` e `Indirizzo`:

#### Tabella Persone

Nome e cognome | Indirizzo
Joan Smith | Western Gate 1, Warsaw
Adam Willson | Frogs Drive 5, London

Ogni riga della tabella `Persone` corrisponde ad una singola persona. La tabella `Contatti` è d'ora in poi in relazione con la tabella `Persone`.

#### Integrità e validità dei dati

Fai attenzione al modo con il quale vengono inseriti i dati nei campi `Nome e cognome` e `Indirizzo`. Chi inserisce i dati potrebbe commettere degli errori, alcune volte potrebbe essere addirittura negligente. Tra i nostri dati campione abbiamo sia sequenze diverse di inserimento per nome e cognome (Joan Smith e Smith Joan; Adam e ADAM) che un numero ancora maggiore di modi per inserire lo stesso indirizzo. Puoi certamente immaginarne altri.

Il problema summenzionato mostra come, ⪚, quando si cerca un numero di telefono di una persona il cui indirizzo è Western Gate 1, Varsavia non si ottiene un risultato completo. Otterrai solo una riga invece di tre. Inoltre, non troverai neanche tutti i numeri di telefono cercando il valore Joan Smith nel campo `Nome e cognome`, poiché Smith Joan non coinciderà con Joan Smith.

Come puoi risolvere questi problemi usando una banca dati? Lo puoi fare modificando il modello della tabella `Persone` come segue:

1. Dividendo i dati nei campi Nome e cognome in due campi separati: `Nome` e `Cognome`.

2. Dividendo i dati nel campo `Indirizzo` in tre campi diversi: `Via`, `Numero di casa` e `Città`.

3. Garantendo la correttezza dei dati: assicurando che nessun campo sia vuoto; ⪚, dovrai sempre inserire il numero di casa.

Una tabella modificata ha il seguente aspetto:

#### Tabella Persone

Nome | Cognome | Via | Numero di casa | Città
Joan | Smith | Western Gate | 1 | Warsaw
Adam | Willson | Frogs Drive | 5 | London
Vincoli
campo obbligatorio | campo obbligatorio | campo obbligatorio | campo obbligatorio | campo obbligatorio

Grazie all'introduzione del vincolo di campo obbligatorio possiamo essere certi che il dato inserito sarà completo. In altri casi potresti ovviamente permettere l'omissione di alcuni campi quando si inseriscono i dati.

#### Limitare la visualizzazione dei dati

Un foglio di calcolo mostra tutte le righe e le colonne della tabella, il che risulta fastidioso con fogli di dati molto grandi. Puoi ovviamente filtrare ed ordinare le righe nei fogli di calcolo, tuttavia devi essere molto attento quando lo fai. Gli utenti dei fogli di calcolo rischiano di dimenticare che la visualizzazione dei dati è stata filtrata, situazione che può portare a commettere degli errori. Ad esempio, mentre si calcolano delle somme puoi pensare di avere 100 righe di dati mentre in realtà ce ne sono altre 20 nascoste.

Se vuoi lavorare su un piccolo sottoinsieme dei dati, ⪚ per inviarlo ad altri affinché lo modifichino, puoi copiarlo ed incollarlo su un altro foglio di calcolo e, dopo aver apportato le modifiche, ricopiare i dati modificati su quello principale. Una modifica manuale di questo tipo potrebbe causare la perdita di dati o calcoli scorretti.

Per limitare la visualizzazione dei dati, le applicazioni per banche dati offrono interrogazioni, moduli e rapporti.

Un modo molto pratico per limitare la visualizzazione dei dati è la seguente versione estesa della tabella `Persone` descritta in precedenza:

#### Tabella Persone

Nome | Cognome | Via | Numero di casa | Città | Entrata
Joan | Smith | Western Gate | 1 | Warsaw | 2300
Adam | Willson | Frogs Drive | 5 | London | 1900

Supponiamo che la colonna appena introdotta Entrata contenga dati confidenziali. Come puoi condividere, ⪚, i dettagli di un contatto con i tuoi colleghi senza rivelare le loro entrate? È possibile solo se condividi un'interrogazione e non la tabella intera. L'interrogazione potrebbe selezionare tutte le colonne eccetto Entrata. Nel gergo delle banche dati questo tipo di interrogazione viene spesso chiamata vista.

#### Prestazioni e capacità

Probabilmente il tuo computer è abbastanza veloce, tuttavia potrai notare come questo non sia di aiuto con fogli di calcolo lenti e di grosse dimensioni. La loro bassa efficienza è per prima cosa dovuta alla mancanza di indici che accelerano il processo di ricerca dei dati (le banche dati spesso li offrono). Inoltre, se usi cose come gli appunti di sistema, addirittura la copia dei dati potrebbe diventare problematica con il passare del tempo.

I fogli di calcolo che contengono grossi insiemi di dati potrebbero richiedere molto tempo per aprirsi. Un foglio di calcolo carica una grande quantità di dati sulla memoria del computer durante l'apertura. La maggior parte di essi sono probabilmente inutili/non necessari per il momento. Le banche dati, al contrario dei fogli di calcolo, caricano i dati dagli archivi solo quando necessario.

Nella maggior parte dei casi non dovrai preoccuparti di come la banca dati memorizza i suoi dati. Ciò significa che, a differenza dei fogli di calcolo, le banche dati non si curano circa:

- La sequenza delle righe, visto che puoi ordinarle in base alle tue esigenze. Inoltre, puoi visualizzare gli stessi dati in maniere diverse con ordinamenti diversi.

- Lo stesso vale per le colonne (campi) della tabella.

Insieme alla possibilità di limitare la visualizzazione dei dati, descritta nel paragrafo precedente, queste qualità costituiscono i vantaggi di una banca dati.

#### Inserimento dati

Le ultime edizione delle applicazioni per la creazione di fogli di calcolo ti permette di progettare moduli per inserimento dati. Questi tipi di modulo sono per lo più utili se i tuoi dati non possono essere mostrati in maniera conveniente con una visualizzazione tabulare, ⪚ se il testo occupa troppe righe oppure se tutte le colonne non entrano nello schermo.

In questo caso il modo con il quale lavorano i fogli di calcolo è problematico. I campi per inserimento dati vengono collocati liberamente all'interno del foglio di calcolo e molto spesso non sono sicuri rispetto all'intervento (intenzionale od accidentale) dell'utente.

#### Rapporti

Le banche dati permettono il raggruppamento, la limitazione e l'aggregazione di dati in un modulo o in un rapporto. I fogli di calcolo sono generalmente stampanti sotto forma di piccole tabelle senza un pieno controllo automatico sulla divisione delle pagine e sullo schema dei campi.

#### Programmazione

Le applicazioni per la creazione di banche dati contengono spesso linguaggi di programmazione completi. I fogli di calcolo più recenti hanno la stessa capacità, tuttavia i calcoli si limitano alla modifica dei campi del foglio di calcolo e alla mera copia dei dati, senza tener conto della rilevanza e dei vincoli di integrità, citati nei paragrafi precedenti.

L'elaborazione dei dati all'interno di un foglio di calcolo è tipicamente eseguita attraverso una interfaccia utente di tipo grafico, cosa che potrebbe rallentarne la velocità. Le banche dati sono in grado di lavorare in background, al di fuori di interfacce grafiche.

#### Utilizzo multiplo

È difficile immaginare un utilizzo multiplo di un singolo foglio di calcolo. Anche se tecnicamente possibile nell'ambito delle applicazioni più recenti, richiede molta disciplina, attenzione e conoscenza da parte degli utenti, e ciò non può essere garantito.

Un modo classico per condividere i dati salvati in un foglio di calcolo con altre persone è di inviarlo come nella sua interezza come file (tipicamente utilizzando la posta elettronica) oppure rendendolo disponibile come file in una rete di computer. Questo modo di lavorare è porta vantaggi in un grosso gruppo di persone - i dati necessari in un particolare momento potrebbero essere bloccati da un'altra persona.

D'altro canto, le banche dati sono state progettate principalmente con gli accessi multiutente in mente. È permesso il blocco a livello di una riga di una determinata tabella persino nelle versioni più semplici, rendendo semplice la condivisione dei dati.

#### Sicurezza

Rende sicuro un foglio di calcolo oppure le sue specifiche sezioni con una password è solamente un'azione simbolica. Dopo aver fornito un foglio di calcolo in una rete di computer, ogni persona in grado di copiarlo potrà provare ad eludere la protezione. A volte non è così difficile dato che la password è memorizzata all'interno del file stesso.

È altrettanto facile eludere il blocco alle modifiche ed il blocco alla copia per un foglio di calcolo (o per una sua parte).

Le banche dati (ad eccezione di quelle salvate in un file invece che su un server) non hanno bisogno di essere disponibili su un singolo file. Potrai accedere ad esse tramite una rete di calcolatori, tipicamente fornendo un nome utente ed una password. Otterrai l'accesso solamente a quelle aree (tabelle, moduli o addirittura specifiche righe e colonne) che ti sono state assegnate impostando appropriati diritti di accesso.

I diritti di accesso possono influenzare la possibilità di modificare o di leggere i dati. Se non ti è reso disponibile alcun dato, non verrà neanche inviato al tuo computer in modo tale che non ci sia modo di crearne una copia così facilmente, come accade per i fogli di calcolo.

### Progettazione di una banca dati

La progettazione di una banca dati richiede una pianificazione attenta. Nota che la riprogettazione della tabella `Persone` proposta nella sezione Integrità e validità dei dati può generare dei problemi quando la tabella viene riempita di dati. Ad esempio, rinominare un campo è un compito semplice, ma separare il campo `Indirizzo` in campi separati richiede un lavoro attento e tedioso.

Per evitare queste situazioni, pensa di nuovo al progetto della tua banca dati prima di crearla sul tuo computer, e prima che tu e gli altri comincino ad utilizzarla. In questo modo, investendo del tempo all'inizio, probabilmente risparmierai del tempo durante l'uso quotidiano.

### Chi ha bisogno di una banca dati?

#### Rimani ai fogli di calcolo se:

- Le tue esigenze sono limitate ed i tuoi dati non cresceranno mai così tanto (puoi realmente prevederlo?)

- Non riesci ad acquisire la metodologia necessaria alla costruzione di una banca dati. Tuttavia puoi considerare sia di delegare questa operazione a qualcun altro oppure di utilizzare strumenti più semplici.

- Utilizzi fogli di calcolo complicati e ti manca il tempo o il denaro per spostarti su una banca dati. Pensa, oppure chiedi a qualcuno, se questo non ti porti in un vicolo cieco. Non fare affidamento in strumenti "magici" (per quanto ben fatti) che convertono i tuoi fogli di calcolo in banche dati.

#### Considera l'utilizzo di banche dati se:

- La tua collezione di dati si espande ogni settimana.

- Crei spesso nuovi fogli di calcolo, effettui delle operazioni di copia all'interno di essi e ti sembra che questo lavoro stia diventando sempre più noioso. In tal caso lo sforzo impiegato nella trasformazione in una banca dati ripaga facilmente.

- Crei dei rapporti per i quali la vista a tabelle di un foglio di calcolo non è sufficiente. Potresti allora pensare di utilizzare una banca dati con viste a modello.

### Software per la creazione di banche dati

Finora hai imparato le caratteristiche generali delle banche dati senza aver visto in dettaglio le applicazioni specifiche per la loro progettazione.

Le prime banche dati furono costruite all'interno di grandi computer mainframe negli anni 60, come gli IBM S⪚ystem/360. Non era ancora l'era dei PC e quindi queste banche dati avevano bisogno di personale altamente specializzato. Sebbene l'hardware dei vecchi computer fosse inaffidabile, fossero incredibilmente più lenti ed offrissero una capacità di memorizzazione minore, una caratteristica delle banche dati rimane ancora la più affascinante: l'accesso ai dati da parte di diversi utenti all'interno di una rete.

Negli anni 70 alcuni scienziati crearono la teoria della banche dati relazionali (termini come tabella, record, colonna (campo) e relazionalità e molti altri). Sulla base di questa teoria vennero creati software di banche dati IBM DB2 ed Oracle, che sono stati sviluppati ed utilizzati fino ai nostri giorni. Negli ultimi anni 70 vennero costruiti i primi PC. I loro utenti poterono (gradualmente) utilizzare differenti tipi di applicazioni, incluse quelle per la costruzione delle banche dati.

Quando si tratta di grandi banche dati nelle aziende, la situazione non cambia: richiedono ancora computer potenti o complessi chiamati cluster. Tutto questo va, però, oltre gli scopi del manuale.

Nell'ambito delle banche dati accessibili con interfacce utenti grafiche per PC puoi scegliere tra i seguenti:

- DBase - uno strumento per operazioni su banche dati per DOS, diffuso negli anni 80. I file nel formato DBase vengono ancora utilizzati in alcuni casi specifici a causa della loro semplicità.

- FoxPro - un'applicazione simile a DBase (primi anni 90). Dopo essere stato acquisito da Microsoft vennero introdotte le interfacce utente grafiche e venne utilizzato quindi per creare banche dati sui PC. Questo prodotto viene ancora distribuito, anche se è ormai un po' obsoleto.

- Microsoft Access - un'applicazione per banche dati (progettazione sui dati e attraverso l'interfaccia grafica) con molte semplificazioni, per questo adatta ai principianti, progettata nei tardi anni 80, basato su un'architettura a 16 bit. Questo prodotto viene offerto ed è ampiamente utilizzato ancora ora, specialmente nelle piccole aziende, dove l'efficienza ed i requisiti di utenza multipla non sono fortemente richiesti.

- FileMaker - applicazione diffusa simile a MS Access per la semplicità, operativa sulle piattaforme Windows e Macintosh, distribuito sin dal 1985.

- Kexi - un'applicazione multipiattaforma (&UNIX;/&Linux;, Windows, &MacOS; X) progettata nel 2003, sviluppata nel rispetto dei principi OpenSource, parte della comunità globale KDE, che tra le altre cose sviluppa un ambiente grafico per sistemi &UNIX;/&Linux;. Un contributo significativo allo sviluppo di Kexi è stato apportato dalla società OpenOffice Poland.

## Appendice B. Confronto di Kexi con altre applicazioni per banche dati

- Tipi di dati

### Tipi di dati

Sebbene differenti applicazioni per banche dati tendono a fornire funzioni simili, esse usano spesso una terminologia diversa. A tuo vantaggio, questa appendice mostra come la terminologia utilizzata da &kexi; corrisponda a quella utilizzata da altre applicazioni per banche dati. Per questo, il presente capitolo può essere utile durante la migrazione di una banca dati da un'applicazione all'altra.

La tabella in basso mostra come i tipi di dato in &kexi; corrispondano a quelli presenti in altre applicazioni per le banche dati.

Alcuni dei tipi di dati qui elencati sono sottotipi di altri. Ad esempio, il tipo Testo lungo è un sottotipo del tipo Testo. Per usare un sottotipo in &kexi;, dovresti selezionare quello di base corrispondente (in questo caso Testo) nella finestra di progettazione della tabella e poi selezionare il sottotipo utilizzando l'impostazione Sottotipo nell'Editor delle proprietà.

### Confronto tra i tipi di dati usati in Kexi e dalle altre applicazioni per banche dati

&kexi; | MS Access | dBase/FoxPro | Paradox
Testo (testo) | Testo | Carattere | Valore alfanumerico
Testo lungo (testo lungo) | Appunto | Appunto | Appunto
Data/Ora (data/ora) | Data, ora | Data | DataOra
Numero intero (numero intero) | Numero (intero) | Valore numerico | Intero
Numero intero grande (numero intero grande) | Intero Long | Valore numerico | Intero Long
Numero a virgola mobile (numero a virgola mobile) | Numero a precisione singola/doppia | Float | Numero

## Appendice C. Parole riservate per SQL

La seguente lista contiene parola che sono usate internamente da &kexi; quando opera con fonti di dati.

Quando progetti una banca dati dovresti fare del tuo meglio per evitare l'uso di queste parole riservate, perché altrimenti potresti finire con l'avere problemi con il file della tua banca dati o anche rovinarlo.

Se vuoi comunque usare delle parole riservate, racchiudile tra doppi apici .

### Parole riservate SQL in Kexi

Questa lista contiene parole chiave riservate per l'utilizzo in SQL di Kexi:

- AFTER

- ALL

- ASC

- BEFORE

- BEGIN

- BETWEEN

- BY

- CASCADE

- CASE

- CHECK

- COLLATE

- COMMIT

- CONSTRAINT

- CROSS

- DATABASE

- DEFAULT

- DELETE

- DESC

- DISTINCT

- DROP

- END

- ELSE

- EXPLAIN

- FOR

- FOREIGN

- FULL

- GROUP

- HAVING

- IGNORE

- INDEX

- INNER

- INSERT

- INTO

- KEY

- LIMIT

- MATCH

- NATURAL

- OFFSET

- ORDER

- OUTER

- PRIMARY

- REFERENCES

- REPLACE

- RESTRICT

- ROLLBACK

- ROW

- SET

- TEMPORARY

- THEN

- TRANSACTION

- UNION

- UNIQUE

- UPDATE

- USING

- VALUES

- WHEN

### Parole riservate del driver SQLite di Kexi

Questa lista contiene parole chiave riservate per l'utilizzo da parte del driver SQLite di Kexi:

- ABORT

- ATTACH

- CLUSTER

- CONFLICT

- DEFERRED

- DEFERRABLE

- DETACH

- EACH

- EXCEPT

- FAIL

- GLOB

- IMMEDIATE

- INITIALLY

- INSTEAD

- INTERSECT

- ISNULL

- NOTNULL

- OF

- PRAGMA

- RAISE

- STATEMENT

- TEMP

- TRIGGER

- VACUUM

- VIEW

### Parole riservate del driver MySQL di Kexi

Questa lista contiene parole chiave riservate per l'utilizzo da parte del driver MySQL di Kexi:

- ACTION

- ADD

- AGAINST

- AGGREGATE

- ALTER

- ANALYZE

- ANY

- ASCII

- AUTO_INCREMENT

- AVG

- AVG_ROW_LENGTH

- BACKUP

- BDB

- BERKELEYDB

- BIGINT

- BINARY

- BINLOG

- BIT

- BLOB

- BOOL

- BOOLEAN

- BOTH

- BTREE

- BYTE

- CACHE

- CHANGE

- CHANGED

- CHAR

- CHARACTER

- CHARSET

- CHECKSUM

- CIPHER

- CLIENT

- CLOSE

- COLLATION

- COLUMN

- COLUMNS

- COMMENT

- COMMITTED

- COMPRESSED

- CONCURRENT

- CONVERT

- CUBE

- CURRENT_DATE

- CURRENT_TIME

- CURRENT_TIMESTAMP

- CURRENT_USER

- DATA

- DATABASES

- DATE

- DATETIME

- DAY

- DAY_HOUR

- DAY_MICROSECOND

- DAY_MINUTE

- DAY_SECOND

- DEALLOCATE

- DEC

- DECIMAL

- DELAYED

- DELAY_KEY_WRITE

- DESCRIBE

- DES_KEY_FILE

- DIRECTORY

- DISABLE

- DISCARD

- DISTINCTROW

- DIV

- DO

- DOUBLE

- DUAL

- DUMPFILE

- DUPLICATE

- DYNAMIC

- ENABLE

- ENCLOSED

- ENGINE

- ENGINES

- ENUM

- ERRORS

- ESCAPE

- ESCAPED

- EVENTS

- EXECUTE

- EXISTS

- EXPANSION

- EXTENDED

- FALSE

- FAST

- FIELDS

- FILE

- FIRST

- FIXED

- FLOAT

- FLOAT4

- FLOAT8

- FLUSH

- FORCE

- FULLTEXT

- FUNCTION

- GEOMETRY

- GEOMETRYCOLLECTION

- GET_FORMAT

- GLOBAL

- GRANT

- GRANTS

- HANDLER

- HASH

- HELP

- HIGH_PRIORITY

- HOSTS

- HOUR

- HOUR_MICROSECOND

- HOUR_MINUTE

- HOUR_SECOND

- IDENTIFIED

- IF

- IMPORT

- INDEXES

- INFILE

- INNOBASE

- INNODB

- INSERT_METHOD

- INT

- INT1

- INT2

- INT3

- INT4

- INT8

- INTERVAL

- IO_THREAD

- ISOLATION

- ISSUER

- KEYS

- KILL

- LAST

- LEADING

- LEAVES

- LEVEL

- LINES

- LINESTRING

- LOAD

- LOCAL

- LOCALTIME

- LOCALTIMESTAMP

- LOCK

- LOCKS

- LOGS

- LONG

- LONGBLOB

- LONGTEXT

- LOW_PRIORITY

- MASTER

- MASTER_CONNECT_RETRY

- MASTER_HOST

- MASTER_LOG_FILE

- MASTER_LOG_POS

- MASTER_PASSWORD

- MASTER_PORT

- MASTER_SERVER_ID

- MASTER_SSL

- MASTER_SSL_CA

- MASTER_SSL_CAPATH

- MASTER_SSL_CERT

- MASTER_SSL_CIPHER

- MASTER_SSL_KEY

- MASTER_USER

- MAX_CONNECTIONS_PER_HOUR

- MAX_QUERIES_PER_HOUR

- MAX_ROWS

- MAX_UPDATES_PER_HOUR

- MEDIUM

- MEDIUMBLOB

- MEDIUMINT

- MEDIUMTEXT

- MICROSECOND

- MIDDLEINT

- MINUTE

- MINUTE_MICROSECOND

- MINUTE_SECOND

- MIN_ROWS

- MOD

- MODE

- MODIFY

- MONTH

- MULTILINESTRING

- MULTIPOINT

- MULTIPOLYGON

- NAMES

- NATIONAL

- NDB

- NDBCLUSTER

- NCHAR

- NEW

- NEXT

- NO

- NONE

- NO_WRITE_TO_BINLOG

- NUMERIC

- NVARCHAR

- OLD_PASSWORD

- ONE_SHOT

- OPEN

- OPTIMIZE

- OPTION

- OPTIONALLY

- OUTFILE

- PACK_KEYS

- PARTIAL

- PASSWORD

- POINT

- POLYGON

- PRECISION

- PREPARE

- PREV

- PRIVILEGES

- PROCEDURE

- PROCESS

- PROCESSLIST

- PURGE

- QUERY

- QUICK

- RAID0

- RAID_CHUNKS

- RAID_CHUNKSIZE

- RAID_TYPE

- READ

- REAL

- REGEXP

- RELAY_LOG_FILE

- RELAY_LOG_POS

- RELAY_THREAD

- RELOAD

- RENAME

- REPAIR

- REPEATABLE

- REPLICATION

- REQUIRE

- RESET

- RESTORE

- RETURNS

- REVOKE

- RLIKE

- ROLLUP

- ROWS

- ROW_FORMAT

- RTREE

- SAVEPOINT

- SECOND

- SECOND_MICROSECOND

- SEPARATOR

- SERIAL

- SERIALIZABLE

- SESSION

- SHARE

- SHOW

- SHUTDOWN

- SIGNED

- SIMPLE

- SLAVE

- SMALLINT

- SOME

- SONAME

- SOUNDS

- SPATIAL

- SQL_BIG_RESULT

- SQL_BUFFER_RESULT

- SQL_CACHE

- SQL_CALC_FOUND_ROWS

- SQL_NO_CACHE

- SQL_SMALL_RESULT

- SQL_THREAD

- SSL

- START

- STARTING

- STATUS

- STOP

- STORAGE

- STRAIGHT_JOIN

- STRING

- STRIPED

- SUBJECT

- SUPER

- TABLES

- TABLESPACE

- TERMINATED

- TEXT

- TIME

- TIMESTAMP

- TINYBLOB

- TINYINT

- TINYTEXT

- TRAILING

- TRUE

- TRUNCATE

- TYPE

- TYPES

- UNCOMMITTED

- UNICODE

- UNLOCK

- UNSIGNED

- UNTIL

- USAGE

- USE

- USER

- USER_RESOURCES

- USE_FRM

- UTC_DATE

- UTC_TIME

- UTC_TIMESTAMP

- VALUE

- VARBINARY

- VARCHAR

- VARCHARACTER

- VARIABLES

- VARYING

- WARNINGS

- WITH

- WORK

- WRITE

- X509

- YEAR

- YEAR_MONTH

- ZEROFILL

### Parole riservate del driver PostgreSQL di Kexi

Questa lista contiene parole chiave riservate per l'utilizzo da parte del driver pqxx di Kexi:

- ABORT

- ABSOLUTE

- ACCESS

- ACTION

- ADD

- AGGREGATE

- ALTER

- ANALYSE

- ANALYZE

- ANY

- ARRAY

- ASSERTION

- ASSIGNMENT

- AT

- AUTHORIZATION

- BACKWARD

- BIGINT

- BINARY

- BIT

- BOOLEAN

- BOTH

- CACHE

- CALLED

- CAST

- CHAIN

- CHAR

- CHARACTER

- CHARACTERISTICS

- CHECKPOINT

- CLASS

- CLOSE

- CLUSTER

- COALESCE

- COLUMN

- COMMENT

- COMMITTED

- CONSTRAINTS

- CONVERSION

- CONVERT

- COPY

- CREATEDB

- CREATEUSER

- CURRENT_DATE

- CURRENT_TIME

- CURRENT_TIMESTAMP

- CURRENT_USER

- CURSOR

- CYCLE

- DAY

- DEALLOCATE

- DEC

- DECIMAL

- DECLARE

- DEFAULTS

- DEFERRABLE

- DEFERRED

- DEFINER

- DELIMITER

- DELIMITERS

- DO

- DOMAIN

- DOUBLE

- EACH

- ENCODING

- ENCRYPTED

- ESCAPE

- EXCEPT

- EXCLUDING

- EXCLUSIVE

- EXECUTE

- EXISTS

- EXTERNAL

- EXTRACT

- FALSE

- FETCH

- FIRST

- FLOAT

- FORCE

- FORWARD

- FREEZE

- FUNCTION

- GLOBAL

- GRANT

- HANDLER

- HOLD

- HOUR

- ILIKE

- IMMEDIATE

- IMMUTABLE

- IMPLICIT

- INCLUDING

- INCREMENT

- INHERITS

- INITIALLY

- INOUT

- INPUT

- INSENSITIVE

- INSTEAD

- INT

- INTERSECT

- INTERVAL

- INVOKER

- ISNULL

- ISOLATION

- LANCOMPILER

- LANGUAGE

- LAST

- LEADING

- LEVEL

- LISTEN

- LOAD

- LOCAL

- LOCALTIME

- LOCALTIMESTAMP

- LOCATION

- LOCK

- MAXVALUE

- MINUTE

- MINVALUE

- MODE

- MONTH

- MOVE

- NAMES

- NATIONAL

- NCHAR

- NEW

- NEXT

- NO

- NOCREATEDB

- NOCREATEUSER

- NONE

- NOTHING

- NOTIFY

- NOTNULL

- NULLIF

- NUMERIC

- OF

- OFF

- OIDS

- OLD

- ONLY

- OPERATOR

- OPTION

- OUT

- OVERLAPS

- OVERLAY

- OWNER

- PARTIAL

- PASSWORD

- PATH

- PENDANT

- PLACING

- POSITION

- PRECISION

- PREPARE

- PRESERVE

- PRIOR

- PRIVILEGES

- PROCEDURAL

- PROCEDURE

- READ

- REAL

- RECHECK

- REINDEX

- RELATIVE

- RENAME

- RESET

- RESTART

- RETURNS

- REVOKE

- ROWS

- RULE

- SCHEMA

- SCROLL

- SECOND

- SECURITY

- SEQUENCE

- SERIALIZABLE

- SESSION

- SESSION_USER

- SETOF

- SHARE

- SHOW

- SIMPLE

- SMALLINT

- SOME

- STABLE

- START

- STATEMENT

- STATISTICS

- STDIN

- STDOUT

- STORAGE

- STRICT

- SUBSTRING

- SYSID

- TEMP

- TEMPLATE

- TIME

- TIMESTAMP

- TOAST

- TRAILING

- TREAT

- TRIGGER

- TRIM

- TRUE

- TRUNCATE

- TRUSTED

- TYPE

- UNENCRYPTED

- UNKNOWN

- UNLISTEN

- UNTIL

- USAGE

- USER

- VACUUM

- VALID

- VALIDATOR

- VARCHAR

- VARYING

- VERBOSE

- VERSION

- VIEW

- VOLATILE

- WITH

- WITHOUT

- WORK

- WRITE

- YEAR

- ZONE

### Parole riservate del driver Oracle di Kexi

Questa lista contiene parole chiave riservate per l'utilizzo da parte del driver Oracle di Kexi:

- ADMIN

- AFTER

- ALLOCATE

- ANALYZE

- ARCHIVE

- ARCHIVELOG

- AUTHORIZATION

- AVG

- BACKUP

- BECOME

- BEFORE

- BEGIN

- BLOCK

- BODY

- CACHE

- CANCEL

- CASCADE

- CHANGE

- CHARACTER

- CHECKPOINT

- CLOSE

- COBOL

- COMMIT

- COMPILE

- CONSTRAINT

- CONSTRAINTS

- CONTENTS

- CONTINUE

- CONTROLFILE

- COUNT

- CURSOR

- CYCLE

- DATABASE

- DATAFILE

- DATE

- DBA

- DEC

- DECLARE

- DISABLE

- DISMOUNT

- DOUBLE

- DUMP

- EACH

- ENABLE

- END

- ESCAPE

- EVENTS

- EXCEPT

- EXCEPTIONS

- EXEC

- EXECUTE

- EXPLAIN

- EXTENT

- EXTERNALLY

- FETCH

- FLUSH

- FORCE

- FOREIGN

- FORTRAN

- FOUND

- FREELIST

- FREELISTS

- FUNCTION

- GO

- GOTO

- GROUPS

- INCLUDING

- INDICATOR

- INITRANS

- INSTANCE

- INT

- KEY

- LANGUAGE

- LAYER

- LINK

- LISTS

- LOGFILE

- MANAGE

- MANUAL

- MAX

- MAXDATAFILES

- MAXINSTANCES

- MAXLOGFILES

- MAXLOGHISTORY

- MAXLOGMEMBERS

- MAXTRANS

- MAXVALUE

- MIN

- MINEXTENTS

- MINVALUE

- MODULE

- MOUNT

- NEW

- NEXT

- NOARCHIVELOG

- NOCACHE

- NOCYCLE

- NOMAXVALUE

- NOMINVALUE

- NONE

- NOORDER

- NORESETLOGS

- NORMAL

- NOSORT

- NUMERIC

- OFF

- OLD

- ONLY

- OPEN

- OPTIMAL

- OWN

- PACKAGE

- PARALLEL

- PCTINCREASE

- PCTUSED

- PLAN

- PLI

- PRECISION

- PRIMARY

- PRIVATE

- PROCEDURE

- PROFILE

- QUOTA

- READ

- REAL

- RECOVER

- REFERENCES

- REFERENCING

- RESETLOGS

- RESTRICTED

- REUSE

- ROLE

- ROLES

- ROLLBACK

- SAVEPOINT

- SCHEMA

- SCN

- SECTION

- SEGMENT

- SEQUENCE

- SHARED

- SNAPSHOT

- SOME

- SORT

- SQL

- SQLCODE

- SQLERROR

- SQLSTATE

- STATEMENT_ID

- STATISTICS

- STOP

- STORAGE

- SUM

- SWITCH

- SYSTEM

- TABLES

- TABLESPACE

- TEMPORARY

- THREAD

- TIME

- TRACING

- TRANSACTION

- TRIGGERS

- TRUNCATE

- UNDER

- UNLIMITED

- UNTIL

- USE

- USING

- WHEN

- WORK

- WRITE

### Parole riservate del driver Sybase di Kexi

Questa lista contiene parole chiave riservate per l'utilizzo da parte del driver Sybase di Kexi:

- ACTION

- ADD

- AGAINST

- AGGREGATE

- ALTER

- ANALYZE

- ANY

- ASCII

- AUTOINCREMENT

- AVG

- AVG_ROW_LENGTH

- BACKUP

- BDB

- BERKELEYDB

- BIGINT

- BINARY

- BINLOG

- BIT

- BLOB

- BOOL

- BOOLEAN

- BOTH

- BTREE

- BYTE

- CACHE

- CHANGE

- CHANGED

- CHAR

- CHARACTER

- CHARSET

- CHECKSUM

- CIPHER

- CLIENT

- CLOSE

- COLLATION

- COLUMN

- COLUMNS

- COMMENT

- COMMITTED

- COMPRESSED

- CONCURRENT

- CONVERT

- CUBE

- CURRENT_DATE

- CURRENT_TIME

- CURRENT_TIMESTAMP

- CURRENT_USER

- DATA

- DATABASES

- DATE

- DATETIME

- DAY

- DAY_HOUR

- DAY_MICROSECOND

- DAY_MINUTE

- DAY_SECOND

- DEALLOCATE

- DEC

- DECIMAL

- DELAYED

- DELAY_KEY_WRITE

- DESCRIBE

- DES_KEY_FILE

- DIRECTORY

- DISABLE

- DISCARD

- DISTINCTROW

- DIV

- DO

- DOUBLE

- DUAL

- DUMPFILE

- DUPLICATE

- DYNAMIC

- ENABLE

- ENCLOSED

- ENGINE

- ENGINES

- ENUM

- ERRORS

- ESCAPE

- ESCAPED

- EVENTS

- EXECUTE

- EXISTS

- EXPANSION

- EXTENDED

- FALSE

- FAST

- FIELDS

- FILE

- FIRST

- FIXED

- FLOAT

- FLOAT4

- FLOAT8

- FLUSH

- FORCE

- FULLTEXT

- FUNCTION

- GEOMETRY

- GEOMETRYCOLLECTION

- GET_FORMAT

- GLOBAL

- GRANT

- GRANTS

- HANDLER

- HASH

- HELP

- HIGH_PRIORITY

- HOSTS

- HOUR

- HOUR_MICROSECOND

- HOUR_MINUTE

- HOUR_SECOND

- IDENTIFIED

- IF

- IMPORT

- INDEXES

- INFILE

- INNOBASE

- INNODB

- INSERT_METHOD

- INT

- INT1

- INT2

- INT3

- INT4

- INT8

- INTERVAL

- IO_THREAD

- ISOLATION

- ISSUER

- KEYS

- KILL

- LAST

- LEADING

- LEAVES

- LEVEL

- LINES

- LINESTRING

- LOAD

- LOCAL

- LOCALTIME

- LOCALTIMESTAMP

- LOCK

- LOCKS

- LOGS

- LONG

- LONGBLOB

- LONGTEXT

- LOW_PRIORITY

- MASTER

- MASTER_CONNECT_RETRY

- MASTER_HOST

- MASTER_LOG_FILE

- MASTER_LOG_POS

- MASTER_PASSWORD

- MASTER_PORT

- MASTER_SERVER_ID

- MASTER_SSL

- MASTER_SSL_CA

- MASTER_SSL_CAPATH

- MASTER_SSL_CERT

- MASTER_SSL_CIPHER

- MASTER_SSL_KEY

- MASTER_USER

- MAX_CONNECTIONS_PER_HOUR

- MAX_QUERIES_PER_HOUR

- MAX_ROWS

- MAX_UPDATES_PER_HOUR

- MEDIUM

- MEDIUMBLOB

- MEDIUMINT

- MEDIUMTEXT

- MICROSECOND

- MIDDLEINT

- MINUTE

- MINUTE_MICROSECOND

- MINUTE_SECOND

- MIN_ROWS

- MOD

- MODE

- MODIFY

- MONTH

- MULTILINESTRING

- MULTIPOINT

- MULTIPOLYGON

- NAMES

- NATIONAL

- NDB

- NDBCLUSTER

- NCHAR

- NEW

- NEXT

- NO

- NONE

- NO_WRITE_TO_BINLOG

- NUMERIC

- NVARCHAR

- OLD_PASSWORD

- ONE_SHOT

- OPEN

- OPTIMIZE

- OPTION

- OPTIONALLY

- OUTFILE

- PACK_KEYS

- PARTIAL

- PASSWORD

- POINT

- POLYGON

- PRECISION

- PREPARE

- PREV

- PRIVILEGES

- PROCEDURE

- PROCESS

- PROCESSLIST

- PURGE

- QUERY

- QUICK

- RAID0

- RAID_CHUNKS

- RAID_CHUNKSIZE

- RAID_TYPE

- READ

- REAL

- REGEXP

- RELAY_LOG_FILE

- RELAY_LOG_POS

- RELAY_THREAD

- RELOAD

- RENAME

- REPAIR

- REPEATABLE

- REPLICATION

- REQUIRE

- RESET

- RESTORE

- RETURNS

- REVOKE

- RLIKE

- ROLLUP

- ROWS

- ROW_FORMAT

- RTREE

- SAVEPOINT

- SECOND

- SECOND_MICROSECOND

- SEPARATOR

- SERIAL

- SERIALIZABLE

- SESSION

- SHARE

- SHOW

- SHUTDOWN

- SIGNED

- SIMPLE

- SLAVE

- SMALLINT

- SOME

- SONAME

- SOUNDS

- SPATIAL

- SQL_BIG_RESULT

- SQL_BUFFER_RESULT

- SQL_CACHE

- SQL_CALC_FOUND_ROWS

- SQL_NO_CACHE

- SQL_SMALL_RESULT

- SQL_THREAD

- SSL

- START

- STARTING

- STATUS

- STOP

- STORAGE

- STRAIGHT_JOIN

- STRING

- STRIPED

- SUBJECT

- SUPER

- TABLES

- TABLESPACE

- TERMINATED

- TEXT

- TIME

- TIMESTAMP

- TINYBLOB

- TINYINT

- TINYTEXT

- TRAILING

- TRUE

- TRUNCATE

- TYPE

- TYPES

- UNCOMMITTED

- UNICODE

- UNLOCK

- UNSIGNED

- UNTIL

- USAGE

- USE

- USER

- USER_RESOURCES

- USE_FRM

- UTC_DATE

- UTC_TIME

- UTC_TIMESTAMP

- VALUE

- VARBINARY

- VARCHAR

- VARCHARACTER

- VARIABLES

- VARYING

- WARNINGS

- WITH

- WORK

- WRITE

- X509

- YEAR

- YEAR_MONTH

- ZEROFILL

### Parole riservate del driver xBase di Kexi

Questa lista contiene parole chiave riservate per l'utilizzo da parte del driver xBase di Kexi:

- ABORT

- ATTACH

- CLUSTER

- CONFLICT

- DEFERRED

- DEFERRABLE

- DETACH

- EACH

- EXCEPT

- FAIL

- GLOB

- IMMEDIATE

- INITIALLY

- INSTEAD

- INTERSECT

- ISNULL

- NOTNULL

- OF

- PRAGMA

- RAISE

- STATEMENT

- TEMP

- TRIGGER

- VACUUM

- VIEW

Le parole riservate sono separate per ogni driver, così possono essere usate come riferimento.

## Appendix D. Formati di file supportati

### Valori separati da virgola ((CSV)

&kexi; è in grado di importare da ed esportare dati verso molti formati di file separati da virgole (Comma-separated values, file CSV). La maggior parte dei programmi di foglio elettronico e di gestione di banca dati possono importare ed esportare dati in questo formato, rendendolo un formato adatto per trasferire dati testuali tra applicazioni diverse.

&kexi; supporta inoltre un certo numero di opzioni che possono essere configurate prima di effettuare un'importazione:

- tipo di dati per ogni colonna,

- altri delimitatori per i campi come le tabulazioni,

- diversi caratteri di citazione per il testo,

- un certo numero di record può essere saltato se necessario,

- i delimitatori duplicati possono essere saltati,

- i valori della prima colonna possono essere usati per impostare i nomi delle colonne,

- la codifica del testo (quella predefinita è UTF-8),

- formato della data (quello definito dal sistema operativo è il predefinito),

- rimozione dei caratteri spaziatori all'inizio e alla fine dei contenuti di tipo testo.

In fase di importazione &kexi; mostra un'anteprima dei dati importati. L'insieme di opzioni più adatto viene riconosciuto automaticamente da &kexi; in base al file CSV fornito.

### Formato di file Microsoft Access (MDB)

#### Panoramica

Il supporto per l'importazione di banche dati Microsoft Access (2003 o inferiore) è integrato in &kexi;. Le banche dati Access possono solo essere importate in una banca dati &kexi;. Non può essere usato per modificare la banca dati o per esportarla in una di tipo Access. Tuttavia, dovrebbe essere anche in grado di importare banche dati create da altre applicazioni che usano il motore JET. L'importazione di banche dati `.accdb` introdotte da MS Access 2007 non è attualmente supportata.

Per importare una banca dati:

1. Nel menu &kexi; seleziona il comando Importa, esporta o invia....

2. Fai clic sul pulsante Importa banca dati.

3. Usa la procedura guidata di importazione selezionando il file .mdb desiderato.

#### Capacità

La funzione di importazione è stata usata con successo per importare la banca dati Northwind ben nota agli utenti di MS Access. Molti altri modelli di banche dati Access possono essere importati.

#### Funzionalità supportate

L'importazione dei tipi di campi riportati di seguito è stata testata, e normalmente funziona bene:

- Campi di testo

- Campi memo

- Campi data

- Valori numerici

#### Funzionalità non supportate

Attualmente solo le tabelle sono importate. Durante l'importazione &kexi; ignora i seguenti oggetti:

- Interrogazioni

- Moduli

- Script

- Rapporti

Le seguenti funzionalità non sono state testate:

- Importazione di oggetti binari

## Riconoscimenti e licenza

Copyright di &kexi; 2002-2012 la squadra di Kexi

Sviluppatori di Kexi:

- Jaroslaw Staniek (staniek kde.org)

- OpenOffice Polska, LLC (info openoffice.com.pl)

- Lucijan Busch (lucijan kde.org)

- Cedric Pasteur (cedric.pasteur free.fr)

- Adam Pigg (adam piggz.fsnet.co.uk)

- Martin Ellis (martin.ellis kdemail.net)

- Sebastian Sauer (mail dipe.org)

- Christian Nitschkowski (segfault_ii web.de)

- Peter Simonsson (psn linux.se)

- Joseph Wenninger (jowenn kde.org)

- Seth Kurzenberg (seth cql.com)

- Laurent Montel (montel kde.org)

- Till Busch (till bux.at)

Documentazione a cura di Martin A. Ellis (martin.ellis kdemail.net), Jaroslaw Staniek (staniek kde.org) con contributi da parte di Anne-Marie Mahfouf, Raphael Langerhorst, Michal Kubicki e Aron Stansvik.

Questo programma è rilasciato secondo i termini della licenza GNU Lesser General Public License.

Andrea Di Mennaa.dimenna@libero.it

Luigi Toscanoluigi.toscano@tiscali.it

&underFDL;
&documentation.index;