2013-05-17 2 views
1

Я пытаюсь использовать это, чтобы вставить значение «да» в столбец list_title, где stream_number = '3'. Я не могу понять, почему на самом деле он не будет вставлять «да» в ячейку или любую ячейку.SQL INSERT INTO для конкретной ячейки

mysqli_query($con,"INSERT INTO livestreams (list_title) VALUE ('yes') WHERE stream_number='3'"); 

Херес SQL я использую, чтобы создать таблицу, если это помогает

$createTable = "CREATE TABLE livestreams (stream_number INT NOT NULL AUTO_INCREMENT, PRIMARY KEY(stream_number), stream_name CHAR(30), desired_username CHAR(30), stream_status CHAR(10), channel_description VARCHAR(300), game_name VARCHAR(100), viewer_count INT, list_title CHAR(30))"; 

ответ

5

Что вы ищете является UPDATE, не INSERT. В поле INSERT добавлены новые строки, а UPDATE что-то изменяет в существующих строках.

UPDATE livestreams SET list_title = 'yes' WHERE stream_number = '3' 

Этот SQL-запрос должен делать.

1

Вы не должны использовать INSERT INTO с WHERE. Вместо этого используйте UPDATE.

3

INSERT Вставляет новый стол в таблицу.
К обновление существующий ряд, используйте запрос UPDATE.

Видимо, вам нужно перестать думать в терминах «ячеек» Excel. Базы данных работают с рядами a.k.a. записей, и эти записи имеют поля. Хранилище данных не является двумерной сеткой, где вы «вставляете» данные в «ячейки»; даже несмотря на то, что он часто представлен таким же образом в пользовательском интерфейсе.

+1

+1 для excel vs database пояснения – Nanne