Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. Impostare campo come UNIQUE
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • M
      magicale User Attivo • ultima modifica di

      Ciao,
      la query per assegnare UNIQUE ad un campo di una tabella è:

      
      ALTER TABLE tabella ADD UNIQUE ( nome_campo )
      
      

      Se la colonna ha dati duplicati, il campo non viene modificato.

      Alessandro

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • I
        ivan88 Moderatore • ultima modifica di

        Grazie!

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • I
          ivan88 Moderatore • ultima modifica di

          Ho provato e mi da errore!

          forse non è così che va scritto?:

          
          $connessione = mysql_connect($nome_host,$nome_utente,$pass_utente)or die("Connessione non riuscita: " . mysql_error());
          mysql_select_db($nome_database, $connessione) or die("Errore nella selezione del database");
          $query =  mysql_query("ALTER TABLE ragazzi ADD UNIQUE ( nomeurl );",$connessione);
          if ($query==FALSE) die("errore nella composizione della query");
          mysql_close($connessione); 
          
          

          Inoltre cercando su internet ho trovato questo: link

          Dice che questo serve ad aggiungere una nuova colonna e di fare attenzione non ce ne sia una con lo stesso nome, che è proprio il mio caso...

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • M
            magicale User Attivo • ultima modifica di

            Ho provato e mi da errore!
            Che errore?

            Dice che questo serve ad aggiungere una nuova colonna e di fare attenzione non ce ne sia una con lo stesso nome, che è proprio il mio caso...
            ADD UNIQUE non aggiunge alcuna colonna, ma un indice unico alla colonna indicata che deve essere presente nella tabella.

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • I
              ivan88 Moderatore • ultima modifica di

              L' errore è:

              errore nella composizione della query
              
              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • M
                magicale User Attivo • ultima modifica di

                Quello è l'errore che visualizzi tu, non quello restituito da MySql.
                Per vedere l'errore, modifica così:
                [PHP]
                if ($query==FALSE) die("errore nella composizione della query: ".mysql_error() );
                [/PHP]

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • I
                  ivan88 Moderatore • ultima modifica di

                  ecco:

                  BLOB/TEXT column 'nomeurl' used in key specification without a key length
                  
                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • M
                    magicale User Attivo • ultima modifica di

                    Per i campi BLOB/TEXT mysql puoi utilizzare solo i primi N caratteri per l'indice.
                    Se non hai particolare necessità di avere un campo di tipo BLOB/TEXT per quel dato, convertilo in un VARCHAR.
                    Oppure assegna all'indice il valore N di caratteri da utilizzare

                    
                    ALTER TABLE ragazzi ADD UNIQUE ( nomeurl( N ) )
                    
                    

                    Questo però potrebbe creare problemi con l'unicità.

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • I
                      ivan88 Moderatore • ultima modifica di

                      Ho provato a convertirlo in VARCHART e quando clicco su salva mi da questo errore: "Questo non è un numero!"

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • M
                        magicale User Attivo • ultima modifica di

                        I varchar hanno una lunghezza da impostare. Max 255

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • I
                          ivan88 Moderatore • ultima modifica di

                          Ok, perfetto ha funzionato, ora il campo è UNIQUE.
                          Grazie!

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          Caricamento altri post
                          Rispondi
                          • Topic risposta
                          Effettua l'accesso per rispondere
                          • Da Vecchi a Nuovi
                          • Da Nuovi a Vecchi
                          • Più Voti