Autore Topic: unique constraint  (Letto 887 volte)

Offline softmystery

  • Utente junior
  • **
  • Post: 105
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    lg optimus one
  • Sistema operativo:
    2.2
unique constraint
« il: 25 Gennaio 2011, 17:14:36 CET »
0
Salve !!!!
come si utilizza unique constraint?
ad es:   
Codice (Java): [Seleziona]
private static final String LOGIN_TABLE_CREATE = "CREATE TABLE IF NOT EXISTS "  //codice sql di creazione della tabella
                        + LoginMetaData.LOGIN_TABLE + " ( "
                        + LoginMetaData.ID+ " text primary key unique); ";
è sintatticamente corretto ? ovvero la sequenza delle parole è giusta?
Per la sintassi stò utilizzando un managerSQLite, e mi permette di inserire primary key assieme a unique....a me sembra strano...
in altri esempi, ho trovato roba simile: 
"UNIQUE(itemNumber)"
Grazie in anticipo a chi saprà aiutarmi!!!!

Offline Nicola_D

  • Moderatore
  • Utente storico
  • *****
  • Post: 2479
  • SBAGLIATO!
  • Respect: +323
    • Github
    • Google+
    • nicoladorigatti
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6p, Nexus 4, Nexus S, Nexus 7(2012)
  • Sistema operativo:
    Windows 7
Re:unique constraint
« Risposta #1 il: 25 Gennaio 2011, 17:51:53 CET »
+1
in se la sintassi non è sbagliata, ma la primary key è sempre unique.
poi perdona la curiosità,ma perchè l'id è un text?
IMPORTANTE:NON RISPONDO A PROBLEMI VIA MESSAGGIO PRIVATO
LOGCAT: Non sai cos'è? -> Android Debug Bridge | Android Developers
               Dov'è in Eclipse? -> Window -> Open Prospective -> DDMS e guarda in basso!
[Obbligatorio] Logcat, questo sconosciuto! (Gruppo AndDev.it LOGTFO) - Android Developers Italia

Offline softmystery

  • Utente junior
  • **
  • Post: 105
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    lg optimus one
  • Sistema operativo:
    2.2
Re:unique constraint
« Risposta #2 il: 25 Gennaio 2011, 18:25:15 CET »
0
Grazie! mi hai risolto un dubbio! bè l'_id è un text perchè mi serve così!  :-)  potrebbe dar problemi di esecuzione un _id text?

Offline softmystery

  • Utente junior
  • **
  • Post: 105
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    lg optimus one
  • Sistema operativo:
    2.2
Re:unique constraint
« Risposta #3 il: 25 Gennaio 2011, 18:36:10 CET »
0
no, comunque è un text perchè vorrei memorizzare nomi unici! non mi interessa avere un campo integer che proceda incrementalmente per poi magari ottenere il numero totale degli elementi presenti in una tabella.... comunque risolto!!!!!!!!! :-) ;-)

Offline Nicola_D

  • Moderatore
  • Utente storico
  • *****
  • Post: 2479
  • SBAGLIATO!
  • Respect: +323
    • Github
    • Google+
    • nicoladorigatti
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6p, Nexus 4, Nexus S, Nexus 7(2012)
  • Sistema operativo:
    Windows 7
Re:unique constraint
« Risposta #4 il: 25 Gennaio 2011, 18:39:42 CET »
0
Grazie! mi hai risolto un dubbio! bè l'_id è un text perchè mi serve così!  :-)  potrebbe dar problemi di esecuzione un _id text?
mah,secondo me come primary key non è il massimo per questioni di performance, io farei _ID INTEGER autoincrement primary key e NAME TEXT UNIQUE
ma è una mia idea
IMPORTANTE:NON RISPONDO A PROBLEMI VIA MESSAGGIO PRIVATO
LOGCAT: Non sai cos'è? -> Android Debug Bridge | Android Developers
               Dov'è in Eclipse? -> Window -> Open Prospective -> DDMS e guarda in basso!
[Obbligatorio] Logcat, questo sconosciuto! (Gruppo AndDev.it LOGTFO) - Android Developers Italia

Offline 7h38ugg3r

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1200
  • Respect: +133
    • riccardofischetti
    • th38ugg3r
    • @7h38ugg3r
    • Mostra profilo
  • Dispositivo Android:
    Galaxy-S GT I-9000/ ASUS Eee Pad Transformer
  • Play Store ID:
    Riccardo Fischetti
  • Sistema operativo:
    OS X Lion / Linux Mint 11 (Katya)
Re:unique constraint
« Risposta #5 il: 26 Gennaio 2011, 09:23:56 CET »
0
Bisognerebbe capire innanzitutto se il contenuto di quel testo permette o meno di rispettare le forme normali, e capire se quindi può essere causa di eventuali problemi. (Chi non sa di cosa parlo legga quì).
Fermo restando che (parere personale dettato dalle mie esperienze) comunque non utilizzerei come chiave primaria un testo.
Successivamente, per un discorso di performance, un intero è sicuramente migliore di un campo testo, sia per una ricerca che per un ordinamento, che per un raggruppamento.
Nicola, la tua idea è corretta.  ;-)
7h38ugg3r<=>thebugger
Non conosci Java? Allora sei nel posto sbagliato!

http://www.androidpatterns.com/