Autore Topic: query insert con if  (Letto 393 volte)

Offline gsources75

  • Utente normale
  • ***
  • Post: 327
  • Respect: +9
    • Google+
    • pepigno75
    • devandroid_it
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Nexus S - Vodafone Smart -BB Bold- Iphone 4-
  • Play Store ID:
    Giuseppe+Sorce
  • Sistema operativo:
    Ubuntu-Windows Seven- Mac Lion
query insert con if
« il: 26 Luglio 2011, 09:38:28 CEST »
0
Allora ho un db sqlite che posso riassumere cosi. Tabella utenti con

nome, cognome, codicediscale

faccio gli inserimenti e ok va bene.
Adesso ricevo dei dati con utenti uguali e non devo fare l' insert ma controllare se nel db c'è quell' utente in base al codice fiscale e fare l' inserimento.

Ovviamente un strada è quella di fare un ciclo controllare uno per uno se l'utente esiste e se non c'è inserirlo.

Mi chiedo.. visto che ho un "potente" database e/o linguaggio non c'è un modo di fare un INSERT intelligente del tipo

insert into into utenti (nome, cognome, codicefiscale) if not exits (select codicefiscale from utenti where codicefiscale='srcfffffffmffnf')

la query l'ho "intravista" online ma non funziona... almeno l'ho provata su un client sqlite
La domanda stupida è quella che non si fa

Offline Qlimax

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 757
  • Respect: +203
    • Google+
    • _Qlimax
    • Mostra profilo
    • www.egsolutions.ch
  • Dispositivo Android:
    Galaxy Nexus - Nexus One - Wildfire - Magic
  • Play Store ID:
    egsolutions.ch
  • Sistema operativo:
    Ubuntu 12.04, Windows 7
Re:query insert con if
« Risposta #1 il: 26 Luglio 2011, 10:30:52 CEST »
0
Potresti mettere una constraint UNIQUE su codicefiscale.
Quando poi fai l'insert dei contentValues con codicefiscale uguale a uno gia inserito verrà:

ritornato -1 usando insert

oppure

lanciata un eccezione eccezione usando insertOrThrow

Offline Luigi.Arena

  • Utente senior
  • ****
  • Post: 616
  • DACIA DUSTER 4X4 SUPER
  • Respect: +56
    • Mostra profilo
    • ArenaWebTest
  • Dispositivo Android:
    epad m009
  • Play Store ID:
    Luigi Arena
  • Sistema operativo:
    Windows 7
Re:query insert con if
« Risposta #2 il: 26 Luglio 2011, 10:55:56 CEST »
0
Ciao,
puoi usare Insert or ignore. :-)
Guarda questo <a href="http://www.youtube.com/watch?v=j56XJYmX2B0" target="_blank">http://www.youtube.com/watch?v=j56XJYmX2B0</a>

Ciao
È stata trovata una soluzione al tuo problema?Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato .