sqlite INSERT INTO ... OÙ n'EXISTE PAS et obtenir l'id?
est-il possible d'obtenir l'id, même si j'utilise INSERT INTO ... OÙ n'EXISTE PAS?
comment le modifier de sorte qu'il m'apportera de l'id de l'enregistrement inséré ou l'id de l'existaient déjà enregistrement? si possible à tous!
INSERT INTO Timeline (name, ts)
SELECT @name, @ts
WHERE NOT EXISTS (SELECT 1 FROM Timeline WHERE name=@name AND ts = @ts);
j'ai une colonne appelée "id" avec l'auto incrément entier
comment je peux obtenir la valeur de l'ID?
acclamations
- Avec cette déclaration, il va insérer le nouvel enregistrement si ce n'est pas déjà présent sur votre table. Son parfaitement valides
- Je sais, ma question sur la façon de faire il m'apporter de l'id ou la valeur de l'id de la colonne?
- Vous voulez savoir si une ligne a été insérée ou si une ligne est déjà présente? Ne rowcount dites-vous?
Vous devez vous connecter pour publier un commentaire.
Vous garantissons que
(name,ts)
est unique, ce qui devrait faire l'affaire.vous pouvez utiliser la clause output:
vous pouvez le faire sur la mise à jour trop
ÉDITÉ:
exécuter le et vous comprendrez: