-
Migrace z Joomla 1.5, 2.5 a 3.x do nové Joomla 6
Bong ·
- X Online Joomla bar xunil ·
-
Phoca Cart - pluginy dopravy
H13 ·
-
Nový joomlaportal.cz
Linelabcz ·
-
Amanus - nová šablona Astroid frameworku podporující Phoca Cart
H13 ·
- X Claude Code a VS Code - kompromitace xunil ·
-
Phoca Download - verze 6.1.6 vydána
H13 ·
-
Phoca Cart - Booking
H13 ·
Phoca Cart - chyba při aktualizaci na verzi 3.5.5
- polato
-
Autor
- OFFLINE
- Začátečník
-
Méně
Více
- Příspěvky: 38
11. úno 2021 20:15 - 11. úno 2021 20:23 #143703
od polato
Zdravím,
aktualizace komponenty Phoca Cart z verze 3.5.2 na 3.5.5 končí chybou, můžu poprosit o radu?
Díky moc.
Varování
JInstaller: :Instalace: Chyba SQL Duplicate column name 'queue_number'
Rozšíření Aktualizace: SQL chyba zpracování dotazu: DB funkce selhala, číslo chyby 1060
Duplicate column name 'queue_number'
SQL =
ALTER TABLE `#__phocacart_orders` ADD COLUMN `queue_number` varchar(64) NOT NULL DEFAULT '';
Balíček Aktualizace: Došlo k chybě při instalaci rozšíření: com_phocacart_v3.5.5.zip
aktualizace komponenty Phoca Cart z verze 3.5.2 na 3.5.5 končí chybou, můžu poprosit o radu?
Díky moc.
Varování
JInstaller: :Instalace: Chyba SQL Duplicate column name 'queue_number'
Rozšíření Aktualizace: SQL chyba zpracování dotazu: DB funkce selhala, číslo chyby 1060
Duplicate column name 'queue_number'
SQL =
ALTER TABLE `#__phocacart_orders` ADD COLUMN `queue_number` varchar(64) NOT NULL DEFAULT '';
Balíček Aktualizace: Došlo k chybě při instalaci rozšíření: com_phocacart_v3.5.5.zip
- H13
-
- OFFLINE
- Admin
-
Méně
Více
- Příspěvky: 2634
11. úno 2021 20:59 #143705
od H13
Phoca Cart - www.phoca.cz/phocacart - e-shop, e-commerce
Phoca Gallery - www.phoca.cz/phocagallery - obrázková galerie
Phoca Download - www.phoca.cz/phocadownload - stahování souborů
Phoca Guestbook - www.phoca.cz/phocaguestbook - guestbook
Odpověď od H13 v tématu Phoca Cart - chyba při aktualizaci na verzi 3.5.5
Ahoj,
tohle je bohužel chyba, která se nedá ošetřit díky chybějícím instrukcím v MySQL (MariaDB to umí)
Při upgradu došlo k tomu, že to chtělo vložit sloupec do databáze, který tam už byl. Z jakého důvodu tam už byl, těžko říct.
Tady pomůže jen postupné mazání instrukcí pro upgrade a zkoušení upgradu:
- tedy otevřít instalační ZIP balíček a vymazat tuto instrukci z update SQL dotazu
instalační balíček ZIP (pouze komponenty): admin/update/update/sql/mysql/3.5.3.sql
Ale zda smazat jen instrukci pro tento sloupec nebo pro ostatní, těžko říc - zkusil bych podle toho souboru zjistit, zda ty tabulky už v databázi jsou nebo ne, pokud ano, pak všechny smazat
Po smazání balíček znovu zabalit a zkusit nainstalovat. A pokud tam bude další sloupec, co už v databázi je, tak opět to stejné pro daný sloupec

