1 votes

Quelle fonction de type INSERT IF NOT EXISTS puis-je utiliser sans transformer la colonne en clé primaire ?

Ce script sur lequel je travaille prend des données du web en utilisant le module urllib2 de python et les met dans un tableau. Ces données seront essentiellement dans un tableau avec une colonne et une ligne. Comment faire pour que lorsque je lance le script, il mette simplement à jour l'enregistrement ? Je ne veux pas en faire une clé primaire parce que je vais probablement ajouter d'autres colonnes plus tard et la clé primaire ne sera probablement pas cette colonne.

Il semble qu'il y ait trois façons de procéder. IGNORER, REMPLACER, METTRE À JOUR LA CLÉ DUPLIQUÉE. J'ai essayé IGNORE et REPLACE mais ils finissent toujours par créer un nouvel enregistrement. Je pense que c'est parce que cette colonne doit être la clé primaire. Je sais que l'option ON DUPLICATE KEY UPDATE vous oblige à faire de cette colonne une clé primaire. Existe-t-il un moyen d'effectuer cette opération sans faire de la colonne la clé primaire ?

2voto

richardtallent Points 17534

Vous pouvez utiliser "ON DUPLICATE KEY UPDATE" sur n'importe quelle colonne avec un index UNIQUE, et pas seulement sur la colonne de la clé primaire.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X