Mam w bazię między innymi takie dwie tabele:
Kod
CREATE TABLE pictures (
id_picture INTEGER UNSIGNED DEFAULT 0 NOT NULL,
PRIMARY KEY (id_picture)
) ENGINE=InnoDB;
CREATE TABLE records (
id_record INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
categories_id_categorie INTEGER UNSIGNED DEFAULT 0 NOT NULL,
pictures_id_picture INTEGER UNSIGNED DEFAULT 0 NOT NULL,
movies_id_movie INTEGER UNSIGNED DEFAULT 0 NOT NULL,
users_id_user INTEGER UNSIGNED DEFAULT 0 NOT NULL,
title VARCHAR(80) DEFAULT '' NOT NULL,
count INTEGER UNSIGNED DEFAULT 0 NOT NULL,
size INTEGER UNSIGNED DEFAULT 0 NOT NULL,
location_file VARCHAR(80) DEFAULT '' NOT NULL,
add_date INT DEFAULT 0 NOT NULL,
adult TINYINT UNSIGNED DEFAULT 0 NOT NULL,
PRIMARY KEY (id_record)
) ENGINE=InnoDB;
CREATE INDEX records_FKIndex1 ON records (users_id_user ASC);
CREATE INDEX records_FKIndex2 ON records (movies_id_movie ASC);
CREATE INDEX records_FKIndex3 ON records (pictures_id_picture ASC);
i teraz chcę dodać jakiś wpis to tabeli rekord, wykonuje to za pomocą takiego polecenia :
<?php parent::query('INSERT INTO records(title, categories_id_categorie, size, add_date, adult) VALUES('."'$title'".','."'$category'".','."'$size'".','."'$now'".','."'$adult'".')'); parent::query('INSERT INTO pictures(id_picture) VALUES('."'$last_id'".')'); ?>
po wykonaniu tego pojawiają sie wartości w obu tabelach prawidłowo, jednak pole pictures_id_picture w tabeli RECORDS jest puste. Jest to klucz obcy z tabeli PICTURES a w niej prawidłowo jest dodany rekord, czy musze dodawać ręcznię tą wartosć także do tabeli RECORS czy jako klucz obcy nie powinna zostać automatycznie uzupełniona??