více zde:
www.phoca.cz/blog/1100-solution-to-a-pro...-updating-components
Bohužel, tak funguje instalační program Joomly a MySQL, které nemá tuto základní instrukci
tohle je bohužel chyba, která se nedá ošetřit díky chybějícím instrukcím v MySQL (MariaDB to umí)
Při upgradu došlo k tomu, že to chtělo vložit sloupec do databáze, který tam už byl. Z jakého důvodu tam už byl, těžko říct.
Tady pomůže jen postupné mazání instrukcí pro upgrade a zkoušení upgradu:
- tedy otevřít instalační ZIP balíček a vymazat tuto instrukci z update SQL dotazu
instalační balíček ZIP (pouze komponenty): admin/update/update/sql/mysql/3.5.3.sql
Code:
ALTER TABLE `#__phocacart_orders` ADD COLUMN `queue_number` varchar(64) NOT NULL DEFAULT '';
Ale zda smazat jen instrukci pro tento sloupec nebo pro ostatní, těžko říc - zkusil bych podle toho souboru zjistit, zda ty tabulky už v databázi jsou nebo ne, pokud ano, pak všechny smazat
Po smazání balíček znovu zabalit a zkusit nainstalovat. A pokud tam bude další sloupec, co už v databázi je, tak opět to stejné pro daný sloupec
více zde:
www.phoca.cz/blog/1100-solution-to-a-pro...-updating-components
Bohužel, tak funguje instalační program Joomly a MySQL, které nemá tuto základní instrukci
Phoca Cart - www.phoca.cz/phocacart - e-shop, e-commerce
Phoca Gallery - www.phoca.cz/phocagallery - obrázková galerie
Phoca Download - www.phoca.cz/phocadownload - stahování souborů
Phoca Guestbook - www.phoca.cz/phocaguestbook - guestbook
Poděkovali: polato
- Rudolf
-
- OFFLINE
- Joomla Expert
-
11. úno 2021 21:26 #143706
od Rudolf
Proto mi vždy v easysoftware programátoři kladli na srdce, že je třeba nevyužívat automatické funkce a udělat si vlastní script php do aplikace, který bude načítat přírůstkové DB po zjištění stavu jaká verze je nainstalovaná (na to pak existuje složka v instalaci s přírůstkovými DB).
Nebo jsem to popletl a mluvím o něčem úplně jiném
MiniJoomla! - www.minijoomla.cz - eshop s rozšířením Joomla/VM
Email Manager - aplikace na správu šablon emailů pro VirtueMart
Easy Feeder - aplikace na generování XML/CSV feedů a napojení na ERP pro VM
PragueClassicconcert - portál pro prodej vstupenek na systému Joomla
Odpověď od Rudolf v tématu Phoca Cart - chyba při aktualizaci na verzi 3.5.5
Bohužel, tak funguje instalační program Joomly a MySQL, které nemá tuto základní instrukci
Proto mi vždy v easysoftware programátoři kladli na srdce, že je třeba nevyužívat automatické funkce a udělat si vlastní script php do aplikace, který bude načítat přírůstkové DB po zjištění stavu jaká verze je nainstalovaná (na to pak existuje složka v instalaci s přírůstkovými DB).
Nebo jsem to popletl a mluvím o něčem úplně jiném
MiniJoomla! - www.minijoomla.cz - eshop s rozšířením Joomla/VM
Email Manager - aplikace na správu šablon emailů pro VirtueMart
Easy Feeder - aplikace na generování XML/CSV feedů a napojení na ERP pro VM
PragueClassicconcert - portál pro prodej vstupenek na systému Joomla
- polato
-
Autor
- OFFLINE
- Začátečník
-
Méně
Více
- Příspěvky: 38
12. úno 2021 00:27 #143707
od polato
Odpověď od polato v tématu Phoca Cart - chyba při aktualizaci na verzi 3.5.5
Díky za radu, provedl jsem tyto úpravy a instalace se podařila. 
-- ALTER TABLE `#__phocacart_orders` ADD COLUMN `queue_number` varchar(64) NOT NULL DEFAULT '';
-- ALTER TABLE `#__phocacart_orders` ADD COLUMN `queue_number_id` int(11) NOT NULL DEFAULT '0';
-- ALTER TABLE `#__phocacart_product_stock` ADD COLUMN `sku` varchar(255) NOT NULL DEFAULT '';
-- ALTER TABLE `#__phocacart_product_stock` ADD COLUMN `ean` varchar(15) NOT NULL DEFAULT '';
-- ALTER TABLE `#__phocacart_orders` ADD COLUMN `queue_number` varchar(64) NOT NULL DEFAULT '';
-- ALTER TABLE `#__phocacart_orders` ADD COLUMN `queue_number_id` int(11) NOT NULL DEFAULT '0';
-- ALTER TABLE `#__phocacart_product_stock` ADD COLUMN `sku` varchar(255) NOT NULL DEFAULT '';
-- ALTER TABLE `#__phocacart_product_stock` ADD COLUMN `ean` varchar(15) NOT NULL DEFAULT '';
- Cony
-
- Pryč
- Moderátor
-
Méně
Více
- Příspěvky: 5174
12. úno 2021 02:04 #143708
od Cony
Odpověď od Cony v tématu Phoca Cart - chyba při aktualizaci na verzi 3.5.5
OT: V rámci instalátoru to lze řešit pomocí FOF frameworku od Akeeby (je součástí Joomly). Aktualizace se tam nepíší do sql souborů ale do XML, s různými doplňujícími podmínkami...
- Rudolf
-
- OFFLINE
- Joomla Expert
-
12. úno 2021 08:43 #143709
od Rudolf
To ale asi neplatí u aplikací ,které se prvotně napsaly pro J25, kde asi fof akeeba nebyl, a nyní jsou jen upgradovány na j3, že ne?
MiniJoomla! - www.minijoomla.cz - eshop s rozšířením Joomla/VM
Email Manager - aplikace na správu šablon emailů pro VirtueMart
Easy Feeder - aplikace na generování XML/CSV feedů a napojení na ERP pro VM
PragueClassicconcert - portál pro prodej vstupenek na systému Joomla
Odpověď od Rudolf v tématu Phoca Cart - chyba při aktualizaci na verzi 3.5.5
V rámci instalátoru to lze řešit pomocí FOF frameworku od Akeeby (je součástí Joomly). Aktualizace se tam nepíší do sql souborů ale do XML, s různými doplňujícími podmínkami...
To ale asi neplatí u aplikací ,které se prvotně napsaly pro J25, kde asi fof akeeba nebyl, a nyní jsou jen upgradovány na j3, že ne?
MiniJoomla! - www.minijoomla.cz - eshop s rozšířením Joomla/VM
Email Manager - aplikace na správu šablon emailů pro VirtueMart
Easy Feeder - aplikace na generování XML/CSV feedů a napojení na ERP pro VM
PragueClassicconcert - portál pro prodej vstupenek na systému Joomla
- Cony
-
- Pryč
- Moderátor
-
Méně
Více
- Příspěvky: 5174
12. úno 2021 13:22 #143710
od Cony
Odpověď od Cony v tématu Phoca Cart - chyba při aktualizaci na verzi 3.5.5
To neplatí u aplikací, které fof nepoužívají. fof je framework, který v Joomle je asi opravdu až od J3 (v J4 už nativně zas nebude), nicméně lze jej použít pro vývoj komponenty od začátku a přibalit jej do instalátoru (pak bude funkční i na J2.5). Má některé poměrně šikovné funkce, někde je pro mně trochu krkolomný, ale zrovna ten instalátor tam je zajímavý.
- H13
-
- OFFLINE
- Admin
-
Méně
Více
- Příspěvky: 2634
13. úno 2021 20:54 - 13. úno 2021 20:55 #143711
od H13
Původně měly všechny Phoca rozšíření vlastní metody, tedy se to tam kontrolovalo a k takovýmto chybám nedocházelo. Ale po enormním tlaku typu: "Proč rozšíření nepoužívá standardní Joomla instalační vlastnost?", atd. se to změnilo.
Ale tady bych nevinil ani tak Joomlu jako spíš jen a pouze MySQL. Kvůli této chybějící jednodoché instrukci "IF NOT EXIST" v MySQL se píší zbytečně přeplácané řešení a vůbec tomu tak nemusí být. No a kvůli tomu, že je v Joomle pouze jeden driver jak pro MySQL tak pro MariaDB, to pak "odnášejí" i uživatelé MariaDB. A zase nutno podotkonout, že s tím Joomla asi nic neudělá, protože psát driver zvlášť pro MariDB a MySQL asi nemá smysl, když jsou, co se týče chování, z 99% stejný.
Pokud se člověk podívá např. na stack overflow a témata jako je "mysql - add column if not exist", tak uvidí vysoký počet požadavků na řešení tohoto problému a zároveň různé krkolomné řešení za pomocí stávajících metod. Pro vývojáře MySQL snad neexistuje přímočařejší feedback pro to, jakou vlastnost by měly implementovat.
Phoca Cart - www.phoca.cz/phocacart - e-shop, e-commerce
Phoca Gallery - www.phoca.cz/phocagallery - obrázková galerie
Phoca Download - www.phoca.cz/phocadownload - stahování souborů
Phoca Guestbook - www.phoca.cz/phocaguestbook - guestbook
Odpověď od H13 v tématu Phoca Cart - chyba při aktualizaci na verzi 3.5.5
Proto mi vždy v easysoftware programátoři kladli na srdce, že je třeba nevyužívat automatické funkce a udělat si vlastní script php do aplikace, který bude načítat přírůstkové DB po zjištění stavu jaká verze je nainstalovaná (na to pak existuje složka v instalaci s přírůstkovými DB).
Původně měly všechny Phoca rozšíření vlastní metody, tedy se to tam kontrolovalo a k takovýmto chybám nedocházelo. Ale po enormním tlaku typu: "Proč rozšíření nepoužívá standardní Joomla instalační vlastnost?", atd. se to změnilo.
Ale tady bych nevinil ani tak Joomlu jako spíš jen a pouze MySQL. Kvůli této chybějící jednodoché instrukci "IF NOT EXIST" v MySQL se píší zbytečně přeplácané řešení a vůbec tomu tak nemusí být. No a kvůli tomu, že je v Joomle pouze jeden driver jak pro MySQL tak pro MariaDB, to pak "odnášejí" i uživatelé MariaDB. A zase nutno podotkonout, že s tím Joomla asi nic neudělá, protože psát driver zvlášť pro MariDB a MySQL asi nemá smysl, když jsou, co se týče chování, z 99% stejný.
Pokud se člověk podívá např. na stack overflow a témata jako je "mysql - add column if not exist", tak uvidí vysoký počet požadavků na řešení tohoto problému a zároveň různé krkolomné řešení za pomocí stávajících metod. Pro vývojáře MySQL snad neexistuje přímočařejší feedback pro to, jakou vlastnost by měly implementovat.
Phoca Cart - www.phoca.cz/phocacart - e-shop, e-commerce
Phoca Gallery - www.phoca.cz/phocagallery - obrázková galerie
Phoca Download - www.phoca.cz/phocadownload - stahování souborů
Phoca Guestbook - www.phoca.cz/phocaguestbook - guestbook
- Cony
-
- Pryč
- Moderátor
-
Méně
Více
- Příspěvky: 5174
13. úno 2021 21:56 #143712
od Cony
Odpověď od Cony v tématu Phoca Cart - chyba při aktualizaci na verzi 3.5.5
No ono to IF NOT EXISTS není součástí SQL standardu, např. Firebird to také nemá. Ten ale umí EXECUTE BLOCK, taková "uložená procedura", bez toho aby se ukládala do databáze, tak lze jedním dotazem zjistit existenci sloupce a druhým případně upravit / vytvořit. MySQL toto bohužel také neumí.
Na druhou stranu, mělo by se jednat v podstatě o extrémní situaci, zřejmě když někdo nainstaluje nějakou beta verzi nebo nějak zasáhne do databáze, takže je asi v zásadě zbytečné to jakkoliv řešit
Na druhou stranu, mělo by se jednat v podstatě o extrémní situaci, zřejmě když někdo nainstaluje nějakou beta verzi nebo nějak zasáhne do databáze, takže je asi v zásadě zbytečné to jakkoliv řešit
Vygenerováno za 0.089 sekund