SQL Comuni italiani

Diverse persone hanno reso disponibili in rete, partendo dai dati ufficiali dell’ISTAT, degli script SQL per la memorizzazione dei Comuni, delle Province e delle Regioni d’Italia.

Purtroppo, molti di questi lavori non sono adatti per i miei scopi, avendo tutti almeno uno dei seguenti problemi:

  • non sono aggiornati (io mi sono riferito all’elenco del 30 giugno 2010);
  • non usano il codice ISTAT del Comune come chiave primaria;
  • non separano in tre tabelle, unite da chiavi esterne, i Comuni, le Province e le Regioni;
  • non assumono le denominazioni bilingue italiano/tedesco.

Lo script, con le CREATE e le INSERT complete nell’ordine opportuno è scaricabile qui (la versione obsoleta, originale, è comuni.sql) e, pur essendo testato su MySQL 5, è abbastanza semplice e pulito da risultare portabile senza o con poche modifiche.

34 thoughts on “SQL Comuni italiani”

  1. Complimenti per il lavoro hai semplificato la vita a molta gente ;)

    volevo informarti che nello script c’e’ la tabella provincie che ne contiene 110 date le aggiunte del 2010 (“Barletta-Andria-Trani”, “Fermo” e “Monza e della Brianza”), pero’ nella tabella comuni ce ne sono solo 107. Ne deduco che la tabella comuni e’ da rivedere…

    riferendosi al file ISTAT dei comuni “Elenco comuni italiani”, dal comune 107016 Portoscuso, che nel file sql si chiama Port, in giu’ possiamo aggiungere quelli mancanti…

    Se riesci a mantenerlo aggiornato questo file, anche attraverso l’aiuto dei tuoi utenti sarebbe un gran bel servizio…

    Io l’ho trovato molto utile…GRAZIE!

    1. Grazie della segnalazione: è strano questo disallineamento, provenendo tutti i dati dalla stessa sorgente ISTAT. Cercherò comunque di aggiornare il tutto.

        1. penso intendesse il suo link che trovi nei commenti e, per le accentate, forse hai un editor con l’encoding diverso dal file: quelle sono a posto

    1. Le accentate dovrebbero esserci: ci sono i nomi in italiano e in tedesco per la Provincia di Bolzano, se ben ricordo… ciao :)

  2. non avevo visto il link nei commenti
    perdonatemi ma tendo a leggere i post e poco i commenti
    sarò strano, in caso errore mio
    sorry

    1. :) no problem Adso, basta che hai risolto…Carlo, quando hai 5 minuti liberi, aggiorna il tuo file col mio script, cosi non si sbagliano gli utenti. :P

  3. Approfitto per rinnovare un grande grazie a chi porta avanti questo lavoro, che credo torni utile a molti oltre me che l’ho utilizzato in due progetti differenti. Byez ;)

  4. Carlo mi chiedevo se sia il caso di mettere questo .sql sottoforma di repository, su github così da dare la possibilità a chiunque di collaborare, aggiornamenti e quant’altro. Fammi sapere, ciao

    1. Questo mio lavoro ha avuto un successo tra gli sviluppatori che non immaginavo: sono contento di avere aiutato dei “colleghi” in qualche occasione. :) Può essere una buona idea. A dopo.

    1. Non essendoci una relazione 1:1 ISTAT:CAP, servirebbe una tabella e non un campo… essendo su gits, puoi sempre pensare di aggiungerla (dopo aver trovato i dati e capito come mapparli).

  5. Bellissimo script, davvero complimenti, mi sarà molto utile!!
    Tra ISTAT:CAP c’è una relazione N:N , sarà utile creare una nuova tabella con i CAP ma non ne ho trovata una gratis, è disponibile a pagamento e solo su Windows sul sito delle poste italiane :s

Leave a Reply

Your email address will not be published. Required fields are marked *