2016-07-15 6 views
4
CREATE DATABASE test.fdb -user SYSDBA -password *******; 

Я использую команду выше для создания базы данных для моего проекта в Windows 7. Я новичок в Firebird SQL, я использовал свои учетные данные для входа в систему, но при этом появляется некоторая ошибка. Итак, как я могу сбросить пароль?Ток неизвестен при создании базы данных

SQL error code = -104 
Token unknown. 

Я даже не знаю, значение SQLCODE = -104.

ответ

2

Показанная ошибка не вызвана незнанием пароля базы данных, у вас есть синтаксическая ошибка в операторе CREATE DATABASE. Ошибка Ток неизвестен означает, что оператор-оператор читает то, чего он не ожидал; за ошибкой обычно следует оскорбительный токен.

Если я исполню ваше заявление с помощью ISQL на Firebird 3.0, я получаю следующее сообщение об ошибке: полный

SQL> CREATE DATABASE test.fdb -user SYSDBA -password *******; 
Statement failed, SQLSTATE = 42000 
SQL error code = -104 
-Token unknown 
-test 

Это означает, что в точке (или раньше) test что-то в запросе неправильно.

Правильный синтаксис для CREATE DATABASE является:

CREATE {DATABASE | SCHEMA} '<filespec>' 
[USER 'username' [PASSWORD 'password']] 
[PAGE_SIZE [=] size] 
[LENGTH [=] num [PAGE[S]] 
[SET NAMES 'charset'] 
[DEFAULT CHARACTER SET default_charset 
    [COLLATION collation]] -- not supported in ESQL 
[<sec_file> [<sec_file> ...]] 
[DIFFERENCE FILE 'diff_file']; -- not supported in ESQL 

<filespec> ::= [<server_spec>]{filepath | db_alias} 

<server_spec> ::= servername [/{port|service}]: | \\servername\ 

<sec_file> ::= FILE 'filepath' 
[LENGTH [=] num [PAGE[S]] [STARTING [AT [PAGE]] pagenum] 

Другими словами ваше заявление должно быть:

create database 'test.fdb' user SYSDBA password '*******'; 

Итак:

  • кавычки путь к файлу базы данных (или псевдоним)
  • No - befor Е user и password Пунктом
  • кавычки пароля (в отличие от синтаксиса показано, кавычки являются необязательными вокруг имени пользователя)

Как и в сторону, то SQL error code, как правило, не очень интересно (так как некоторые из них может охватывать несколько разных ошибок).

+0

является ли Жесткий диск чувствительным к регистру? – kvk30

+1

@ kvk30 Когда дело доходит до утверждений: no (так что 'CREATE DATABASE ...' и 'create database ...' оба работают), но когда дело доходит до имен объектов: они, возможно, есть. Идентификаторы без кавычек нечувствительны к регистру (они хранятся в верхнем регистре), цитируемые имена объектов чувствительны к регистру (они хранятся как есть), см. Также http://www.firebirdsql.org/file/documentation/reference_manuals/fblangref25-en/html /fblangref25-structure-identifiers.html –

+0

Как сбросить пароль для Firebird 2.1? – kvk30

Смежные вопросы