Jak načíst z db jeden záznam podle primárního klíče, který je složen z více sloupců

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

Mám v db tabulku, kde primární klíč je složen ze čtyř sloupců a pomocí get() jsem se pokusil načíst jeden záznam – vzhledem k tomu, že get() má jeden parametr typu mixed, zkusil jsem mu dát pole, které obsahovalo čtyři prvky – hodnoty těch čtyř polí primárního klíče. Ale záznam se mi nenačetl – proměnná obsahuje false, když si jí vydumpuji. Jak tedy načíst záznam z takovéto tabulky?

GEpic
Člen | 566
+
0
-

kde primární klíč je složen ze čtyř sloupců :-O ? … Můžeš to nastínit jak to vypadá?

Editoval GEpic (7. 10. 2016 11:49)

Mirek
Člen | 86
+
0
-

takle nějak :

CREATE TABLE IF NOT EXISTS `tb_znamky` (
  `stat` char(2) CHARACTER SET ascii NOT NULL,
  `typ_id` tinyint(3) unsigned NOT NULL,
  `znamka_id` smallint(5) unsigned NOT NULL,
  `verze` char(1) CHARACTER SET ascii NOT NULL,
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci;

--
-- Klíče pro tabulku `tb_znamky`
--
ALTER TABLE `tb_znamky`
 ADD PRIMARY KEY (`stat`,`typ_id`,`znamka_id`,`verze`);
Michal Hlávka
Člen | 190
+
0
-

GEpic napsal(a):

kde primární klíč je složen ze čtyř sloupců :-O ? … Můžeš to nastínit jak to vypadá?

http://stackoverflow.com/…-primary-key

Mirek
Člen | 86
+
0
-

Takže použít get() s primárním klíčem přes více sloupců tedy nejde?

Mirek
Člen | 86
+
0
-

Díky, s wherePrimary() mi to funguje