Jestem w trakcie lektury "PHP Apache MySQL od podstaw" i wykonuję poszczególne skrypty w niej opisane. Pojawił się jednak problem. Otrzymuję komunikat:
Duplicate entry '1' for key 'PRIMARY'
Przepisałem z książki i uruchomiłem 2 pliki: createmovie.php poszedł dobrze, natomiast po uruchomieniu moviedata.php wyskakuje błąd.
createmovie.php
<?php
$connect = mysql_connect("localhost", "user", "pass") or
die ("Nie udało się połączyć z bazą danych");
$movie = "CREATE TABLE movie (
movie_id int(11) NOT NULL auto_increment,
movie_name varchar(255) NOT NULL,
movie_type tinyint(2) NOT NULL default 0,
movie_year int(4) NOT NULL default 0,
movie_leadactor int(11) NOT NULL default 0,
movie_director int(11) NOT NULL default 0,
PRIMARY KEY (movie_id),
KEY movie_type (movie_type,movie_year)
)";
$movietype = "CREATE TABLE movietype (
movietype_id int(11) NOT NULL auto_increment,
movietype_label varchar(100) NOT NULL,
PRIMARY KEY (movietype_id)
)";
$people = "CREATE TABLE people (
people_id int(11) NOT NULL auto_increment,
people_fullname varchar(255) NOT NULL,
people_isactor tinyint(1) NOT NULL default 0,
people_isdirector tinyint(1) NOT NULL default 0,
PRIMARY KEY (people_id)
)";
echo "Poprawnie utworzono bazę danych filmów"; ?>
moviedata.php
<?php
$connect = mysql_connect("localhost", "user", "pass") or
die ("Nie udało się połączyć z bazą danych");
$insert = "INSERT INTO movie (movie_id, movie_name, movie_type, " .
"movie_year, movie_leadactor, movie_director) " .
"VALUES (1, 'Bruce Wszechmogący', 5, 2003, 1, 2), " .
"(2, 'Życie biurowe', 5, 1999, 6, 5)," .
"(3, 'Wielki Kanion', 2, 1991, 4, 3)";
$type = "INSERT INTO movietype (movietype_id, movietype_label) " .
"VALUES (1, 'Science fiction'), " .
"(2, 'Dramat'), " .
"(3, 'Przygoda'), " .
"(4, 'Wojenny'), " .
"(5, 'Komedia'), " .
"(6, 'Horror'), " .
"(7, 'Akcja'), " .
"(8, 'Dla dzieci')";
$people = "INSERT INTO people (people_id, people_fullname, " .
"people_isactor, people_isdirector) " .
"VALUES (1, 'Jim Carrey', 1, 0), " .
"(2, 'Tom Shadyac', 0, 1), " .
"(3, 'Lawrecne Kasdan', 0, 1), " .
"(4, 'Kevin Kline', 0, 1), " .
"(5, 'Ron Livingston', 1, 0), " .
"(6, 'Mike Judge')";
echo "Dane zostały wstawione poprawnie"; ?>
Być może jest jakaś literówka, a ja długo wpatruję sie w kod i mi ona ucieka. Bardzo proszę o rzut oka i ew. poprawę.