Реферат сравнение субд oracle и Microsoft sql server

Вид материалаРеферат

Содержание


Сравнение платформ
Аппаратные требования
32 MB RAM (минимум для Desktop Engine),64 MB RAM (минимум для всех других редакций),128 MB RAM или больше рекомендуется
RAM: 128 MB (256 MB рекомендуется)Virtual Memory: начальный размер 200 MB, максимальный размер 400 MB
140 MB на системном диске
Размер Swap
Программные требования
Операционная система
Developer Edition
Windows 2000 Server
Windows XP Professional
Версия операционной системы
Phco_24148, phkl_24268, phkl_24729
Инструменты и утилиты
Производительность(TPC тесты)
TPC тесты
Oracle8i и Oracle9i
Разработка приложений
Безопасность данных
Microsoft SQL Server 2000
...
Полное содержание
Подобный материал:

УДМУРТСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

КАФЕДРА ВЫСШЕЙ МАТЕМАТИКИ


РЕФЕРАТ

Сравнение СУБД Oracle и

Microsoft SQL Server


Выполнила: Студентка гр. 38-41

Макарцева М.Б.

Проверил: Вотинцев А.А.


ИЖЕВСК 2004

Содержание:
  1. Введение;……………………………………………………………..3
  2. Сравнение платформ; ……………………………………………….3
  3. Аппаратные требования; ……………………………………………4
  4. Программные требования; ………………………………………….5
  5. Настольные и однопользовательские версии; …………………….7
  6. Инструменты и утилиты; ……………………………………………8
  7. Производительность(TPC тесты); …………………………………..8
  8. Особенности; …………………………………………………………9
  9. T-SQL и PL/SQL; ……………………………………………………12
  10. Заключение; …………………………………………………………14
  11. Литература; ………………………………………………………….15



  1. Введение;

Не секрет, что Oracle и Microsoft SQL Server, разработанные лидерами мирового рынка программного обеспечения, сегодня являются одними из наиболее широко используемых СУБД. Поэтому каждый пользователь, нуждающийся в СУБД, делает свой выбор, как правило, в пользу одного из них. Этот выбор довольно сложен, он должен основываться на знаниях особенностей этих продуктов, а также, на конкретных потребностях пользователя.

Немного истории развития производителей СУБД поможет сделать выбор.

Корпорация Oracle была основана в 1977 году (в то время она носила название Software Development Laboratories, а в 1978 году она была переименована в Relational Software, Inc.(с 1983 г. - Oracle Corporation)) как компания, специализирующаяся на создании реляционных СУБД, первая версия продукта Oracle - V2 выпущена в 1979г. Нынче Oracle поставляет на мировой рынок огромное количество продуктов. До 1988 г. занимала лидирующие позиции. На сегодняшний день это вторая по величине доходов компания, специализирующаяся на производстве программного обеспечения.

Корпорация Microsoft также была основана в середине 70-х годов(1975г.). Ее история хорошо известна, впрочем, как и тот факт, что до 1987 года эта компания не имела никакого отношения к производству серверных СУБД. В 1988 г. совместно с Ashton-Tate выпустили первую версию реляционной СУБД для локальных вычислительных сетей - Ashton-Tate/Microsoft SQL Server. Сейчас SQL Server - один из сотен продуктов, производимых Microsoft.

Соперничество этих корпораций позволило развивать быстрыми темпами эту область программного обеспечения, в результате чего выиграл пользователь.

Аспекты, рассмотренные далее, помогут сделать осознанный выбор.


  1. Сравнение платформ;

Одним из главных событий, определивших дальнейшую судьбу Microsoft SQL Server, стало решение Microsoft сосредоточить усилия исключительно на поддержке только платформы Windows NT. В результате его принятия популярность SQL Server определяется в первую очередь популярностью платформы, которую он поддерживает, в данный момент - Windows 2000 и ее будущих потомков. Эта СУБД настолько связана с операционной системой, что ее надежность, масштабируемость и производительность определяются надежностью, масштабируемостью и производительностью самой платформы, и положение SQL Server на рынке будет зависеть от выпуска новых версий Windows.

