Editor SQL collaborativo
Scrivete query SQL insieme in tempo reale con cursori condivisi e convalidatele, formattatele o riducetene le dimensioni per tutti.
Leggimi
Cosa significa la modifica collaborativa di SQL?
La modifica collaborativa di SQL consente a più persone di scrivere e revisionare query contemporaneamente, ciascuna dal proprio browser. È utile per elaborare una query insieme a un collega, revisionare una migrazione o insegnare SQL, senza condividere lo schermo né incollare query in una chat.
Per mantenere identiche le copie di tutti, le modifiche vengono trasmesse come piccoli interventi anziché come testo completo e un server ne determina l’ordine di applicazione. Gli interventi effettuati nello stesso momento vengono adattati tra loro, così entrambi vengono mantenuti.
Descrizione dello strumento
Questo strumento è un editor SQL condiviso con evidenziazione della sintassi. Aprilo e condividi il link: tutti i partecipanti modificano le stesse query in tempo reale, vedono i cursori degli altri e possono convalidare, formattare o minimizzare il codice SQL per tutti con un solo clic.
La convalida analizza il codice SQL con node-sql-parser. La formattazione dispone ogni clausola principale (SELECT, FROM, WHERE, JOIN e così via) su una riga separata, senza modificare stringhe e commenti; la minimizzazione dispone la query su un’unica riga. Il nuovo testo sostituisce solo le righe modificate, così ciò che gli altri digitano nel frattempo rimane al suo posto.
Funzionalità
- Modifica in tempo reale - le modifiche di tutti appaiono immediatamente e vengono unite quando più persone digitano nello stesso momento
- Cursori e selezioni - scopri dove si trova ciascun partecipante, grazie al colore mostrato accanto al suo nome
- Convalida - verifica che il codice SQL sia analizzabile e mostra il messaggio del parser in caso contrario
- Formattazione e minimizzazione - disponi la query clausola per clausola oppure riducila a un’unica riga, per tutti i partecipanti
- Copia e scaricamento - conserva una copia delle query in un file .sql
Come funziona
Quando la pagina si apre, viene creata una stanza sul server di sincronizzazione e il relativo link viene inserito nella barra degli indirizzi. Chiunque apra il link entra nella stessa stanza e visualizza lo stesso documento.
Ogni modifica viene inviata al server come una breve descrizione di ciò che è cambiato: quali caratteri sono stati inseriti o eliminati e in quale posizione, invece che come testo completo. Il server dispone le modifiche di tutti in un unico ordine, sposta una modifica apportata su una versione precedente dopo quelle arrivate prima e invia il risultato a tutti gli altri. Ciò che digiti appare subito e le modifiche degli altri vengono integrate attorno al tuo testo, così nessuno perde ciò che ha digitato quando due persone modificano il documento nello stesso momento.
Il documento viene conservato solo nella memoria del server e soltanto mentre la stanza è aperta. Se ricarichi la pagina, rientri nella stanza e ritrovi il testo com’era; quando tutti escono, la stanza e il relativo testo vengono eliminati.
Limitazioni
- Una stanza può contenere fino a 20 persone e 100.000 caratteri.
- Dopo la chiusura di una stanza, non viene conservato nulla. Scarica il testo prima che esca l’ultima persona.
- Le modifiche molto rapide o molto grandi, come incollare l’intero documento molte volte di seguito, vengono rifiutate e l’editor ricarica il testo della stanza.
- Aprendo il link di una stanza in un altro editor collaborativo (per esempio una stanza SQL nell’editor JavaScript) viene mostrato il messaggio «Stanza non trovata»: ogni stanza è associata a un solo linguaggio.
- La convalida controlla solo la sintassi. Le query non vengono mai eseguite su un database.