---
title: Sviluppare applicazioni con un assistente intelligente per la gestione dei database
date: 2023-03-20
categories:
  - app-development
  - database
  - development
  - low-code
tags:
  - app-development
  - databases
  - mobiletogether
  - sql
description: Lavorare con dati relazionali come backend di un'applicazione può essere complesso. Ecco un approccio innovativo che lo rende più veloce, più semplice e più accessibile a un'ampia gamma di sviluppatori.
---
Status: #blog

Tags:  #app-development #databases #mobiletogether #sql

Categories: [mobile-development](/blog/it/category/mobile-development.md) | [database + sql](/blog/it/category/database-sql.md) | [development](/blog/it/category/development.md) | [low-code+no-code](/blog/it/category/low-codeno-code.md)
# Sviluppare applicazioni con un assistente intelligente per la gestione dei database

Le soluzioni basate sui dati, come i database e le applicazioni aziendali, si basano sulla connessione e sull'interazione con i database backend. Tuttavia, i database relazionali backend memorizzano i dati in tabelle che riflettono complesse relazioni tra i dati. Questo offre numerosi vantaggi per una gestione efficace dei dati e per l'integrità dei dati, ma può rendere difficile l'accesso e l'elaborazione dei dati in modi nuovi. Gli sviluppatori di applicazioni devono avere una conoscenza approfondita dei principi di progettazione dei database e del linguaggio di interrogazione SQL, anche solo per iniziare.

Al contrario, le relazioni tra i dati nel mondo reale rappresentano più spesso relazioni genitore-figlio, o addirittura strutture gerarchiche più complesse. Pertanto, lavorare con dati gerarchici, in cui le relazioni possono essere visualizzate in una struttura ad albero, può essere molto più semplice e flessibile, portando a uno sviluppo più rapido. Questo approccio è inoltre più accessibile agli sviluppatori che non possiedono una vasta esperienza in SQL.

Per semplificare, velocizzare e rendere accessibile a un numero maggiore di sviluppatori la creazione di applicazioni che si connettono ai database relazionali, ormai onnipresenti nelle aziende moderne, Altova MobileTogether adotta un approccio completamente innovativo. Il suo assistente visuale per i database consente agli sviluppatori di creare facilmente una query che restituisce dati gerarchici, di lavorare con questi dati all'interno dell'applicazione e, successivamente, di salvare facilmente i dati nuovamente in forma gerarchica, lasciando che MobileTogether si occupi di normalizzare i dati e di scriverli nelle tabelle collegate corrispondenti. Vediamo come funziona.

![](/blog/images/mobiletogether-developer.jpg)

<!--more-->

## Lavorare con dati gerarchici

I database relazionali organizzano i dati in righe e colonne, che insieme formano una tabella. I dati sono tipicamente strutturati in più tabelle, e le relazioni tra i dati sono indicate tramite chiavi primarie e chiavi esterne, che garantiscono l'unicità dei dati e consentono di definire connessioni complesse. Sebbene il modello relazionale offra numerosi vantaggi ed efficienze, non è adatto a determinate applicazioni. Ad esempio, includere dati provenienti da due tabelle in un unico modulo e mantenere tali dati modificabili richiede due query separate al database e una notevole quantità di codice SQL scritto a mano. Salvare i dati da un modulo di questo tipo nel database è ancora più complesso. Oltre a richiedere molto tempo, questo implica che gli sviluppatori di applicazioni debbano avere una solida conoscenza di SQL, oltre alle loro altre competenze, il che rappresenta una sfida significativa che aggrava ulteriormente la attuale carenza di sviluppatori software e di applicazioni qualificati.

