Bien que je me sers mySQL (pour l'instant), je ne veux pas que tout SQL spécifique DB.ANSI SQL question - comment insérer ou mettre à jour un dossier si elle existe déjà?
Je suis en train d'insérer un enregistrement si elle n'existe pas, et mettre à jour un champ si elle existe. Je veux utiliser ANSI SQL.
Le tableau ressemble à ceci:
create table test_table (id int, name varchar(16), weight double) ;
//test data
insert into test_table (id, name, weight) values(1,'homer', 900);
insert into test_table (id, name, weight) values(2,'marge', 85);
insert into test_table (id, name, weight) values(3,'bart', 25);
insert into test_table (id, name, weight) values(4,'lisa', 15);
If the record exists, I want to update the weight (increase by say 10)
J'ai fini par utiliser la commande INSERT .. ON DUPLICATE KEY UPDATE – morpheous
MS SQL Server 2005 ne prend pas en charge la syntaxe MERGE. Seul SQL Server 2008 et les versions supérieures le prennent en charge. –
On dirait que sql server 2005 beta l'a eu mais pas la version finale. 2008 l'a eu. Référence: http://geekswithblogs.net/SabotsShell/archive/2005/08/20/50706.aspx – Alex