Eli sellainen probleema on, että mulla on kolme taulua, ja kahdessa niistä on oman taulunsa id-numerot. nyt ne id:t pitäis saada näkymään siinä kolmannessa.. mites se onnistuu?
kun noissa kahdessa id kasvaa, ne siirtyis tohon kolmanteenkin..
olen yrittänyt jotain tällasta:
$ID1 = select MAX(id) from a;
$ID2 = select MAX(id) from b;
INSERT INTO c values("a 1", "b 1");
kun noissa kahdessa id kasvaa, ne siirtyis tohon kolmanteenkin..
olen yrittänyt jotain tällasta:
$ID1 = select MAX(id) from a;
$ID2 = select MAX(id) from b;
INSERT INTO c values("a 1", "b 1");
Vastaukset 2
Vanhimmat
sql = "INSERT INTO c values(' . $ID1 1 .', '. $ID2 1 .')";
Toisaalta tämä kuulostaa nyt joltain ihme säädöltä. Relaatiokantojen sääntöihin kuuluu, että tietoja ei saisi kopioida ja tietoja ei saisi johtaa muista tiedoista.
Eli mikä tarkoitus tällä kolmannella taululla on? a ja b-taulun rivien määrän saa haettua yksinkertaisella kyselyllä, niin miksi niille on oma taulu?
Jos oikein ymmärsin mitä haluat, niin triggereil tuo kannattaa tehdä. Mutta mihkä moista tarttet?
*
eikös tuon pitäisi olla
$ID1 = select MAX(id) from a;
$ID2 = select MAX(id) from b;
sql = "INSERT INTO c values(' . $ID1 1 .', '. $ID2 1 .')";
*
Ei, tai periaatteessa kyllä kunhan suoritetaan noi kyselyt erikseen ja sitten kolmanteen kyselyyn niiden tieto. Tai tehdään alikysely.
Vaikkapa.
INSERT INTO c values ((SELECT MAX(id) 1 FROM a),(SELECT MAX(id) 1 FROM b))
Toisekseen
$ID1 = select MAX(id) from a;
Pitää ol
$ID1 = 'SELECT MAX(id) FROM a';