Как вставить SQL идентификаторы с помощью PHP - PullRequest
0 голосов
/ 15 декабря 2011

Если у меня есть таблица с именем MUSIC:

ID   SONG   ARTIST
1    Gum    Tim
2    Air    Bob

Как вставить строку с идентификатором автоинкремента?

INSERT INTO MUSIC (ID, SONG, ARTIST)
VALUES (,earth, mark);

Ответы [ 5 ]

1 голос
/ 15 декабря 2011

Вы можете сделать:

INSERT INTO MUSIC (SONG, ARTIST) VALUES ('earth', 'mark');

или

INSERT INTO MUSIC (ID, SONG, ARTIST) VALUES (NULL, 'earth', 'mark');
1 голос
/ 15 декабря 2011

Пока ID является вашим автоинкрементом, это должно работать.Вам не нужно указывать это в своем списке полей.

INSERT INTO MUSIC (SONG, ARTIST) VALUES (earth, mark);
0 голосов
/ 15 декабря 2011

Вам нужно установить таблицу в sql, чтобы иметь первичный ключ. Это не работа PHP, чтобы создать ключ. Затем, если вам нужен первичный ключ, сделайте что-то вроде этого:

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
mysql_select_db('mydb');

mysql_query("INSERT INTO mytable (product) values ('kossu')");
printf("Last inserted record has id %d\n", mysql_insert_id());
?>

Источник: http://php.net/manual/en/function.mysql-insert-id.php

0 голосов
/ 15 декабря 2011
Поле

ID должно быть "автоинкремент", подробнее здесь

А если это уже автоинкремент:

INSERT INTO MUSIC (SONG, ARTIST) VALUES ('Yesterday', 'Beatles');
0 голосов
/ 15 декабря 2011

Вам не нужно использовать идентификатор автоинкремента в SQL. Используйте это

INSERT INTO MUSIC (SONG, ARTIST) VALUES (earth, mark);

вместо этого столбец ID будет заполняться автоматически ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...