Подход Oracle к поддержке различных операционных систем радикально отличается от подхода Microsoft - СУБД этой фирмы существуют для огромного количества платформ. Хотя поддержка большого количества платформ (а не нескольких наиболее прибыльных, как это характерно для других производителей СУБД) требует немалых вложений, переход к широкому применению Java, который сейчас происходит в Oracle, позволяет существенно сократить затраты на разработку и поддержку продуктов.

Таким образом,

Microsoft – Windows-платформы;

Oracle - все известные платформы, включая Windows-платформы, AIX-системы, Compaq Tru64 UNIX, HP 9000 Series HP-UX, Linux Intel, Sun Solaris и т.д.


  1. Аппаратные требования;

Чтобы установить SQL Server 2000, Вы должны иметь Intel или совместимую платформу и следующее оборудование:

Оборудование

Требования

Процессор

Pentium 166 MHz

Память

32 MB RAM (минимум для Desktop Engine),
64 MB RAM (минимум для всех других редакций),
128 MB RAM или больше рекомендуется


Дисковое пространство

270 MB (полная установка),
250 MB (типичная),
95 MB (минимальная),
Desktop Engine: 44 MB
Analysis Services: 50 MB минимум и 130 MB типичная
English Query: 80 MB


Oracle 9i поддерживается на Intel или совместимых платформах, AIX-системах, Compaq Tru64 UNIX, HP 9000 Series HP-UX, Linux Intel, Sun Solaris и т.д.

Для установки Oracle 9i на Intel или совместимую платформу, Вы должны иметь следующее оборудование:

Оборудование

Требования

Процессор

Pentium 166 MHz или выше

Память

RAM: 128 MB (256 MB рекомендуется)
Virtual Memory: начальный размер 200 MB, максимальный размер 400 MB


Дисковое пространство

140 MB на системном диске
плюс 4.5 GB для Oracle Home Drive (FAT)
или 2.8 GB для Oracle Home Drive (NTFS)


Для установки Oracle 9i на UNIX системы, такие как AIX-системы, Compaq Tru64 UNIX, HP 9000 Series HP-UX, Linux Intel и Sun Solaris, Вы должны иметь следующее оборудование:

Оборудование

Требования

Процессор

Минимум 512 MB RAM

Размер Swap

Минимум 2 x RAM или 400 MB, смотря что больше

Дисковое пространство

4.5 GB



  1. Программные требования;

SQL Server 2000 поставляется в шести редакциях: Enterprise, Standard, Personal, Developer, Desktop Engine и SQL Server CE (версия для Windows CE) и требует следующие программы:

Операционная система

Enterprise Edition

Standard Edition

Personal Edition

Developer Edition

Desktop Engine

SQL Server CE

Windows CE

Нет

Нет

Нет

Нет

Нет

Да

Windows 9x

Нет

Нет

Да

Нет

Да

Нет

Windows NT 4.0 Workstation с Service Pack 5

Нет

Нет

Да

Да

Да

Нет

Windows NT 4.0 Server с Service Pack 5

Да

Да

Да

Да

Да

Нет

Windows NT 4.0 Server Enterprise Edition с Service Pack 5

Да

Да

Да

Да

Да

Нет

Windows 2000 Professional

Нет

Нет

Да

Да

Да

Нет

Windows 2000 Server

Да

Да

Да

Да

Да

Нет

Windows 2000 Advanced Server

Да

Да

Да

Да

Да

Нет

Windows 2000 DataCenter

Да

Да

Да

Да

Да

Нет

Windows XP Professional

Нет

Нет

Да

Да

Да

Нет

Oracle 9i Database поставляется в трех редакциях: Enterprise, Standard и Personal и требует следующие программы:

Платформа

Версия операционной системы

Исправления

Windows

Windows NT 4.0

Service Pack 5

Windows

Windows 2000

Service Pack 1

Windows

Windows XP

Не нужны

AIX

AIX 4.3.3

Maintenance Level 09 иIY24568,
IY25282, IY27614, IY30151


AIX

AIX 5.1

AIX 5L release 5.1 ML01+ (IY22854),
IY26778, IY28766, IY28949, IY29965, IY30150


Compaq Tru64 UNIX

