(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Типовые cхемы Oracle: Скажем Goodbye, Scott !

Источник: databasejournal
Стив Коллан

Нашего героя, учетную запись (ранее пользователя) SCOTT с паролем TIGER, знают, естествено, все oracle-исты мира. Большинство также знает, что это имя одного из первых служащих Software Development Laboratories (в последствии корпорация Oracle) Брюса Скотта (Bruce Scott), а пароль - гордое имя его кота Тигр (Tiger). Все знают и любят Scott/Tiger"а, а в русском языке еще добавляется маленькая улыбка, связанная с созвучием имени царя зверей и вида домашнего имущества. Так вот, хоронили или, что звучит намного приличнее, отправляли на покой Scott/Tiger уже много раз и давно.

В мире живут многие тысячи друзей SCOTT/TIGER, существует даже Общество его имени, а схема SCOTT/TIGER имеется в наличии по умолчанию в Oracle Database10g EE (правда, в Database10g XE ее надо заводить отдельно). Так что прощаться с SCOTT/TIGER еще рано. Он еще послужит многим поколениям настоящих oracle-истов.

Знаете ли Вы, что Oracle-ская схема "Scott" намечена на выброс? Сколько тысяч людей узнали SQL, SQL*Plus и PL/SQL посредством бедного старого Scott? Я рискну сказать, что все нынешнее поколение администраторов баз данных Oracle и разработчиков Oracle-приложений знакомо со схемой Scott, и сама схема, вероятно, - одна из самых известных частей Oracle. Схема Scott полезна во многих отношениях, но ей не хватает мощности и сложности, чтобы показать многие наиболее продвинутые возможности Oracle.

Хорошо. Если Scott уходит в сторону (на покой), кто же встанет на его место? К сожалению, типовые схемы, которые присутствуют в 9i и последующих релизах, в значительной степени обезличены. Теперь надо привыкать к именам типа HR, OE, PM, QS и SH.Действительно, если вы хоть раз создавали во время установки Oracle стартовую базу данных, то, возможно, уже "встретили" этих новых пользователей. Их имена (подсвеченные синим цветом) можно увидеть в представлении dba_users.

 

В порядке введения скажем, что за этими двух символьными именами стоит следующее:

• HR (Human resources - кадры, людские ресурсы) - основные темы, поддержка Oracle Internet Directory;

• OE (Order entry - ввод заказов) - промежуточные темы, различные типы данных (datatypes);

• PM (Product media - продуктовая среда) - типы данных (datatypes), используемые для мультимедиа;

• QS (Queued shipping - постановка в очередь) - продвинутая организация очередей, назвываемых IX в 10g;

• SH (Sales history - история продаж) - большое количество данных, аналитическая обработка.

Существует также подсхема, называемая OC (для

оперативного (Online) Catalog, использующегося в схеме OE), используемая для объектно-реляционных (object-relational) примеров.

В схеме Scott хорошо то, что она может быть удалена и воссоздана двумя командами ("drop user scott cascade;" с последующим запуском скрипта utlsampl.sql или demobld.sql). В новых же типовых схемах пользователи зависят друг от друга. Oracle предписывает порядок создания в случае, если вы захотите создать эти схемы вручную. Имена - HR, OE, PM, QS и SH - упорядочены по алфавиту, и этот порядок определяет очередность создания схем.

Все варианты инсталяции (personal, standard или enterprise) включают первые четыре схемы, и только конфигурация ЕЕ (enterprise edition), включающая опцию секционирования (partitioning), обеспечивается схемой SH. Для удобства Oracle предоставляет мастер-сценарий, который создает полную типовую схему. Этот мастер-сценарий находится в директории ORACLE_HOME\demo (SQL-скрипт mksample).

Примечание: как узнать, установлена опция секционирования? Так как эта статья предназначена для представления типовой схемы, а не опции секционирования, то самый быстрый способ узнать это состоит из следующих действий. Во-первых, если схема SH не создана, то и секционированные таблицы SH, вероятно, также не существуют. Во вторых, если схема SH существует, то взгляните на ее таблицы. Также можете обратиться к представлению xxx_part_tables, где префикс xxx принимает значение dba, all или user.

SQL> show user

USER is "SH"

SQL> select table_name, partitioned

2 from user_tables;

TABLE_NAME PAR

------------------------------ ---

CAL_MONTH_SALES_MV NO

CHANNELS NO

COSTS YES <--

COUNTRIES NO

CUSTOMERS NO

FWEEK_PSCAT_SALES_MV NO

MVIEW$_EXCEPTIONS NO

MV_CAPABILITIES_TABLE NO

PLAN_TABLE NO

PRODUCTS NO

PROMOTIONS NO

REWRITE_TABLE NO

SALES YES <--

SALES_TRANSACTIONS_EXT NO

TIMES NO

15 rows selected.

[Примечание от редакции OM/RE: довольно странный способ, чтобы выяснить наличие стандартной опции. Вроде бы гораздо проще задать следующий вопрос и получить на него однозначный ответ:

SQL> select * from v$option

2 where parameter = "Partitioning";

PARAMETER VALUE

-------------------- -----

Partitioning TRUE

Скорее всего Стив Коллан хочет на стандартном примере подсказать начинающему разработчику как создавать и использовать секционированные таблицы. -- А.Бачин]

Я в предыдущих статьях использовал схему SH из-за количества данных, содержавшихся в таблице SALES (приблизительно миллион строк). Полный набор типовых схем содержит много более трех миллионов записей данных, что является, конечно, лишь небольшой частью обрабатываемых данных нормального объема. К сожалению, если все, что нужно, содержится в нескольких строках таблицы, то вы оказываетесь перед необходимостью ограничивать или фильтровать данные. Предложение же "select * from emp;" возвращает 14 строк, а "select * from employees;" в схеме HR возвращает 107 строк (а таблица отделов (department) возвращает 27).

Поскольку Oracle не заявил, что удаляет SQL-скрипты пользователя Scott из программного комплекса, то приходит на ум совсем неплохая идея сохранить эти два сценария (demobld и utlsampl, находящиеся соответственно в директориях sqlplus\demo и rdbms\admin) для будущего упоминания и использования. Это же касается схем Adams, Jones, Clark и Blake, которые нам уже хорошо знакомы.

[Примечание от редакции OM/RE: в Oracle Database 10g также по умолчанию инсталлируются схемы Scott, Adams, Jones, Clark и Blake, но скрипт demobld.sql по указанному адресу отсутствует. Скорее всего также будет и в еще не дошедшей до меня Oracle Database 11g. -- А.Бачин]

В типовых схемах базы данных Oracle10g и Oracle9i присутствуют диаграммы. Схема Queued Shipping довольно сложна, если до сих пор вы пользовались только схемой Scott.

Если вы умеете рисовать диаграммы entity-relationship (сущность-связь) и создавать таблицы, то можете самостоятельно изучить скрипты-сценарии и диаграммы от Oracle. Анализируя эти скрипты, можно увидеть различные примеры написания предложений "create table" и "alter table". Также вы увидите несколько таблиц с параметром "PCTFREE 5". По какой причине он имеет место? И кроме того, зачем добавлена опция NOLOGGING к предложению "CREATE TABLE sales"?

В заключение

"Формальное" включение типовых схем в документацию и обучающие программы (как интерактивные, так и ведущиеся преподавателями) обеспечивает студентам, изучающих Oracle, и инструкторам, преподающих Oracle, наличие под рукой наилучших ресурсов, помогающих исследовать и применять большое количество расширенных способностей Oracle. Понимание, что происходит по запросу "select * from emp", является первым значительным шагом на дороге того, какие предлагает Oracle сложные типы данных, объекты и конструкции. Типовая схема открыта [для пополнения и модификации - А.Б.], так что вмешивайтесь и учитесь большему в направлениях материализованных представлений, объектно-реляционных таблиц и секционирования. Работа, которую вы исполняете или захотите получить, может существенно зависеть от объема ваших знаний об особенностях Oracle

Ссылки по теме


 Распечатать »
 Правила публикации »
  Написать редактору 
 Рекомендовать » Дата публикации: 31.07.2008 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
Oracle Database Personal Edition Named User Plus Software Update License & Support
Oracle Database Standard Edition 2 Processor License
Oracle Database Standard Edition 2 Named User Plus License
Oracle Database Personal Edition Named User Plus License
Quest Software. Toad for DBA Suite for Oracle
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Программирование на Microsoft Access
CASE-технологии
СУБД Oracle "с нуля"
Вопросы и ответы по MS SQL Server
Один день системного администратора
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100