Главная » Просмотр файлов » alan_beaulieu-learning_sql-ru

alan_beaulieu-learning_sql-ru (865932), страница 51

Файл №865932 alan_beaulieu-learning_sql-ru (Учебник по SQL) 51 страницаalan_beaulieu-learning_sql-ru (865932) страница 512022-01-31СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 51)

D.1 языки программирования являются языками общего назначения. И всем им для доступа к БД нужен дополнительный драйвер или набор библиотек. Однако есть другие языки, разработанные специально для работы с БД и включающие определенныекоманды SQL (как минимум select, update, insert, delete, start transaction, commit и rollback).

В табл. D.2 приведены некоторые из этих языков и описаны среды, в которых они работают.293Дополнительные источникиТаблица D.2. Специализированные языки программирования баз данныхЯзык программирования РазработчикСреда выполненияPL/SQLOracleOracle DatabaseOracle Application ServerTransactSQLMicrosoftSQL ServerSQL2003 Stored Procedure MySQLLanguageMySQL Server (версии 5.0 и выше)PowerBuilderSybaseSybase EAServerКлиенты для Windows и UNIXPowerHouse 4GLCognosPowerHouse Application ServerProgress 4GLProgress Software OpenEdge DatabaseOpenEdge Application ServerПоследние три языка в табл. D.2 – это языки общего назначения, предназначенные для создания бизнесприложений, а первые три, предоставляемые тремя серверами БД, рассматриваемыми в данной книге,позволяют формировать модули следующих типов:Хранимые процедурыИменованные подпрограммы, принимающие параметры.Хранимые функцииИменованные функции, принимающие параметры и возвращающие значение.ТриггерыМодули, автоматически запускаемые сервером БД при определенном событии, например удалении данных из той или иной таблицы.Триггеры выполняются только сервером БД, а хранимые процедурыи функции выполняются в рамках сеанса БД точно так же, как команды SQL.

Поскольку хранимые функции возвращают значение, они могут вызываться из SQLвыражений во всех случаях, где может использоваться скалярный подзапрос. Для работы с Oracle Database, SQLServer или MySQL необходимо обязательно ознакомиться с одной изследующих книг:Мэйдин Фишер (Maydene Fisher) и др. «JDBC API Tutorial and Reference», Third Edition (Учебное пособие и справочник по JDBC API,3е издание), AddisonWesley, 2003.Билл Гамильтон (Bill Hamilton) «ADO.NET Cookbook» O’Reilly,2003.11Билл Гамильтон «ADO.NET. Сборник рецептов для профессионалов», СПб:Питер, 2004.294Приложение DАллигатор Декарт (Alligator Descartes), Тим Банс (Tim Bunce) «Programming the Perl DBI», O’Reilly, 2000.1Стивен Фейерштейн (Steven Feuerstein) и Билл Прибыл (Bill Pribyl)«Oracle PL/SQL Programming», Third Edition, O’Reilly, 2002.2Кен Хендерсон (Ken Henderson) «The Guru’s Guide to TransactSQL», AddisonWesley, 2000.3Также есть множество учебных курсов по программированию БД.