Tru64 5.1

5.1 patchkit 4

Compaq Tru64 UNIX

Tru64 5.1A

5.1A patchkit 1

HP-UX

HP-UX version 11.0 (64-bit)

Sept. 2001 Quality Pack, PHCO_23792,
PHCO_24148, PHKL_24268, PHKL_24729,
PHKL_ 25475, PHKL_25525, PHNE_24715,
PHSS_23670, PHSS_24301, PHSS_24303,
PHSS_24627, PHSS_22868


Linux

SuSE Linux Enterprise Server 7
(or SLES-7) с ядром 2.4.7,
и glibc 2.2.2


Не нужны

Sun Solaris

Solaris 32-Bit 2.6 (5.6), 7 (5.7)
или 8 (5.8)


Не нужны

Sun Solaris

Solaris 64-Bit 8 (5.8)

Update 5



  1. Настольные и однопользовательские версии;

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

И Oracle, и Microsoft многое делают для поддержки настольных версий своих СУБД или применения их в указанном режиме. SQL Server можно применять на любых Intel-совместимых компьютерах под управлением Windows 9x, Windows NT, Windows 2000, но SQL Server более не поддерживает компьютеры на базе процессора Alpha. Имеется также версия SQL Server 2000 для Windows CE, предназначенная для применения в мобильных устройствах.

Microsoft Data Engine (MSDE) - это продукт фирмы Microsoft, специально предназначенный для настольных приложений. Эта СУБД по существу представляет собой ограниченный вариант SQL Server, который можно применять в Windows 9x, NT, Windows 2000 и администрировать с помощью Microsoft Access. Подобно Access на рынке MSDE позиционируется как однопользовательская СУБД. Отметим также, что Microsoft встроила в этот продукт специальные средства, снижающие его производительность при попытке одновременной работы с ним более пяти пользователей.

Среди продуктов Oracle также имеются две СУБД, позиционируемые в качестве настольных. Продукт Personal Oracle, известный уже много лет, представляет собой однопользовательскую, но полнофункциональную версию Oracle, требующую некоторых навыков администрирования при ее применении. Вторая настольная СУБД этой компании, Oracle Lite, может применяться в качестве однопользовательской СУБД на обычных рабочих станциях, но в действительности она предназначена для применения в мобильных устройствах. В отличие от других СУБД этот продукт поддерживает только язык Java, но не поддерживает PL/SQL (язык, на котором создается серверный код в других СУБД Oracle).


  1. Инструменты и утилиты;

Одним из преимуществ SQL Server является простота его применения, в частности администрирования. SQL Server Enterprise Manager, входящий в состав всех редакций Microsoft SQL Server (за исключением MSDE), представляет собой полнофункциональное и достаточно простое средство для администрирования этой СУБД. Oracle Enterprise Manager во многих отношениях превосходит SQL Server Enterprise Manager по своим возможностям, однако процесс его установки довольно сложен, к тому же, что более существенно, он входит в состав далеко не всех редакций СУБД Oracle, а некоторые его компоненты можно приобрести только как отдельные продукты. Эта ситуация несколько улучшилась с появлением одной из последних версий Oracle Enterprise Manager - DBA Studio для Oracle8i Release 2 (для версий 8.1.6 и 8.1.7).

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


  1. Производительность(TPC тесты);

Очень сложно сравнивать производительность SQL Server 2000 и Oracle 9i Database. Производительность конкретных баз данных зависит больше от квалификации разработчиков и администратора баз данных, чем от поставщика СУБД. Вы можете использовать любую из этих РСУБД для построения стабильных и эффективных систем. Можно определить типичные транзакции, такие как используемые в системах управления запасами, системах бронирования на авиалиниях и банковских системах. После определения этих типичных транзакций, можно запустить их под разными системами управления базами данных, работающих на различном оборудовании и программных платформах.

TPC тесты


Transaction Processing Performance Council - независимая организация, точно определяющая типичные транзакции и некоторые общие правила, которым эти транзакции должны удовлетворять.

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

TPC создает спецификации на многие тесты. Есть TPC-C, TPC-H, TPC-R, TPC-W и некоторые старые тесты, такие как TPC-A, TPC-B и TPC-D. Наиболее популярный тест - TPC-C (OLTP тест).

