Как вставить новую строку в базу данных с помощью столбца AUTO_INCREMENT без указания имен столбцов?

У меня есть таблица со следующими столбцами:

  • id - INT UNSIGNED AUTO_INCREMENT
  • name - VARCHAR (20)
  • group - VARCHAR (20)

Я знаю, что я могу добавить строку следующим образом:

INSERT INTO table_name (name, group) VALUES ('my name', 'my group')

Интересно, есть ли способ добавить строку без указания имен столбцов, например, когда нет столбца AUTO_INCREMENT?

Ответ 1

Для некоторых баз данных вы можете просто вставить NULL в столбец auto_increment:

INSERT INTO table_name VALUES (NULL, 'my name', 'my group')

Ответ 2

Еще лучше, используйте DEFAULT вместо NULL. Вы хотите сохранить значение по умолчанию, а не значение NULL, которое может вызвать значение по умолчанию.

Но вам лучше назвать все столбцы, а часть SQL вы можете создать все необходимые INSERT, UPDATE и DELETE. Просто проверьте information_schema и создайте нужные вам запросы. Нет необходимости делать все это вручную, SQL может помочь вам.

Ответ 3

Просто добавьте имена столбцов, да вы можете использовать Null вместо этого, но это очень плохая идея не использовать имена столбцов в любой вставке.