| |
Membre enregistré 1 message |
|
| Posté le 11 octobre 2022 - 10:33 |
Bonjour à tous,
Je cherche à réaliser une requête d'insertion des données et de mise à jour automatique si la clé existe. Mais suite à mes recherches impossible de trouver comment faire.
Voilà un en SQL de ce que je souhaite faire : Pour information la rubrique Nom est en clé unique
INSERT INTO Paramètre (Nom,Valeur) VALUES ('toto','tata') ON DUPLICATE KEY UPDATE Valeur = 'tata';
REPLACE INTO Paramètre (Nom,Valeur) VALUES ('toto','tata')
Ma question est donc, Il y a t-il une syntaxe pour réaliser cet ajout / modification de données ou je dois passer par deux requêtes séparées ?
Merci par avance pour votre aide. |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 messages |
|
| Posté le 01 novembre 2022 - 05:19 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 1 message |
|
| Posté le 24 janvier 2023 - 10:13 |
| Il existe une syntaxe pour réaliser cet ajout / modification de données dans la plupart des bases de données SQL, appelée "INSERT INTO ... ON DUPLICATE KEY UPDATE". Cette syntaxe permet d'insérer des données dans une table si la clé spécifiée n'existe pas, ou de mettre à jour les données existantes si la clé existe déjà. |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 messages |
|
| Posté le 31 janvier 2023 - 12:43 |
| REPLACE works exactly like INSERT, except that if an old row in the table has the same value as a new row for a PRIMARY KEY or a UNIQUE index, the old row is deleted before the new row is inserted. https://www.myhealthonline.biz/ |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 1 message |
|
| Posté le 21 octobre 2024 - 12:28 |
| A ce jour il n'y a toujours pas de solution implémentée par PC-SOFT pour pouvoir gérer un REPLACE ou un ON DUPLICATE KEY UPDATE dans les requêtes SQL. |
| |
| |
| | | |
|
| | |
| |
| Posté le 07 février 2026 - 03:13 |
0 a écrit : > A ce jour il n'y a toujours pas de solution implémentée par PC-SOFT pour pouvoir gérer un REPLACE ou un ON DUPLICATE KEY UPDATE dans les requêtes SQL.
Oui, il existe une syntaxe dédiée, mais elle dépend du SGBD. En MySQL/MariaDB, `INSERT ... ON DUPLICATE KEY UPDATE` est la bonne solution et évite deux requêtes. `REPLACE INTO` fonctionne aussi mais fait un DELETE suivi d’un INSERT, ce qui peut poser problème. En PostgreSQL et SQLite, on utilise `INSERT ... ON CONFLICT DO UPDATE`. https://dordle.io |
| |
| |
| | | |
|
| | |