SQL Server сейчас является рекордсменом по производительности, однако и Oracle стабильно входит в пятерку лидеров.

Примечание. Из-за того, что в действительности большинство организаций не используют очень большие базы данных, тот факт что SQL Server 2000 выигрывает TPC-C тесты на самом деле не имеет значения для большей части компаний. Отметим, однако, что подобного рода тесты не могут дать однозначного ответа на вопрос, какая из СУБД будет производительнее при решении конкретной задачи: в одних случаях производительность СУБД Oracle превосходит производительность SQL Server, а в других наоборот. Реально проверить это можно только с помощью тестирования, основанного на запросах, типичных именно для конкретной задачи.


  1. Особенности;

Кратко рассмотрим особенности последних версий обеих СУБД, как появившиеся недавно, так и унаследованные от прежних версий. В связи с этим следует отметить, что лидерство того или иного продукта, если смотреть на это с точки зрения поддержки тех или иных технологий либо других технологических особенностей, во многом определяется тем, продукт какой фирмы был выпущен последним. Поэтому говорить о стабильном лидерстве в этой области довольно сложно. Рассмотрим некоторые особенности и достижения в последних версиях этих СУБД.

Oracle8i и Oracle9i

  • Поддержка Internet


Для поддержки Internet в Oracle8i существенно расширено применение языка Java. В частности, в состав серверной части этой СУБД входит виртуальная Java-машина, в дополнение к имевшимся ранее средствам выполнения кода на языках SQL и PL/SQL.

Создан Oracle Portal - инструмент для создания корпоративных решений и интеграции корпоративных приложений на базе Web-технологий.

Созданы средства поддержки мультимедиа-контента в базе данных Oracle - Oracle8i interMedia, которые можно с успехом применять как в обычных приложениях, так и в Internet-приложениях.

В Oracle8i впервые появилась Internet File System (iFS) - Java-приложение, выполняющееся внутри виртуальной Java-машины Oracle8i и позволяющее пользователям обращаться с базой данных как с сетевым диском. Вследствие этого в Oracle8i можно теперь хранить данные практически любых типов.

В Oracle8i Release 2 (8.1.6) появилась поддержка XML как средства интеграции данных и реализации транзакций в приложениях business-to-business (B2B).

В Oracle9i присутствуют средства интеграции SQL, XML и Java, а также средства интеграции приложений Oracle9i Dynamic Services, представляющие собой инструменты и утилиты для создания сервисов на базе уже существующих приложений.
  • Администрирование


Oracle Enterprise Manager в последних версиях Oracle8i содержит разделяемый депозитарий, который позволяет координировать доступ пользователей к данным, хранящимся в различных серверах Oracle, с помощью Oracle Management Server - компонента среднего звена, предназначенного для централизации управления доступом клиентов к серверам.

Oracle 8i поддерживает индексы, основанные на функциях и выражениях. Кроме того, в этой СУБД можно строить индексы в порядке не возрастания, а убывания, и, что более существенно, для создания индексов в этой версии Oracle не требуется полная блокировка таблицы.

Oracle8i позволяет модифицировать план выполнения SQL-запроса и сохранить его в базе данных, что во многих случаях оказывается весьма полезным.

В Oracle8i появилась возможность создавать табличные пространства, управляемые локально, а также создавать переносимые табличные пространства, что позволяет переносить данные с одного сервера на другой без применения экспорта и импорта данных.

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

В Oracle9i много сделано для упрощения администрирования. Новый продукт содержит средства автоматизации конфигурирования серверов, утилиты для управления ресурсами используемых компьютеров, а также мониторинга загрузки и производительности.
  • Разработка приложений

Последние версии Oracle содержат объектные расширения (в частности, объектно-ориентированные типы данных и соответствующие расширения SQL), причем эти расширения входят в состав продукта.

В Oracle8i и Oracle9i входят средства интеграции со средствами разработки Microsoft, включая Visual Studio Application Wizard, поддержку COM/DCOM и MTS/COM+, а также OLEDB-провайдер для доступа к данным этой СУБД.
  • Безопасность данных

