Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    Comuni con iniziale maiuscola

    Ciao raga, spero ho inserito il messaggio nel forum giusto!
    Ecco il problema:
    Ho la solita tabella di circa 8000 Comuni...
    Tutti i campi di questa tabella sono scritti i MAIUSCOLO e mi è stato ordinato di scriverli con la sola iniziale del comune in maiuscolo!!!

    Di certo non posso andare a modificare tutti i singoli comuni!!!

    Esiste una possibilità di creare un qualcosa in access che Converta tutto in minuscolo e la sola iniziale del comune in maiuscolo?O meglio di access, sarebbe anche utile una procedura in SQL SERVER...fa lo stesso!

    Ecco, in realtà saprei che funzioni usare (con SQL SERVER) per risolvere il problema, ma c'è un piccolo ostacolo:

    Esistono comuni composti, formati da due o più parole!!!!

    Come è possibile gestire questa cosa?
    Qualcuno mi può aiutare?

    Grazie ciao

  2. #2
    Devi aggiornare il db cambiando i nomi dei comuni da (ad esempio) TREZZANO SUL NAVIGLIO a Trezzano Sul Naviglio?

  3. #3
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Ti conviene fare uno script che legga ogni comune e lo riscriva con l'iniziale maiuscola.
    Con una query leggi:

    codice:
    SELECT comune_id, comune FROM tComuni
    comune_id = rs("comune_id")
    comune = rs("comune")
    upper_comune = UCase(left(comune,1)) & LCase(mid (comune,2,len(comune)-1))
    E con l'altra riscrivi
    codice:
    upper_comune = replace(upper_comune ,"'","''")
    UPDATE tComuni SET comune = '"& upper_comune &"' WHERE comune_id = "& comune_id

    Roby

  4. #4
    Devi aggiornare il db cambiando i nomi dei comuni da (ad esempio) TREZZANO SUL NAVIGLIO a Trezzano Sul Naviglio?
    La risposta è SI!

    Ei ROBY_72 il tuo script fa la stessa cosa?

    Grazie ragazzi, grazie veramente per l'interesse.

  5. #5

    Scusate ancora

    Ti conviene fare uno script che legga ogni comune e lo riscriva con l'iniziale maiuscola.
    Così facendo funziona, ma la tabella non resta modificata!
    Vorrei che i comuni restassero definitivamente modificati nella tabella!

    In sql server sicuramente la cosa è fattibile!
    Ma il DB è in access!

    Nel caso in cui non si possa creare con access un qualcosa che modifica tutta l'intera tabella, potrei importar la tabella in SQL SERVER e poi reimportarla in access...giusto?

    Che dite?

  6. #6
    che c'entra slq/access/mysql/lo_sa_nonno? una UPDATE è sempre una UPDATE...

  7. #7
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Le hai eseguite le query oltre che copiate?

    Roby

  8. #8
    Originariamente inviato da manu.aretuseo
    La risposta è SI!

    Ei ROBY_72 il tuo script fa la stessa cosa?

    Grazie ragazzi, grazie veramente per l'interesse.
    codice:
    sql = "SELECT id, citta FROM comuni"
    set rs = conn.execute(sql)
    if not rs.eof then
    do until rs.eof
    id = rs("id")
    citta = rs("citta")
    tempCitta = split(citta," ")
    for i = 0 to uBound(tempCitta)
    citta = citta & uCase(tempCitta(i)) & lCase(mid(tempCitta(i)),2)
    if i < uBound(tempCitta) then citta = citta & " "
    next
    conn.execute("UPDATE comuni SET citta = '" & replace(citta,"'","''") & "' WHERE id = " & id)
    rs.moveNext
    loop
    end if
    rs.close
    set rs = nothing

  9. #9
    Grazie!
    Obiettivo raggiunto...La tabella adesso è come volevo!

    Chiedo scusa se a volte mi esprimo male...

    Tutto il codice da voi consigliato funziona.

    Siente sempre un valido riferimento.
    Ciao e buona giornata

  10. #10
    Scusate qualcuno potrebbe indicare la procedura per fare la stessa cosa con dei nomi inseriti in un campo? Ho provato dall'imput a fare in modo che arrivassero dati con l'iniziale in maiuscola, ma credo che il database alla fine non le prenda. Facendo ricerche mi sono imbattuto in questo post. La mia tabella è la seguente:

    Campo Tipo Collation Attributi Null Predefinito Extra Azione
    user_id int(10) UNSIGNED No auto_increment Naviga tra i valori DISTINCT Modifica Elimina Primaria Unica Indice Testo completo
    email varchar(100) utf8_unicode_ci No Naviga tra i valori DISTINCT Modifica Elimina Primaria Unica Indice Testo completo
    password char(32) utf8_unicode_ci No Naviga tra i valori DISTINCT Modifica Elimina Primaria Unica Indice Testo completo
    name varchar(50) utf8_unicode_ci No Naviga tra i valori DISTINCT Modifica Elimina Primaria Unica Indice Testo completo
    token char(32) utf8_unicode_ci Sì NULL Naviga tra i valori DISTINCT Modifica Elimina Primaria Unica Indice Testo completo
    active int(1) No 0 Naviga tra i valori DISTINCT Modifica Elimina Primaria Unica Indice Testo completo


    In questo caso dovrei farlo solo per il campo name. Mi serve perchè il valore della variabile mi deve restituire il nome della persona con l'iniziale in maiuscolo, perchè andrà ad implementarsi in un invio automatico di una email alla persona interessata.
    Grazie per eventuali risposte e se ho sbagliato a descrivere il mio problema, in base alle regole del forum chiedo scusa preventivamente

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.