Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЭУМКД_БД_2.doc
Скачиваний:
20
Добавлен:
23.09.2019
Размер:
6.01 Mб
Скачать

1.3.2. Имена в sql

У каждого объекта в базе данных есть уникальное имя. Имена используются в инструкциях SQL и указывают, над каким объектом базы данных инструкция должна выполнить действие. Основными именованными объектами в реляционной базе данных являются таблицы, столбцы и пользователи. В новых стандартах SQL этот список значительно расширен и включает схемы (коллекции таблиц), ограничения (ограничительные условия, накладываемые на содержимое таблиц и их отношения), домены (допустимые наборы значений, которые могут быть занесены в столбец) и ряд других объектов. Во многих СУБД существуют дополнительные виды именованных объектов, например хранимые процедуры, отношения и формы.

В соответствии со стандартом ANSI/ISO имена в SQL должны содержать от 1 до 18 символов, начинаться с буквы и не содержать пробелов или специальных символов пунктуации. В стандарте SQL2 максимальное число символов в имени увеличено до 128. На практике поддержка имён в различных СУБД реализована по-разному. Кроме того, в различных СУБД существуют разные подходы к использованию в именах таблиц специальных символов. Поэтому для повышения переносимости лучше делать имена сравнительно короткими и избегать употребления в них специальных символов.

Имена таблиц

Если в инструкции указано имя таблицы, СУБД предполагает, что происходит обращение к одной из ваших собственных таблиц (т.е. таблиц, которые создали вы). Обычно таблицам присваиваются короткие, но описательные имена. В небольших базах данных, предназначенных для личного или группового использования, выбор имён зависит от разработчика базы данных. В более крупных, корпоративных базах данных могут существовать определённые корпоративные стандарты именования таблиц, позволяющие избежать конфликтов имён.

Большинство СУБД позволяют различным пользователям создавать таблицы с одинаковыми именами. Имея соответствующее разрешение, можно обращаться к таблицам, владельцами которых являются другие пользователи, с помощью полного имени таблицы. Оно состоит из имени владельца таблицы и собственно её имени, разделённых точкой. Например, полное имя таблицы BIRTHDAYS, владельцем которой является пользователь по имени SAM, имеет следующий вид:

SAM.BIRTHDAYS

Полное имя таблицы можно использовать вместо короткого имени во всех инструкциях SQL.

Стандарт SQL2 ещё больше обобщает понятие полного имени таблицы. Он разрешает создавать именованное множество таблиц, называемое схемой. Для доступа к таблице в схеме также применяется полное имя. Например, обращение к таблице BIRTHDAYS, помещенной в схему EMPLOYEEINFO, записывается так:

EMPLOYEEINFO.BIRTHDAYS

Имена столбцов

Если в инструкции задаётся имя столбца, СУБД сама определяет, в какой из указанных в этой же инструкции таблиц содержится данный столбец. Однако если в инструкцию требуется включить два столбца из различных таблиц, но с одинаковыми именами, необходимо указать полные имена столбцов, которые однозначно определяют их местонахождение. Полное имя столбца состоит из имени таблицы, содержащей столбец, и имени столбца (короткого имени), разделённых точкой. Например, полное имя столбца SALES из таблицы SALESREPS имеет следующий вид:

SALESREPS.SALES

Если столбец находится в таблице, владельцем которой является другой пользователь, то в полном имени столбца следует указывать полное имя таблицы. Например, полное имя столбца BIRTH_DATE в таблице BIRTHDAYS, владельцем которой является пользователь SAM, имеет следующий вид:

SAM.BIRTHDAYS.BIRTH_DATE

Полное имя столбца можно использовать вместо короткого имени во всех инструкциях SQL (об исключениях будет сказано ниже).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]