Spojení více tabulek table selection

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
vibko
Člen | 43
+
0
-

Dobrý den, je možné nějak propojit při table selection 3 tabulky, když není nastaven klíč? Vím, že se to tu řešilo vícekrát, ale nějak se mi nikdo nepodařilo najít odpověď.. Děkuji

Mysteria
Člen | 797
+
0
-

Pokud dodržují nějaké konvenční pojmenování (v základu PK jako id a spojovací sloupce jako tabulka_id) tak ano.

vibko
Člen | 43
+
0
-

Mockrát děkuji za odpověď, nemohl byste jen nastínit, jak by kód vypadal v případě spojení dvou tabulek prosím?

CZechBoY
Člen | 3608
+
0
-

@vibko Chceš kod na vytvoření těch tabulek nebo vytvoření Selection nebo vytvoření StaticConventions?

Mysteria
Člen | 797
+
0
-

Podívej se nejdřív sem, je to tam na příkladu dobře vysvětlený plus je to tam i konvenčně pojmenované, takže to půjde i bez cizích klíčů. Kdyby jsi to nepochopil nebo nedokázal aplikovat na svůj model, tak sem hoď strukturu databáze a čeho chceš dosáhnout a nějak to vymyslíme. :)

vibko
Člen | 43
+
0
-

Děkuji za rady. Jedná se o to, že mám tabulku ‚products‘ a ke každému produktu je přiřazeno několik packages a k packages je přiřazena cena, ale cen je je více, přiřadí se vždy ta podle role. Nevím, jestli je to vůbec možné takhle propojit, proto se ptám.. děkuji moc za všechny rady..

CREATE TABLE `products` (
  `id` int(10) UNSIGNED NOT NULL,
  `section` int(10) UNSIGNED NOT NULL DEFAULT '0',
  `name` varchar(255) COLLATE utf8_czech_ci NOT NULL DEFAULT '',
  `description` text COLLATE utf8_czech_ci NOT NULL,
  `link` varchar(255) COLLATE utf8_czech_ci NOT NULL DEFAULT '',
  `image` varchar(255) COLLATE utf8_czech_ci NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

CREATE TABLE `packages` (
  `id` int(10) UNSIGNED NOT NULL DEFAULT '0',
  `products_id` int(10) UNSIGNED NOT NULL DEFAULT '0',
) ENGINE=MyISAM DEFAULT CHARSET=utf8;


CREATE TABLE `prices` (
  `id` int(10) UNSIGNED NOT NULL,
  `packages_id` int(10) UNSIGNED NOT NULL DEFAULT '0',
  `price` float NOT NULL DEFAULT '0',
  `roles` int(10) UNSIGNED NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

Editoval vibko (27. 7. 2016 11:36)