Visivo [strumenti a basso codice, come MobileTogether](https://www.altova.com/it/mobiletogether) lavoriamo dietro le quinte per rendere lo sviluppo di applicazioni che si connettono a dati backend il più semplice possibile, consentendo agli sviluppatori di concentrarsi sull'aspetto e la funzionalità delle loro applicazioni, e soprattutto sull'esperienza utente, invece di doversi concentrare sulla scrittura di complesse istruzioni SQL. (Una breve nota: sebbene questo articolo si concentri sulle applicazioni basate su database, MobileTogether può anche connettersi a fonti in altri formati, tra cui XML, JSON, HTML, SOAP e REST, ecc. Le fonti di dati legacy (Excel, EDI, testo, ecc.) possono essere facilmente connesse tramite...) [MapForce Server](https://www.altova.com/it/mapforce-server) integrazione)

Indipendentemente dalla fonte dei dati, MobileTogether presenta i dati del backend in una visualizzazione ad albero gerarchica, che consente agli sviluppatori di comprendere immediatamente le relazioni e di lavorare con gli elementi necessari, indipendentemente da come questi siano memorizzati nel database del backend, definendo al contempo le funzionalità e le azioni dell'applicazione.

## Assistente database: importazione della struttura del database

Quando connettete per la prima volta il vostro applicativo a un database in MobileTogether, potete scegliere tra un'ampia gamma di database relazionali supportati e diverse opzioni di connessione.

L'utilità guidata per la connessione vi accompagnerà passo dopo passo durante l'intero processo.

![Connetti un'applicazione a un database](/blog/images/connect-to-database.png)

Una volta stabilita la connessione, la finestra di dialogo "Aggiungi sorgente pagina" visualizza un elenco delle tabelle disponibili. Questo è un esempio di database relativamente semplice utilizzato per creare un'applicazione di catalogo libri.

![Selezionare le tabelle del database da utilizzare nell'applicazione ](/blog/images/add-db-tables.png)

Per selezionare le colonne necessarie per l'applicazione, il costruttore di istruzioni SQL visuale, presente nella procedura guidata del database, semplifica la creazione di un'istruzione SELECT tramite semplici clic, il che è molto più veloce rispetto alla scrittura manuale delle istruzioni SQL. Con la tabella "Autori" selezionata, la finestra di dialogo include inizialmente un'istruzione SQL che seleziona tutte le colonne per impostazione predefinita, ma questa può essere modificata. In questo caso, manterremo tutte le colonne, ma modificheremo l'istruzione per ordinare i dati in ordine alfabetico in base al campo "AuthorName". L'istruzione SQL risultante viene creata interamente tramite semplici clic, utilizzando pulsanti della barra degli strumenti interattivi e sensibili al contesto, caselle combinate e menu a tendina.

![Editor SQL visuale per la creazione di applicazioni che si connettono a database backend](/blog/images/visual-sql-editor.png)

Uno dei principali vantaggi dell'utilizzo di MobileTogether per lavorare con i database è la possibilità di importare l'intera struttura del database in un'unica operazione, attivando le relazioni tra le tabelle già definite o, addirittura, definendo nuove relazioni "al volo" tramite la finestra di dialogo "Aggiungi/Modifica relazioni".

Se tabelle di database aggiuntive sono correlate alla tabella principale, è possibile selezionare le tabelle per le quali si desidera mantenere la relazione. (Le relazioni vengono create utilizzando chiavi primarie e chiavi esterne.) Ad esempio, come mostrato di seguito, la tabella "Libri" ha una chiave esterna "AuthorID" che collega ogni record di libro a un autore nella tabella "Autori". Possiamo selezionare la casella accanto alla tabella "Libri" per mantenere questa relazione, e il codice sorgente della pagina verrà generato in modo che "Libri" sia correlata gerarchicamente ad "Autori" come elemento figlio. Tutte le colonne della tabella "Libri" verranno selezionate automaticamente.

![Attivare le relazioni tra le tabelle del database](/blog/images/database-table-relations.png)

Questo rende l'intera struttura del database disponibile in forma di albero nella sezione "Origini della pagina".

![Lavorare con le relazioni tra database in una visualizzazione ad albero in MobileTogether ](/blog/images/database-structure-tree.png)

Ogni colonna è ora disponibile per la creazione dell'interfaccia utente e delle funzionalità dell'applicazione.

Soprattutto, quando si tratta di salvare i dati modificati dall'utente nel database, MobileTogether rende questo processo estremamente semplice. Per ogni livello delle tabelle relazionali, rappresentato nella struttura ad albero, è possibile decidere se sostituire tutte le righe della tabella al momento del salvataggio, oppure salvare solo le modifiche apportate. Questa impostazione può essere applicata in modo diverso per ogni livello della gerarchia.  

![Specificare come gestire il salvataggio dei dati nel database](/blog/images/saving-db-modifications.png)

L'assistente per i database è utile durante l'intero processo di sviluppo dell'applicazione. Ad esempio, possiamo utilizzarlo per filtrare i dati da utilizzare direttamente nell'applicazione, per diverse sezioni. In questo caso, quando definiamo la sezione per la visualizzazione e la modifica dei dettagli dell'autore, abbiamo creato visivamente un filtro per selezionare l'autore con l'ID corrente.

![Filtrare i dati per l'utilizzo in una sottosezione dell'applicazione](/blog/images/filtering-data.png)

Che si tratti di una singola tabella o di diverse tabelle collegate, l'assistente del database semplifica la definizione di query che recuperano i dati corretti dal database. Grazie alle funzionalità integrate di MobileTogether, scrivere i dati nel database può essere semplice come eseguire un comando "Salva" e indicare a MobileTogether di salvare solo le modifiche all'interno di un'intera struttura ad albero.

Naturalmente, per gli sviluppatori che preferiscono lavorare direttamente con i comandi SQL, MobileTogether offre tutte le funzionalità necessarie: è possibile esercitare un controllo dettagliato su ogni aspetto, incluse le transazioni, le inserzioni di massa e l'esecuzione diretta di qualsiasi istruzione SQL

![](/blog/images/sql-options.png)

## Scopri di più e provalo subito

Per vedere tutto questo in azione, consultate il nostro [video tutorial sullo sviluppo di app](https://www.altova.com/it/mobiletogether/demos#video-database-driven-apps) che mostra come l'app di catalogo libri, basata su un database, è stata creata dall'inizio alla fine.

Per iniziare a sviluppare un'applicazione che si connette a un database backend, è possibile [scaricare](https://www.altova.com/it/mobiletogether/download) il software MobileTogether Designer, che è gratuito.
