Avatar
Artas
Redaktor
Avatar
Artas:

Ahoj, narazil jsem na takový zajímavý problém.
Dejme tomu, že budu mít v databázi nějakou tabulku dejme tomu s články. Na webu vytvořím formulář pro úpravu titulků těchto článků. Po vyplnění formuláře dostanu v polích jednotlivé nové hodnoty. No a tady přichází můj dotaz - je lepší poskládat pro každou řádku nový dotaz:

UPDATE `clanky` SET `titulek` = 'Prvni titulek' WHERE `clanky_id` = 1
UPDATE `clanky` SET `titulek` = 'Druhy titulek' WHERE `clanky_id` = 2
UPDATE `clanky` SET `titulek` = 'Treti titulek' WHERE `clanky_id` = 3

a pak je postupně spustit, nebo udělat jeden dotaz ve smyslu:

UPDATE `clanky` SET `titulek` = CASE `clanky_id`
  WHEN 1 THEN 'Prvni titulek'
  WHEN 2 THEN 'Druhy titulek'
  WHEN 3 THEN 'Treti titulek'
  END
WHERE `clanky_id` IN (1,2, ...)

Jde mi spíše o výkon - pokud by těch updatů bylo moc, tak který způsob je rychlejší.
Díky

 
Odpovědět 8.7.2013 11:30
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 1 zpráv z 1.