как выполнить команду sql из командной строки, не используя файл сценария?

#sql #command-line #firebird

#sql #командная строка #firebird

Вопрос:

есть ли какой-либо способ выполнить, update contact set email_address='foo@bar.com'; используя isql (firebird) в Linux?

Я не хочу использовать -i переключатель для указания файла сценария sql. И я не могу использовать интерактивный режим, так как я буду запускать sql-команду из php-скрипта.

Комментарии:

1. Что echo "update contact set email_address='foo@bar.com';" | isql делает? Я не использовал firebird, но это должно работать с любым разумным инструментом.

2. @mu: вы хотите создать ответ из приведенного выше? Работает отлично 🙂 спасибо. В целом все выглядит так echo "update contact set email_address='foo@bar.com';" |/opt/firebird/bin/isql -user SYSDBA -pass password /var/lib/firebird/data/radek_db.gdb

Ответ №1:

Большинство разумных оболочек SQL поступают правильно при вводе команд на стандартный ввод, поэтому вы должны иметь возможность просто echo ввести свой SQL в isql :

 echo "update contact set email_address='foo@bar.com';" | /path/to/isql --your-favorite-switches