В Oracle8i впервые была применена концепция Virtual Private Database для упрощения управления доступом: теперь средства защиты данных встроены в саму базу данных, а не в приложения.

В средства Oracle Advanced Security (известные ранее как Advanced Networking Option) добавлены поддержка протоколов Secure Socket Layer (SSL) и Remote Authentication Dial-In User Service (RADIUS). Это сделано с целью поддержки безопасности транзакций, проводимых через Internet.
  • Прочее


Последние версии Oracle поддерживают управление базами данных большого объема. Для этой цели в сервере имеется поддержка так называемых материализованных представлений (materialized views).

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

Для обеспечения надежности и доступности в последних версиях Oracle имеются средства восстановления после сбоев (а в версии Oracle9i - также и после сбоев, вызванных ошибками персонала или пользователей).

В состав Oracle9i войдет OLAP-сервер, ранее поставлявшийся как отдельный продукт.

Microsoft SQL Server 2000


Версия Microsoft SQL Server 2000 построена на основе ядра Microsoft SQL Server 7.0. Ее отличительными особенностями являются повышенная масштабируемость, производительность и интеграция с Internet
  • Сервер баз данных

SQL Server 2000 позволяет использовать на одном компьютере несколько одновременно работающих серверов. Помимо этого можно использовать несколько SQL Server 2000 и один SQL Server 7.0.

В версии SQL Server 2000 появилась поддержка пользовательских функций, которые можно создавать средствами языка Transact SQL. Помимо скалярных значений такие функции могут возвращать и таблицы.

В рамках поддержки ссылочной целостности, в SQL Server 2000 реализованы каскадные удаления и обновления (CASCADE DELETE, CASCADE UPDATE).

Добавлена поддержка языка XML, включая ключевое слово FOR XML для извлечения данных в виде XML-потоков.

Для повышения производительности теперь можно создавать индексы для представлений (Indexed Views). В этой версии SQL Server поддерживается создание индексов в убывающем порядке.

Улучшенная поддержка распределенных запросов через интерфейс OLE DB позволяет использовать статистику с удаленного сервера для построения более эффективных планов выполнения (execution plans).
  • Утилиты

Появилась возможность присоединять и отсоединять базы данных прямо из Enterprise Manager. Стало возможным перемещение протоколов транзакций с одного сервера на другой в целях полной поддержки отсоединенных баз данных (standby databases).

Интерфейсные улучшения в Query Analyzer включают Object Browser - средство для поиска объектов баз данных и шаблоны для построения запросов.

Добавлено множество опций для автоматического запуска и остановки трассировки, включая опцию для задания максимального размера файла трассировки.
  • Репликация


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

Расширены возможности фильтрации публикуемых данных, появилась возможность трансформации публикуемых данных с применением сервисов трансформации данных (Data Transformation Services).

В SQL Server 2000 поддерживается возможность задания альтернативных публикаторов информации, что позволяет синхронизировать данные даже в тех случаях, когда первичный публикатор недоступен.
  • Службы трансформации данных (DTS)

В программной модели DTS реализованы новые функции и объекты.

Информация вроде идентификатора пользователя, пароля и даже источника данных может быть определена в процессе выполнения - это возможно благодаря использованию файлов связи данных (data link files).

SQL Server 2000 позволяет создавать и распространять DTS-шаблоны, на основе которых можно создавать различные DTS-задачи.
  • Средства анализа данных


Как мы уже отмечали, в Microsoft SQL Server 7 были впервые включены средства анализа данных (OLAP) в качестве компонента сервера. В SQL Server 2000 эти средства получили дальнейшее развитие: компонент Analysis Services включает как средства анализа данных, так и средства поиска закономерностей (Data Mining).

Среди основных новшеств в средствах анализа данных можно отметить следующие:
  • новые типы кубов и расширения функциональности кубов;
  • новые типы измерений и типов иерархий;
  • средства Data Mining интегрированы непосредственно в аналитические средства и могут использоваться как для поиска информации в OLAP-кубах, так и в реляционных базах данных;
  • возможность построения MDX-запросов с помощью MDX Builder, расширенные MDX-функции, редактор виртуальных кубов, поддержка Active Directory и т.д.



  1. T-SQL и PL/SQL;

