#firebird #interbase #isql
#firebird #interbase #isql
Вопрос:
Я создаю простой скрипт isql, но он не работает, и мне нужна помощь, чтобы выяснить, что с ним не так.
Мне нужно подключиться к базе данных и выполнить файл SQL. Это мой скрипт под названием script.sql:
CONNECT 'localhost:C:MondeServidordbmonde.fdb' USER 'SYSDBA' PASSWORD 'masterkey';
update usuario
set senha = 'MYkWEn0kHLHHdm'
where login = 'rose'
Когда я пытаюсь подключиться к своей базе данных с помощью.:
isql.exe -i script.sql
Я получаю это последующее сообщение.:
Use CONNECT or CREATE DATABASE to specify a database
Expected end of statement, encountered EOF
Ответ №1:
Хорошо, хотя это старый вопрос, я выяснил, как это сделать, вам просто нужно добавить параметр de -q, вот так:
isql.exe -q -i script.sql
Источник:
Ответ №2:
Добавьте точку с запятой в конец UPDATE
инструкции:
CONNECT 'localhost:C:MondeServidordbmonde.fdb' USER 'SYSDBA' PASSWORD 'masterkey';
update usuario
set senha = 'MYkWEn0kHLHHdm'
where login = 'rose';
Комментарии:
1. Ошибка при использовании CONNECT или CREATE DATABASE для указания инструкции database, ошибка SQLSTATE = 42000 Dynamic SQL Error -Код ошибки SQL = -104 -Неожиданное завершение командной строки 1, столбец 8 после строки 1 в файле usuario.ошибка команды sql: set senha = ‘MYkWEn0kHLHHdm’, где login = ‘rose’
2. @user: введите новую строку после последней строки.
3. @user: поместите курсор в конец файла, после последней точки с запятой, и нажмите
Enter
.4. @user: тогда не могу вам помочь. Я только что воспроизвел это на своем
Firebird 1.5
, это работает. Пожалуйста, скопируйте и вставьте команды из моего ответа.5. Что ж, это сработало. Я забыл добавить запятую после «обычно обновлять». Большое спасибо за вашу помощь.