Гость
Map
Форумы / Informix [игнор отключен] [закрыт для гостей] / Зачем в Informix схемы для объектов? / 5 сообщений из 5, страница 1 из 1
29.11.2011, 18:58
    #37550672
RTYi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Зачем в Informix схемы для объектов?
Недавно, играя с Informix наткнулся на такую штуку, что например при создании таблицы со схемой test1, эта таблица может быть использована без указания схемы.

Пример:

Код: plaintext
create table test1.tb1 (c1 int);

Код: plaintext
Select c1 from  test1.tb1
идентично следующему
Код: plaintext
Select c1 from tb1

А созать еще одну таблицу с таким же именем, но в другой схеме уже нельзя:

Код: plaintext
create table test2.tb1 (c1 int);

Error: Table (test2.tb1) already exists in database.

Вот и возник вопрос к чему в информиксе схемы для объектов? Причем для остальных обектов (процедуры, функции etc) тоже самое.
...
Рейтинг: 0 / 0
29.11.2011, 19:11
    #37550687
RTYi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Зачем в Informix схемы для объектов?
Хотя есть мысль, что схемы нужны для организации прав доступа к объектам разных пользователей.
...
Рейтинг: 0 / 0
29.11.2011, 19:49
    #37550748
Daugava
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Зачем в Informix схемы для объектов?
Если бы в процессе игры заглянули бы Informix Guide to SQL Syntax. То узнали бы, что в структуру названия таблицы входит ее владелец (owner). Собственно это требования к SQL стандарта ANSI.


If you are using an ANSIcompliant
database, you must
specify the owner for a table that
you do not own. If you put
quotation marks around the
name that you enter in owner, the
name is stored exactly as typed.
If you do not put quotation
marks around the name that you
enter in owner, the name is stored
as uppercase letters. In SELECT
statements and other statements
that access tables in an ANSIcompliant
database, the table
owner that you specify must
exactly match the actual owner
of the table.
...
Рейтинг: 0 / 0
29.11.2011, 23:56
    #37551059
АнатоЛой
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Зачем в Informix схемы для объектов?
Кроме того, для CREATE TABLE сказано:
The table name must be unique among all the names of tables, views, sequences, and synonyms within the same database, but the names of columns need only be unique among the column names of the same table.

In an ANSI-compliant database, the combination owner.table must be unique among tables, synonyms, views, and sequence objects within the database.
...
Рейтинг: 0 / 0
30.11.2011, 08:41
    #37551280
Журавлев Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Зачем в Informix схемы для объектов?
RTYiХотя есть мысль, что схемы нужны для организации прав доступа к объектам разных пользователей.да так и есть.

Вам тут намекают, хотя наверно это и не понятно, о том что в информиксе бывает 2 типа баз: ANSI и не ANSI. В ANSI базе можно создать две таблицы с одинаковыми именами, но разными владельцами и в запросе придется во from указывать владельца. У вас не ANSI база.
ANSI базу можно сделать create database ..... ansi не помню чего....

Обычно используют не ANSI бд.
...
Рейтинг: 0 / 0
Форумы / Informix [игнор отключен] [закрыт для гостей] / Зачем в Informix схемы для объектов? / 5 сообщений из 5, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]