SQL Server 2000 и Oracle 9i Database поддерживают ANSI SQL-92 начального уровня и не поддерживают ANSI SQL-92 среднего уровня. Здесь мы проведем сравнение Transact- SQL с PL/ SQL и покажем некоторые лимиты SQL Server 2000 и Oracle 9i.

T-SQL и PL/SQL


Расширение языка SQL, поддерживаемое Microsoft SQL Server 2000 называется Transact-SQL (T-SQL). Расширение, поддерживаемое Oracle 9i Database называется PL/SQL. PL/SQL намного более мощный язык чем T-SQL. Здесь краткое сравнение PL/SQL и T-SQL:

Признак

PL/SQL

T-SQL

Индексы

B-Tree индексы,
Bitmap индексы,
Partitioned индексы,
Function-based индексы,
Domain индексы


B-Tree индексы

Таблицы

Реляционные таблицы,
Объектные таблицы,
Временные таблицы


Реляционные таблицы,
Временные таблицы


Триггеры

BEFORE триггеры,
AFTER триггеры,
INSTEAD OF триггеры


AFTER триггеры,
INSTEAD OF триггеры


Процедуры

PL/SQL операторы,
Java методы,
процедуры языка третьего поколения (3GL)


T-SQL операторы

Массивы

Поддерживаются

Не поддерживаются

Ограничения SQL Server 2000 и Oracle 9i

Признак

SQL Server 2000

Oracle9i Database

длина имени базы данных

128

8

длина имени столбца

128

30

длина имени индекса

128

30

длина имени таблицы

128

30

длина имени представления

128

30

длина имени хранимой процедуры

128

30

длина индекса

900

749

максимум колонок в индексе

16

32

максимальная длина поля char()

8000

2000

максимальная длина поля varchar()  

8000

4000

максимум колонок в таблице

1024

1000

максимальная длина записи в таблице

8036

255000

максимальный размер запроса

16777216

16777216

вложенные подзапросы

40

64

размер строковой константы в SELECT

16777207

4000

размер строковой константы в WHERE

8000

4000

Рассмотрим конкретные отличия этих СУБД на примере создания триггеров (создание таблиц делается аналогично). Будем рассматривать учебную базу данных.

Пример триггеров: Пусть нам необходимо при изменении ИД в таблице ПРОДАВЦЫ изменять соответствующую информацию в таблице ЗАКАЗЫ

T-SQL

CREATE TRIGGER ИЗМ_ИД ON ПРОДАВЦЫ

FOR UPDATE

AS

Declare @NumRow int

Set @NumRow=@@rowcount

If Update(ИД) and @NumRow=1

Update ЗАКАЗЫ

Set ЗАКАЗЫ.ИД=inserted.ИД

From ЗАКАЗЫ, inserted, deleted

Where ЗАКАЗЫ.ПРОД_ИД=deleted.ИД

Else

rollback

PL/SQL

CREATE TRIGGER ИЗМ_ИД after UPDATE

on ПРОДАВЦЫ for each row

begin

IF (:new.ИД<>:old.ИД) THEN

update ЗАКАЗЫ З set З.ПРОД_ИД = :new.ИД

END IF;

end;

Примеры процедур: создадим процедуру, возвращающую информацию о заказах на сумму >X (X передаем в процедуру)

T-SQL

CREATE PROCEDURE ЗАКАЗЫ_X

@MinSum decimal

AS

Select *

From ЗАКАЗЫ

Where Сумма> @MinSum

PL/SQL

CREATE OR REPLACE PROCEDURE ЗАКАЗЫ_X(МинСум IN NUMBER)

IS

BEGIN

Select *

From ЗАКАЗЫ

Where Сумма> МинСум

END;

Примеры функций: Создадим функцию которая возвращает ИД того продавца из двух указанных, у которого результат больше.

T-SQL

CREATE FUNCTION MyFunc (@Param1 int, @Param2 int)

RETURNS int

AS

BEGIN

Declare @Res1

Set @Res1=select РЕЗУЛЬТАТ

