Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Table unknown USERS. Почему ??? :-/ [D7, IB6.x]


UnDISCOvery ©   (2003-02-20 20:43:00) 

Кинул на форму IbDatabase, IBTransaction, IBQuery, все настроил как в книжке ...
В запросе пишу: select * from users
и при вызове IBQuery.Open возникает сообщение об ошибке. см. сабж.

Как это так ?

база - FireBird, может поэтому ... :-/


Johnmen   (2003-02-22 00:02:00) [1]

>Desdechado ©
>Anatoly Podgoretsky ©

В том то все и дело, что создаю в 3 диалекте users, делаю селект хоть USERS, хоть UsERs, хоть "users" и т.д., ВСЕ НОРМАЛЬНО !
Непонятки.....
Лично сам я с 3 диалектом вплотную не работал и, надеюсь, не буду...:)


Anatoly Podgoretsky   (2003-02-21 16:56:00) [2]

Desdechado © (21.02.03 16:32)
Боюсь ошибиться, но это при создании, таблица должна быть названа большими буквами, а при запросе если нет кавычек, то преобразуется к большим, информация из каких груп новостей и не по FireBird, а по какой то версии IB.
Но вот информация из документации по IB 6

To use keywords, ASCII characters, case-sensitive strings, or spaces in an object name, enclose the name in double quotes. It is then a delimited identifier. Delimited identifiers must always be referenced in double quotes.


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

Относительно Users, в списке ключевых слов только USER


Desdechado   (2003-02-21 16:32:00) [3]

2 Anatoly Podgoretsky © (21.02.03 15:38)
тогда и в запросе большими, а то будет как у автора - table not found


Anatoly Podgoretsky   (2003-02-21 15:38:00) [4]

Не обязательно, если при создании использовались большие буквы.


Desdechado   (2003-02-21 15:29:00) [5]

для 3 диалекта регистр названий полей, таблиц и прочего ВАЖЕН, поэтому в запросе надо в кавычки и в нужном регистре


Johnmen   (2003-02-21 15:18:00) [6]

Странно это все...:)
Попробовал завести таблицу users - нет проблем,
напихал туда записей - нет проблем,
сделал селект без кавычек - нет проблем...
Единственное отличие - под FB сервером.


UnDISCOvery   (2003-02-21 14:45:00) [7]

понял


Anatoly Podgoretsky   (2003-02-21 14:05:00) [8]

Дело не в кавычках, а в том, что это резервированное имя, вот если бы у тебя было Users1 то кавычки не нужны.


UnDISCOvery   (2003-02-21 13:52:00) [9]

написал в запросе: select * from "Users"
запрос отработал без ошибок


Anatoly Podgoretsky   (2003-02-21 12:08:00) [10]

У тебя их нету, как может быть в этом дело


UnDISCOvery   (2003-02-21 11:59:00) [11]

Все выяснил: дело было в двойных кавычках :)


Sheriff   (2003-02-21 11:38:00) [12]

в диалекте 3 есть зарезервированные слова. USERS не оттуда?


UnDISCOvery   (2003-02-21 11:36:00) [13]

User SYSDBA
Таблица естественно существует, как переводится сообщение я тоже знаю :)
База в Диалекте 3, сделал такую же, но в Диалекте 1, все заработало.
Но все же интересует, почему возникала ошибка ?


Johnmen   (2003-02-20 23:55:00) [14]

Указанная таблица не существует, что и указано в тексте сообщения...


Den_777   (2003-02-20 21:37:00) [15]

Если User не SYSDBA, то у него должны быть права на Select по системным таблицам


Наверх

Титульная страница Поиск, карта сайта Написать письмо