Ихможно найти в одном из следующих учебных центров:• Oracle University (http://education.oracle.com)• Learning Tree International (http://www.learningtree.com)• Microsoft Learning (learning)• MySQL Training (training)Проектирование БДЕсли вы новичок в SQL (а я предполагаю, что это так), то скорее всегобудете работать с имеющимися БД, по крайней мере, поначалу. Однако если вы также отвечаете за разработку БД для своего проекта, рекомендую не просто ознакомиться с кратким обзором проектированияи нормализации БД, приведенным в главе 2, а рассмотреть этот вопросболее внимательно.

На самом деле есть несколько разновидностей моделей БД, каждая из которых имеет специальное назначение:Логические моделиОбычно это представление высокого уровня детализации организации и среды, в которой осуществляется деятельность.Функциональные моделиОбычно это представление среднего уровня детализации отдельногосегмента деятельности организации; как правило, используется в дополнение к спецификации проекта.Физические моделиОбычно используются для формирования БД.Администратора БД, возможно, интересуют только физические модели, тогда как логические модели часто являются сферой интересов корпоративных архитекторов (если организации посчастливилось иметькоманду разработки корпоративной архитекторы).123Аллигатор Декарт и Тим Банс «Программирование на Perl DBI», СимволПлюс, 2000.С. Фейерштейн, Б.

Прибыл «Oracle PL/SQL для профессионалов», Питер,2003.Кен Хендерсон «Профессиональное руководство по TransactSQL», Питер,2005.Дополнительные источники295Как бы то ни было, прежде чем браться за выражения create table, необходимо серьезно подумать об использовании инструмента моделирования для построения визуальных моделей. При создании моделей БДобычно используется одна из двух методик:Моделирование сущностей и связей (Entityrelationship, ER)Используется практически исключительно для моделирования БД.Моделирование с использованием Унифицированного языка моделирования (Unified Modeling Language, UML)Универсальный инструмент моделирования для разработки объектноориентированного программного обеспечения.Если БД проектируется как часть проекта по разработке объектноориентированного программного обеспечения, команда разработки можетприобрести инструмент моделирования UML для объектного моделирования, чтобы использовать его и для проектирования БД.

Если вывольны в выборе инструментария, более полезным может оказатьсяодин из следующих ERинструментов, способных формировать полнофункциональные схемы БД (включая таблицы, ограничения, индексы, представления и т. д.) по одному нажатию клавиши:•ERwin Data Modeler (ERмоделирование)•Computer Associates (http://www.ca.com)•ER/Studio (ERмоделирование)•Embarcadero Technologies (http://www.embarcadero.com)•Rational Rose (UMLмоделирование)•IBM (http://www.ibm.com)•Visio (и ER моделирование, и UMLмоделирование)•Microsoft (http://www.microsoft.com)Ниже приведены две хорошие книги по проектированию БД:Майкл Дж.

Хернандес (Michael J. Hernandez) «Database Design forMere Mortals: A Handson Guide to Relational Database Design», Second Edition (Проектирование баз данных для простых смертных.Практическое руководство по проектированию реляционных базданных), AddisonWesley, 2003.Эрик Дж. Нейбург (Eric J. Naiburg) и Роберт А. Максимчук (RobertA. Maksimchuk) «UML for Database Design», AddisonWesley, 2001.11Эрик Дж. Нейбург и Роберт А.

Максимчук «Проектирование баз данныхс помощью UML», Вильямс, 2002.296Приложение DНастройка баз данныхНастройка БД – это, по сути, искусство и наука выявления и устранения узких мест производительности в:• Приложениях, организующих доступ к БД (SQL, блокировки, транзакции)• Схемах БД (проектирование, индексация, сегментирование таблиц)• Серверах БД (конфигурация серверов, журналирование, управление соединением)• Дисковых массивах, на которых хранятся файлы БД (конфигурации RAID, определение «горячих» точек)• Компьютерах, на которых располагаются серверы БД (конфигурация операционной системы, файловые системы)• Сетях, распространяющих данные на/с серверов БДВыявление и устранение узких мест в оборудовании и программномобеспечении такой широкой номенклатуры может показаться пугающесложной задачей, но большая часть работы обычно сосредоточена насхеме БД и языке SQL, который используется приложениями для доступа к БД.

Это никак не преуменьшает значимости конфигурированияоперационной системы, установки и конфигурирования сервера БД,а также компоновки ресурсов данных в дисковом массиве, но схемы БДи используемый для доступа к ним SQL – гораздо более динамичныекомпоненты системы, т. е. чреваты большим количеством проблем.Будь вы штатный специалист по вопросам производительности, программист БД или администратор БД, в круг вашей основной деятельности по настройке войдут:• Просмотр плана выполнения SQLвыражений для поиска неэффективных моментов• Разработка стратегий индексации для обеспечения эффективногодоступа• Доработка или переписывание SQLвыражений с целью повлиятьна выбор плана выполненияКак упоминалось в главе 3, каждая БД включает компонент под названием оптимизатор запросов, задачей которого является вычисление SQLвыражений и выбор эффективного пути доступа к информационным ресурсам для достижения желаемых результатов.

Результатработы оптимизатора – план выполнения, показывающий, какие ресурсы в каком порядке используются. Каждая из трех БД, обсуждаемых в книге, включает инструменты получения и просмотра планавыполнения SQLвыражения. Вам понадобится научиться генерировать и расшифровывать планы выполнения для своей БД.Просто чтобы дать вам понять, о чем идет речь, привожу созданныйMySQL план выполнения для запроса, организующего доступ к двумтаблицам:Дополнительные источники297mysql> EXPLAIN SELECT c.fed_id, a.account_id, a.avail_balance> FROM account a INNER JOIN customer c> ON a.cust_id = c.cust_id> WHERE c.cust_type_cd = 'I' \G*************************** 1. row ***************************id: 1select_type: SIMPLEtable: ctype: ALLpossible_keys: PRIMARYkey: NULLkey_len: NULLref: NULLrows: 13Extra: Using where*************************** 2. row ***************************id: 1select_type: SIMPLEtable: atype: refpossible_keys: fk_a_cust_idkey: fk_a_cust_idkey_len: 4ref: bank.c.cust_idrows: 1Extra:2 rows in set (0.00 sec)Чтобы увидеть план выполнения этого запроса, я просто поставил перед выражением select ключевое слово explain (объяснить), т.

е. серверполучил команду показать план выполнения, а не результирующийнабор запроса. План включает два этапа. Первый показывает, как будет осуществляться доступ к таблице customer (выполняется доступ ковсем строкам, поскольку столбец cust_type_cd не имеет индекса). Второй показывает, как будет организован доступ к таблице account (посредством внешнего ключа fk_a_cust_id). Формирование и расшифровка планов выполнения не является предметом рассмотрения для вводной книги по SQL, поэтому в конце данного раздела приведены имеющиеся источники (книги и учебные курсы).

Характеристики

Тип файла
PDF-файл
Размер
1,22 Mb
Материал
Предмет
Высшее учебное заведение

Список файлов ответов (шпаргалок)

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6314
Авторов
на СтудИзбе
312
Средний доход
с одного платного файла
Обучение Подробнее