В моем скрипте Perl я получаю строки путей к файлам, которые могут содержать переменные среды, например, $ FONTS / test.ttf.
или $ TMP / file.txt
.
Теперь я хочу открыть эти файлы следующим образом:
open my $handle, "<$filename" or die $!;
Как теперь я могу развернуть переменные среды до вызова open, как, например, имя - VARCHAR (20) group - VARCHAR (20) Я знаю, что могу добавить следующую строку: INSERT INTO table_name (name, group) VALUES ...
У меня есть таблица со следующими столбцами:
id
- INT НЕ ПОДПИСАНО AUTO_INCREMENT имя
- VARCHAR (20) группа
- VARCHAR (20) Я знаю, что могу добавить такую строку:
INSERT INTO table_name (name, group) VALUES ('my name', 'my group')
Интересно, есть ли способ добавить строку без указания имен столбцов , например, когда нет столбца AUTO_INCREMENT?
Для некоторых баз данных вы можете просто явно вставить NULL
в столбец auto_increment
:
INSERT INTO table_name VALUES (NULL, 'my name', 'my group')
Еще лучше, используйте DEFAULT вместо NULL. Вы хотите сохранить значение по умолчанию, а не NULL, которое может вызвать значение по умолчанию.
Но вам лучше назвать все столбцы, с помощью фрагмента SQL вы можете создать все необходимые вам INSERT, UPDATE и DELETE. Просто проверьте information_schema и составьте нужные вам запросы. Нет необходимости делать все вручную, SQL может вам помочь.
Просто добавьте имена столбцов, да, вы можете использовать Null вместо этого, но это очень плохая идея - не использовать имена столбцов в любой вставке, никогда.