from ПРОДАВЦЫ

where ИД=@Param1;

Declare @Res2

Set @Res2=select РЕЗУЛЬТАТ

from ПРОДАВЦЫ

where ИД=@Param2;

IF (@Res1>@Res2 )

RETURN @Param1

ELSE

RETURN @Param2

END

PL/SQL

CREATE OR REPLACE FUNCTION МАКС_РЕЗ (ПРОД_ИД1 IN NUMBER, ПРОД_ИД1 IN NUMBER)

RETURN NUMBER

IS

BEGIN

Declare @Res1

Set @Res1=select РЕЗУЛЬТАТ

from ПРОДАВЦЫ

where ИД=@Param1;

Declare @Res2

Set @Res2=select РЕЗУЛЬТАТ

from ПРОДАВЦЫ

where ИД=@Param2;

IF (@Res1>@Res2 )

RETURN @Param1

ELSE

RETURN @Param2

END;



  1. Заключение;

Неверно считать, что SQL Server 2000 лучше чем Oracle 9i или наоборот. Оба продукта могут быть использованы для построения стабильных и эффективных систем и стабильность и эффективность приложений и баз данных зависит больше от квалификации разработчиков и администратора баз данных чем от поставщика СУБД. Но SQL Server 2000 имеет некоторые преимущества в сравнении с Oracle 9i и наоборот.

Преимущества SQL Server 2000:

  • SQL Server 2000 дешевле Oracle 9i Database.
  • SQL Server 2000 удерживает высшие результаты TPC-C по производительности и соотношению цена/производительность.
  • SQL Server 2000, в общем, считается более легким для установки, использования и поддержки.

Преимущества Oracle 9i Database:

  • Oracle 9i Database поддерживается на всех известных платформах, а не только на Windows-платформах.
  • PL/SQL более мощный язык чем T-SQL.
  • Большее количество тонких настроек конфигурации может быть сделано через параметры запуска.



  1. Литература
  1. SQL Server 2000 Books Online
  2. Oracle documentation
  3. Why is SQL Server better/worse than Oracle?
  4. Top Ten TPC-C by Performance Version 5 Results
  5. “Microsoft SQL Server 2000. Краткий обзор новинок” и “Microsoft SQL Server 2000 Analysis Services”, КомпьютерПресс № 9’2000
  6. “Microsoft SQL Server 2000: поддержка XML”, КомпьютерПресс № 6’2001



Редакции Microsoft SQL Server 7.0


Microsoft SQL Server 7.0 распространяется в трех основных редакциях: Standard, Enterprise и для Small Business Server.

Стандартная редакция работает на платформах Microsoft Windows Small Business Server и Microsoft Windows NT Server стандартной и корпоративной редакции. Количество поддерживаемых процессоров ограничено 4.

Корпоративная (Enterprise) редакция устанавливается только на Windows NT Enterprise Edition и включает такие дополнительные особенности, как поддержка до 32 процессоров, возможность установки на кластер MSCS и адресация расширенной памяти.

Редакция для Small Business Server имеет ограниченный размер базы данных (10 Гбайт) и не включает OLAP Services. Количество одновременных пользователей в ней ограничено 50.

Пользователи, обладающие лицензией на любую из вышеперечисленных редакций, могут установить настольную редакцию Microsoft SQL Server 7.0. Настольная редакция (Desktop Edition) предназначена для работы на Windows 95/98, Windows NT Workstation, Windows NT Server и Windows NT Enterprise. Несмотря на отсутствие ряда возможностей (например, опережающего чтения (read ahead), полнотекстового поиска и др.), настольная редакция основана на том же 32-разрядном коде, что и остальные версии SQL Server 7.0, и полностью совместима с любыми приложениями для SQL Server 7.0.

Microsoft SQL Server содержит множество утилит, инструментов, программ-мастеров (wizards), всплывающих подсказок и других возможностей, которые позволяют значительно упростить весь цикл работы с сервером, включая его установку, внедрение, управление и использование. SQL Server обеспечивает администраторов полным набором средств для тонкой самонастройки Он также способен эффективно работать на автономных однопользовательских настольных системах, требуя минимума административного вмешательства.