Введення в MS SQL Server та T-SQL. Порівняльні характеристики sql субд Субд ms sql server опис

Однією з найпоширеніших СУБД, які у великих організаціях, є Microsoft SQL server, СУБД від компанії Microsoft. Вона використовує реляційну модель даних. Microsoft SQL Server є клієнт-серверної СУБД, що робить її гарною для використання у великих організаціях, що мають потужний сервер. Платформа даних MS SQL Server 2005 включає такі інструменти для роботи з базою даних:

  • · Підтримка структурованих та неструктурованих (XML) даних.
  • · Replication Services: реплікація даних для розподілених та мобільних додатківобробки даних, висока доступність систем, масштабований паралелізм із вторинними сховищами даних для звітних рішень підприємства та інтеграція з різнорідними системами, включаючи існуючі бази даних Oracle.
  • · Notification Services: розвинені можливості повідомлень для розробки та впровадження масштабованих додатків, здатних доставляти персоналізовані, своєчасні оновленняінформації безлічі з'єднаних та мобільних пристроїв.
  • · Integration Services: можливості вилучення, перетворення та завантаження для сховищ даних та інтеграції даних у масштабі підприємства.
  • · Analysis Services: аналітична обробка в реальному часі (OLAP) для швидкого, складного аналізу великих та змішаних наборів даних, що використовує багатовимірне зберігання.
  • · Reporting Services: вичерпне рішення для створення, управління та доставки як традиційних паперових звітів, так і інтерактивних, що базуються на технології WWW звітів.
  • · Інструменти керування: SQL Server включає засоби управління для розвиненого керування та налаштування баз даних, як і тісну інтеграцію з такими інструментами, як Microsoft Operations Manager (MOM) і Microsoft Systems Management Server (SMS). Стандартні протоколи доступу до даних істотно зменшують час, необхідний інтеграції даних SQL Server з існуючими системами. На додаток, підтримка Web служб вбудована для забезпечення взаємодії з іншими програмами та платформами.
  • · Інструменти розробки: SQL Server пропонує інтегровані інструменти розробки для ядра бази даних, вилучення, трансформації та завантаження даних, вилучення інформації, OLAP та звітності, які тісно інтегровані з Microsoft Visual Studio® надає наскрізні можливості розробки додатків. Кожна головна підсистема SQL Server поставляється зі своєю власною об'єктною моделлю та набором API для розширення системи даних у будь-якому напрямку, що є унікальним для вашого бізнесу.

Особливістю даної СУБД є такі засоби:

SQL Server Management Studio. SQL Server спрощує управління шляхом надання єдиної інтегрованої консолі управління для моніторингу та управління реляційною базою даних SQL Server, Integration Services, Analysis Services, Reporting Services, Notification Services та SQL Mobile на великій кількості розподілених серверів та баз даних. Адміністратори баз даних можуть виконувати кілька завдань одночасно, включаючи такі: створення та виконання запиту, перегляд серверних об'єктів, управління об'єктом, відстеження активності системи та перегляд оперативної довідки. SQL Server Management Studio містить середовище розробки для створення, редагування та управління сценаріїв та збережених процедур, використовуючи Transact-SQL, багатовимірні вирази (MDX), XMLA та SQL Server Mobile Edition. Management Studio легко інтегрується із системою контролю версій. Management Studio також містить інструменти для планування задач Агента SQL Server та управління Планами Технічне обслуговуваннядля автоматизації щоденних завдань обслуговування. Об'єднання завдань управління та створення в одному інструменті у поєднанні зі здатністю керувати всіма типами серверів забезпечує покращену продуктивність для адміністраторів баз даних.

Запобіжний моніторинг та налаштування продуктивності SQL Server надає більше 70 нових заходів внутрішньої продуктивності бази даних та використання ресурсів від пам'яті, блокувань та планування до транзакцій та операцій мережного та дискового введення-виводу. Ці Динамічні Уявлення Управління (Dynamic Management Views - DMV) забезпечують більшу прозорість та видимість стану бази даних та потужну інфраструктуру для попереджуючого моніторингу життєздатності та продуктивності бази даних.

Об'єкти SQL (Object Management Management) Об'єкти SQL (SMO) є новим набором об'єктів для програмування, які надає повну функціональність для керування базою даних SQL Server. Фактично Management Studio побудована на Об'єктах Управління SQL. SMO реалізована у вигляді збирання Microsoft. NET Framework. SMO можна використовувати для автоматизації поширених завдань адміністрування SQL Server, таких як програмне отримання конфігураційних налаштувань, створення баз даних, виконання сценаріїв Transact-SQL, створення завдань Агента SQL Server та планування резервного копіювання. Об'єктна модель SMO є більш безпечною, надійною та масштабованою заміною Розподіленим Об'єктам Управління (DMO), що входять до складу попередніх версій SQL Server.

Виділене адміністративне з'єднання SQL Server привносить виділене адміністративне з'єднання для доступу до сервера, навіть якщо він не відповідає або недоступний з іншої причини. Це дозволяє виконувати діагностичні функції або оператори Transact-SQL для вирішення проблем на сервері. Адміністративне з'єднання активується членами фіксованої серверної ролі sysadmin і доступне лише через утиліту командного рядка SQLCMD або локально, або з віддаленої машини.

Підтримка Web служб У SQL Server можна розробляти Web служби XML у рівні бази даних, використовуючи SQL Server як слухач HTTP. Це дає новий спосібдоступу до даних програм, які зосереджені навколо Web служб. У SQL Server 2005 можна використовувати HTTP для прямого доступу до SQL Server без застосування слухача проміжного рівня, такого як Microsoft Internet Information Services (IIS). SQL Server надає інтерфейс Web служби для виконання SQL виразів та виклику функцій та процедур. Результати запитів повертаються у форматі XML і тут можна скористатися перевагами інфраструктури Web служб Visual Studio.

Важливо відзначити, що MS SQL Server розрахована на роботу саме на платформі Windows. Це обмежує її використання у різних сферах діяльності. Крім того, Microsoft орієнтується на зниження вартості СУБД, що призводить до зменшення ефективності засобів забезпечення надійності та безпеки. Це є важливим чинником під час виборів СУБД в організацію.

Система управління базами даних (СУБД)- це загальний набір різних програмних компонентів баз даних та власне баз даних, що містить такі складові:

    прикладні програми баз даних;

    клієнтські компоненти;

    сервери баз даних;

    власне бази даних.

Прикладна програма баз данихє програмним забезпеченням спеціального призначення, розроблене та реалізоване користувачами або сторонніми компаніями-розробниками ПЗ. В протилежність, клієнтські компоненти- це програмне забезпечення баз даних загального призначення, розроблене та реалізоване компанією-розробником бази даних. За допомогою клієнтських компонентів користувачі можуть отримати доступ до даних, що зберігаються на локальному або віддаленому комп'ютері.

Сервер баз данихвиконує завдання управління даними, що зберігаються у базі даних. Клієнти взаємодіють із сервером баз даних, надсилаючи йому запити. Сервер обробляє кожен отриманий запит та надсилає результати відповідному клієнту.

Можливості СУБД

Загалом, базу даних можна розглядати з двох точок зору - користувача та системи бази даних. Користувачі бачать базу даних як набір логічно пов'язаних даних, а системи баз даних це просто послідовність байтів, які зазвичай зберігаються на диску. Хоча це два абсолютно різні погляди, між ними є щось спільне: система баз даних повинна надавати не тільки інтерфейс, що дозволяє користувачам створювати бази даних і вилучати або модифікувати дані, але також системні компонентидля керування збереженими даними. Тому система баз даних має надавати такі можливості:

    різноманітні інтерфейси;

    фізичну незалежність даних;

    логічну незалежність даних;

    оптимізацію запитів;

    цілісність даних;

    керування паралелізмом;

    резервне копіювання та відновлення;

    безпеку бази даних.

Всі ці можливості коротко описуються в наступних розділах.

Різноманітні інтерфейси користувача

Більшість баз даних проектуються та реалізовуються для роботи з ними різних типівкористувачів, які мають різні рівні знань. З цієї причини система баз даних повинна надавати кілька окремих інтерфейсів користувача. Користувальницький інтерфейсможе бути графічним чи текстовим.

В графічні інтерфейсивведення здійснюється за допомогою клавіатури або миші, а виведення реалізується у графічному вигляді на монітор. Різновидом текстового інтерфейсу, що часто використовується в системах баз даних, є інтерфейс командного рядка, за допомогою якого користувач здійснює введення шляхом набору команд на клавіатурі, а система відображає виведення в текстовому форматі на моніторі.

Фізична незалежність даних

Фізична незалежність даних означає, що прикладні програми бази даних не залежать від фізичної структури даних, що зберігаються у базі даних. Ця важлива особливістьдозволяє змінювати збережені дані без необхідності вносити будь-які зміни до прикладних програм баз даних.

Наприклад, якщо дані спочатку були впорядковані за одним критерієм, а потім цей порядок був змінений за іншим критерієм, зміна фізичних даних не повинна впливати на існуючі програмибаз даних або його схему (опис бази даних, створене мовою визначення даних системи бази даних).

Логічна незалежність даних

При обробці файлів, використовуючи традиційні мови програмування, файли оголошуються прикладними програмами, тому будь-які зміни в структурі файлу зазвичай вимагають внесення відповідних змін до всіх програм, що його використовують.

Системи баз даних надають логічну незалежність файлів, тобто, інакше кажучи, логічну структуру бази даних можна змінювати без необхідності внесення будь-яких змін до прикладних програм бази даних. Наприклад, додавання атрибуту до структури об'єкта, що вже існує в системі баз даних, з ім'ям Person (наприклад, адреса) викликає необхідність модифікувати тільки логічну структуру бази даних, а не існуючі прикладні програми. (Однак програми вимагатимуть зміни для використання нового стовпця.)

Оптимізація запитів

Більшість систем баз даних містять підкомпонент, що називається оптимізатором, який розглядає кілька можливих стратегій виконання запиту даних і вибирає їх найбільш ефективну. Вибрана стратегія називається планом виконання запиту. Оптимізатор приймає рішення, зважаючи на такі фактори, як розмір таблиць, до яких направлений запит, існуючі індекси та логічні оператори (AND, OR або NOT), що використовуються в пропозиції WHERE.

Цілісність даних

Однією з завдань, що стоять перед системою баз даних є ідентифікувати логічно суперечливі дані і не допустити їх приміщення в базу даних. (Прикладом таких даних буде дата "30 лютого" або час "5:77:00".) Крім того, для більшості реальних завдань, що реалізуються за допомогою систем баз даних, існують обмеження для забезпечення цілісності (integrity constraints), які мають виконуватися для даних. (Як приклад обмеження для забезпечення цілісності можна назвати вимогу, щоб табельний номер співробітника був п'ятизначним цілим числом.)

Забезпечення цілісності даних може здійснюватися користувачем у прикладній програмі або системою управління базами даних. До максимально можливого ступеня це завдання має здійснюватися у вигляді СУБД.

Управління паралелізмом

Система баз даних являє собою розраховану на багато користувачів систему програмного забезпечення, що означає одночасне звернення до бази даних множинних додатків користувача. Тому кожна система баз даних повинна мати будь-який тип механізму, що забезпечує управління спробами модифікувати дані декількома додатками одночасно. Далі наводиться приклад проблеми, яка може виникнути, якщо система баз даних не оснащена таким механізмом управління:

    На загальному банківському рахунку № 3811 у банку X є $1500.

    Власники цього рахунку, пані А та пан Б, йдуть у різні відділення банку та одночасно знімають з рахунку по $750 кожен.

    Сума, що залишилася на рахунку № 3811 після цих транзакцій, має бути $0 і в жодному разі не $750.

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

Резервне копіювання та відновлення

Система баз даних має бути оснащена підсистемою для відновлення після помилок у програмному та апаратне забезпечення. Наприклад, якщо в процесі оновлення 100 рядків таблиці бази даних відбувається збій, підсистема відновлення повинна виконати відкат всіх виконаних оновлень, щоб забезпечити несуперечність даних.

Безпека баз даних

Найважливішими поняттями безпеки баз даних є автентифікація та авторизація. Аутентифікація- це процес перевірки автентичності облікових даних користувача, щоб уникнути використання системи несанкціонованими користувачами. Аутентифікація найчастіше реалізується, вимагаючи, щоб користувач вводив своє ім'я користувача та пароль. Система перевіряє достовірність цієї інформації, щоб вирішити, чи має даний користувачправо входу до системи чи ні. Цей процес можна посилити шифруванням.

Авторизація- це процес, що застосовується до користувачів, які вже отримали доступ до системи, щоб визначити їх права використання певних ресурсів. Наприклад, доступ до інформації про структуру бази даних та системний каталог певної сутності можуть отримати тільки адміністратори.

Системи реляційних баз даних

Компонент Database Engine сервера Microsoft SQL Server є системою реляційних баз даних. Поняття систем реляційних баз даних було вперше запроваджено 1970 р. Едгаром Ф. Коддом у статті "A Relational Model of Data for Large Shared Data Banks". На відміну від попередніх систем баз даних (мережеві та ієрархічні), реляційні системи баз даних засновані на реляційній моделі даних, що володіє потужною математичною теорією.

Модель даних- це набір концепцій, взаємозв'язків між ними та їх обмежень, що використовуються для представлення даних у реальному завданні. Центральним поняттям реляційної моделі даних є таблиця. Тому, з погляду користувача, реляційна база даних містить лише таблиці і більше. Таблиці складаються зі стовпців (одного або кількох) та рядків (жодена або кількох). Кожне припинення рядка і стовпця таблиці завжди містить одне значення даних.

Робота з демонстраційною базою даних у наступних статтях

Використовувана у наших статтях база даних SampleDb представляє якусь компанію, що складається з відділів (department) та співробітників (employee). Кожен працівник належить лише одному відділу, а відділ може містити одного або кількох працівників. Співробітники працюють над проектами (project): у будь-який час кожен співробітник зайнятий одночасно в одному або кількох проектах, а над кожним проектом може працювати один або кілька працівників.

Ця інформація представлена ​​в базі даних SampleDb (перебуває у вихідниках) за допомогою чотирьох таблиць:

Department Employee Project Works_on

Організація цих таблиць показана на рисунках нижче. Таблиця Department представляє усі відділи компанії. Кожен відділ має наступні атрибути (стовпці):

Department (Number, DepartmentName, Location)

Атрибут Number є однозначним номером кожного відділу, атрибут DepartmentName - його назва, а атрибут Location - розташування. Таблиця Employee представляє всіх співробітників, що працюють у компанії. Кожен співробітник має наступні атрибути (стовпці):

Employee (Id, FirstName, LastName, DepartmentNumber)

Атрибут Id є однозначним табельним номером кожного співробітника, атрибути FirstName і LastName - ім'я та прізвище співробітника відповідно, а атрибут DepartmentNumber - номер відділу, в якому працює співробітник.

Всі проекти компанії представлені в таблиці проектів Project, що складається з наступних стовпців (атрибутів):

Project (ProjectNumber, ProjectName, Budget)

У стовпці ProjectNumber вказується однозначний номер проекту, а в стовпцях ProjectName та Budget - назва та бюджет проекту відповідно.

У таблиці Works_on вказується зв'язок між співробітниками та проектами:

Works_on (EmpId, ProjectNumber, Job, EnterDate)

У стовпці EmpId вказується табельний номер співробітника, а стовпці ProjectNumber - номер проекту, у якому бере участь. Комбінація значень цих двох шпальт завжди однозначна. У стовпцях Job та EnterDate вказується посада та початок роботи співробітника в даному проектівідповідно.

На прикладі бази даних SampleDb можна описати деякі основні властивості реляційних систем баз даних:

    Рядки таблиці не організовані у певному порядку.

    Також не організовані в певному порядку стовпці таблиці.

    Кожен стовпець таблиці повинен мати однозначне ім'я у будь-якій таблиці. Але різні таблиціможуть містити стовпці з тим самим ім'ям. Наприклад, таблиця Department містить стовпець Number і стовпець з такою ж назвою є в таблиці Project.

    Кожен елемент даних таблиці має містити одне значення. Це означає, що будь-яка комірка на перетині рядків та стовпців таблиці ніколи не містить будь-якого набору значень.

    Кожна таблиця містить принаймні один стовпець, значення якого визначають таку властивість, що жодні два рядки не містять однакової комбінації значень для всіх стовпців таблиці. У реляційній моделі даних такий стовпець називатиметься потенційним ключем (candidate key). Якщо таблиця містить кілька потенційних ключів, розробник вказує один із них, як первинний ключ (primary key)цієї таблиці. Наприклад, первинним ключем таблиці Department буде стовпець Number, а первинними ключами таблиць Employee буде Id. Нарешті первинним ключем таблиці Works_on буде комбінація стовпців EmpId і ProjectNumber.

    Таблиця ніколи не містить однакових рядків. Але це властивість існує лише теоретично, т.к. компонент Database Engine та інші реляційні системи баз даних допускають існування у таблиці однакових рядків.

SQL - мова реляційної бази даних

Мова реляційної бази даних у системі SQL Server називається Transact-SQL. Це різновид найбільш значущої на сьогоднішній день мови бази даних. мови SQL (Structured Query Language - мова структурованих запитів). Походження мови SQL тісно пов'язане з проектом, званим System R, розробленим та реалізованим компанією IBM ще на початку 80-х років минулого сторіччя. За допомогою цього проекту було продемонстровано, що, використовуючи теоретичні основироботи Едгара Ф. Кодда, можливе створення системи реляційних баз даних

На відміну від традиційних мов програмування, таких як C#, C++ та Java, мова SQLє безліч-орієнтованим (set-oriented). Розробники мови також називають його запис-орієнтованим (record-oriented). Це означає, що в мові SQL можна запитувати дані з декількох рядків однієї або декількох таблиць, використовуючи лише одну інструкцію. Це одна з найважливіших переваг мови SQL, що дозволяє використовувати цю мову логічно більше високому рівнініж традиційні мови програмування.

Іншою важливою властивістю мови SQL є її непроцедурність. Будь-яка програма, написана на процедурною мовою(C#, C++, Java), покроково визначає, як виконувати певне завдання. На противагу цьому, мова SQL, як і будь-яка інша непроцедурна мова, визначає, що хоче користувач. Таким чином, відповідальність за знаходження відповідного способу задоволення запиту користувача лежить на системі.

Мова SQL містить два підмови: мова опису даних DDL (Data Definition Language)і мова обробки даних DML (Data Manipulation Language). Інструкції мови DDL також використовуються для опису схем таблиць баз даних. Мова DDL містить три загальні інструкції SQL: CREATE, ALTER та DROP. Ці інструкції використовуються для створення, зміни та видалення, відповідно, об'єктів баз даних, таких як бази даних, таблиці, стовпці та індекси.

На відміну від мови DDL, мова DML охоплює всі операції з маніпулювання даними. Для маніпулювання базами даних завжди застосовуються чотири загальні операції: вилучення, вставка, видалення та модифікація даних (SELECT, INSERT, DELETE, UPDATE).

Microsoft SQL Server 2008 .

10.1 Загальна структура СУБД

Для кращого розуміння принципів роботи сучасних СУБД розглянемо структуру однієї з найпоширеніших клієнт-серверних СУБД – Microsoft SQL Server 2008. Незважаючи на те, що кожна комерційна СУБД має свої відмінні особливості, інформації у тому, як влаштована якась із СУБД , зазвичай буває досить швидкого початкового освоєння інший СУБД . Короткий огляд можливостей Microsoft SQL Server - 2008 був наведений у розділі, присвяченому короткому огляду сучасних СУБД. У цьому розділі розглянемо основні моменти, пов'язані зі структурою відповідної СУБД (архітектурою бази даних та структурою програмного забезпечення).

Під архітектурою (структурою) бази даних конкретної СУБД розумітимемо основні моделі представлення даних, що використовуються у відповідній СУБД, а також взаємозв'язки між цими моделями..

Відповідно до розглянутих у "Різні архітектурні рішення, що використовуються при реалізації розрахованих на багато користувачів СУБД. Короткий огляд СУБД" різними рівнями опису даних розрізняють різні рівні абстракції архітектури бази даних .

Логічний рівень (Рівень моделі даних СУБД) - засіб представлення концептуальної моделі. Тут кожна СУБД має деякі відмінності, але вони не дуже значними. Зазначимо, що у різних СУБД суттєво відрізняються механізми переходу від логічного до фізичного рівня уявлення.

Фізичний рівень (Внутрішнє подання даних у пам'яті ЕОМ - фізична структура бази даних). Цей рівеньрозгляду передбачає вивчення бази даних лише на рівні файлів, що зберігаються на жорсткому диску. Структура цих файлів – особливість кожної конкретної СУБД, зокрема. і Microsoft SQL Server.


Рис. 10.1.

10.2. Архітектура бази даних. Логічний рівень

Розглянемо логічний рівеньподання бази даних (http://msdn.microsoft.com). Microsoft SQL Server 2008 є реляційною СУБД (дані представляються у вигляді таблиць). Отже, основний структурою моделі даних цієї СУБД є таблиці.

Таблиці та типи даних

Таблиці містять дані про всі сутності концептуальної моделі бази даних. При описі кожного стовпця (поля) користувач має визначити тип відповідних даних. Microsoft SQL Server 2008 підтримує як вже традиційні типи даних (символьний рядок з різним уявленням, число з плаваючою точкою довжиною 8 або 4 байти, ціле число довжини 2 або 4 байти, дата і час, поле приміток, булеве значення і т.д. ), і нові типи даних. Крім цього Microsoft SQL Server 2008 надає спеціальний апарат для створення користувацьких типів даних.

Розглянемо коротку характеристикудеяких нових типів даних, які значно розширюють можливості користувача (http://www.oszone.net).

Тип даних hierarchyid

Тип даних hierarchyid дозволяє створювати відносини між елементами даних у таблиці, щоб задати позицію в ієрархії зв'язків між рядками таблиці. В результаті використання цього типу даних у таблиці рядки таблиці можуть відображати певну ієрархічну структуру, яка відповідає зв'язкам між даними цієї таблиці.

Просторові типи даних

Просторові дані – це дані, що визначають географічні розташування та форми, переважно на Землі. Це можуть бути орієнтири, дороги і навіть розташування фірми. У SQL Server 2008 є географічні (geography) та геометричні (geometry) типи даних для роботи з цією інформацією. Тип даних geographyпрацює з інформацією для кулястої землі. Модель шароподібної землі використовує при розрахунках кривизну земної поверхні. Інформація про положення задається широтою та довготою. Ця модель добре підходить для додатків, пов'язаних з морськими перевезеннями, військовим плануванням та короткостроковими додатками, що мають прив'язку до земної поверхні. Цю модель потрібно використовувати, якщо дані зберігаються у вигляді широт та довгот.

Тип даних geometryпрацює з планарною моделлю чи моделлю плоскої землі. У цій моделі земля вважається плоскою проекцією із певної точки. Модель плоскої землі не враховує кривизну поверхні землі, тому використовується, у першу чергу, для опису коротких відстаней, наприклад, у базі даних програми, що описує внутрішню частину будівлі.

Типи geographyі geometryстворюються з векторних об'єктів, заданих у форматах Well-Known Text (WKT) або Well-Known Binary (WKB). Це формати для перенесення просторових даних, описані в простих функціях відкритого геопросторового консорціуму (Open Geospatial Consortium (OGC) Simple Features) для специфікацій SQL (SQL Specification).

Ключі

Для кожної таблиці має бути визначено первинний ключ – мінімальний набір атрибутів, що унікально ідентифікує кожен запис у таблиці. Для реалізації зв'язку між таблицями до однієї із зв'язаних таблиць включається додаткове поле (кілька полів) – первинний ключ іншої таблиці. Додатково увімкнені поля або поля в цьому випадку називаються зовнішнім ключем відповідної таблиці.

Крім таблиць, модель даних Microsoft SQL Server 2008 входить ще цілий ряд компонентів. Дамо коротку характеристику основним із них.

Індекси

У "Використання формального апарату для оптимізації схем відносин" розглядалося поняття індексу. Тут поняття індексу винесено на логічний рівеньдля зручності користувача. Індекси створюються для прискорення пошуку потрібної інформації та містять інформацію про впорядкованість даних за різними критеріями. Індексування може бути виконано по одному або кількох стовпчиках. Індексування може бути здійснено будь-якої миті. Індекс містить ключі, побудовані з одного або кількох стовпців у таблиці чи поданні. Ці ключі зберігаються у вигляді структури збалансованого дерева, яка підтримує швидкий пошукрядків за їх ключовими значеннями в SQL Server.

Уявлення

Подання - це віртуальна таблиця, вміст якої визначається запитом. Подання формується на основі SQL-запиту SELECT, що формується за звичайними правилами. Таким чином, уявлення є названий запит SELECT.

Як і реальна таблиця, уявлення складається з сукупності названих стовпців і рядків даних. Поки уявлення нічого очікувати проіндексовано, воно немає у базі даних як збережена сукупність значень. Рядки та стовпці даних витягуються з таблиць, зазначених у визначальному подання запиту та динамічно створюваних при зверненнях до подання. Подання виконує функцію фільтра базових таблиць , куди воно посилається. Визначальний подання запит може бути ініційований в одній або декількох таблицях або в інших уявленнях поточної бази даних. З іншого боку, визначення уявлень з даними з кількох різнорідних джерел можна використовувати розподілені запити. Це корисно, наприклад, якщо потрібно об'єднати структуровані подібним чином дані, що стосуються різних серверів, кожен із яких зберігає дані конкретного відділу організації.

Складання

Складання є файлами динамічної бібліотеки, які використовуються в екземплярі SQL Server для розгортання функцій, процедур, що зберігаються, тригерів, що визначаються користувачем статистичних обчислень і визначаються користувачем типів.

Обмеження

Обмеження дозволяють встановити метод, за допомогою якого компонент СУБД Database Engine автоматично забезпечує цілісність бази даних.. Обмеження задають правила допустимості певних значень у стовпцях і є стандартним механізмом забезпечення цілісності. Рекомендується використовувати обмеження, а не тригери, правила та значення за промовчанням. Оптимізатор запитівтакож використовує визначення обмежень для побудови високопродуктивних планів виконаннязапитів.

Правила

Правила – ще один спеціальний механізм, призначений для забезпечення цілісності бази даних, що за функціональністю нагадують деякі типи обмежень. Microsoft зазначає, що за відповідної можливості використання обмежень з низки причин краще і, можливо, у майбутній версії ця можливість буде видалена.

Значення за замовчуванням

Значення за замовчуванням визначають, якими значеннями заповнювати стовпець, якщо при вставці рядка для цього стовпця значення не вказано. Значення за замовчуванням можуть бути будь-яким виразом, результат якого - константа, наприклад, власне константою, вбудованою функцією або математичним виразом.

Деколи так хочеться привести свої думки в порядок, розкласти їх по поличках. А ще краще в алфавітній та тематичній послідовності, щоб нарешті настала ясність мислення. Тепер уявіть, який хаос творився в « електронних мозку» будь - якого комп'ютера без чіткої структуризації всіх даних та Microsoft SQL Server :

MS SQL Server

Даний програмний продуктє систему управління базами даних (СУБД) реляційного типу, розроблену корпорацією Microsoft. Для маніпуляції даними використовується спеціально розроблена мова Transact-SQL. Команди мови для вибірки та модифікації бази даних побудовані на основі структурованих запитів:

Реляційні бази даних побудовані взаємозв'язку всіх структурних елементів, зокрема і з допомогою їх вкладеності. Реляційні бази даних мають вбудовану підтримку найпоширеніших типів даних. Завдяки цьому в SQL Server інтегрована підтримка програмного структурування даних за допомогою тригерів і процедур, що зберігаються.

Огляд можливостей MS SQL Server

СУБД є частиною довгого ланцюжка спеціалізованого програмного забезпечення, яке корпорація Microsoft створила для розробників. А це означає, що всі ланки цього ланцюга (додатки) глибоко інтегровані між собою.

Тобто їх інструментарій легко взаємодіє між собою, що значно спрощує процес розробки та написання. програмного коду. Прикладом такого взаємозв'язку є середовище програмування MS Visual Studio. У її інсталяційний пакет вже входить SQL Server Express Edition.

Звичайно, це не єдина популярна СУБД на світовому ринку. Але саме вона є більш прийнятною для комп'ютерів, що працюють під керуванням Windows, за рахунок своєї спрямованості саме на цю операційну систему І не лише через це.

Переваги MS SQL Server:

  • Має високим ступенемпродуктивності та відмовостійкості;
  • Є розрахована на багато користувачів СУБД і працює за принципом «клієнт-сервер»;

    Клієнтська частина системи підтримує створення запитів користувача і їх відправку для обробки на сервер.

  • Тісна інтеграція з операційною системою Windows;
  • Підтримка віддалених підключень;
  • Підтримка популярних типів даних, а також можливість створення тригерів і процедур, що зберігаються;
  • Вбудована підтримка ролей користувачів;
  • Розширена функція резервного копіювання бази даних;
  • Високий рівень захищеності;
  • Кожен випуск включає кілька спеціалізованих редакцій.

Еволюція SQL Server

Особливості цієї популярної СУБД найлегше простежуються при розгляді історії еволюції всіх її версій. Детальніше ми зупинимося лише на тих випусках, в які розробники вносили вагомі та кардинальні зміни:

  • Microsoft SQL Server 1.0 – вийшов ще 1990 року. Вже тоді експерти відзначали високу швидкість обробки даних, що демонструється навіть при максимальному навантаженні в розрахованому на багато користувачів режимі роботи;
  • SQL Server 6.0 – вийшов у 1995 році. У цій версії вперше у світі була реалізована підтримка курсорів та реплікації даних;
  • SQL Server 2000 - у цій версії сервер отримав повністю новий двигун. Більшість змін торкнулася лише користувача сторони докладання;
  • SQL Server 2005 - збільшилася масштабованість СУБД, багато в чому спростився процес управління та адміністрування. Було впроваджено новий API для підтримки програмної платформи .NET;
  • Наступні випуски були спрямовані на розвиток взаємодії СУБД на рівні хмарних технологій та засобів бізнес-аналітики.

У базовий комплект системи входить кілька утиліт для налаштування SQL Server. До них відносяться:

Менеджер конфігурації. Дозволяє керувати всіма мережними налаштуваннямита службами сервера бази даних. Використовується для налаштування SQL Server всередині мережі.

  • SQL Server Error and Usage Reporting:

Утиліта дає змогу настроїти надсилання звітів про помилки до служби підтримки Microsoft .

Використовується для оптимізації сервера бази даних. Тобто ви можете налаштувати функціонування SQL Server під свої потреби, увімкнувши або вимкнувши певні можливості та компоненти СУБД.

Набір утиліт, що входять до Microsoft SQL Server, може відрізнятися залежно від версії та редакції програмного пакета. Наприклад, у версії 2008 року ви не знайдете SQL Server Surface Area Configuration.

Запуск Microsoft SQL Server

Для прикладу буде використано версію сервера баз даних випуску 2005 року. Запуск сервера можна зробити кількома способами:

  • Через утиліту SQL Server Configuration Manager. У вікні програми ліворуч вибираємо "SQL Server 2005 Services", а праворуч - потрібний нам екземпляр сервера БД. Зазначаємо його і підменю правої кнопки миші вибираємо «Start».
  • За допомогою середовища SQL Server Management Studio Express. Вона не входить в інсталяційний пакет редакції Express. Тому її потрібно завантажувати окремо з офіційного сайту Microsoft.

Для запуску сервера баз даних запускаємо програму. У діалоговому вікні « З'єднання з сервером» у полі «Ім'я сервера» вибираємо потрібний нам екземпляр. В полі " Перевірка достовірності» залишаємо значення « Перевірка автентичності Windows». І натискаємо на кнопку «З'єднати»:

Основи адміністрування SQL Server

Перед запуском MS SQL Server потрібно коротко ознайомитися з основними можливостями його налаштування та адміністрування. Почнемо з більш детального огляду кількох утиліт зі складу СУБД:

  • SQL Server Surface Area Configuration– сюди слід звертатися, якщо потрібно включити або вимкнути будь-яку можливість сервера бази даних. Внизу вікна знаходяться два пункти: перший відповідає за мережеві параметри, а в другому можна активувати вимкнену за промовчанням службу або функцію. Наприклад, включити інтеграцію з платформою .NET через запити T-SQL:
  • SQL Server Management Studio є основним засобом адміністрування. У цьому середовищі реалізована можливість налаштування сервера та баз даних як через інтерфейс програми, так і за допомогою запитів на мові T-SQL .

Основні налаштування можна здійснити через « Оглядач об'єктів», що відображає ліворуч у вікні програми всі основні елементи сервера у вигляді деревоподібного списку. Найважливішою є вкладка «Безпека». Через неї можна настроїти права та ролі користувачів та адміністраторів для основного сервера, або окремо для кожної бази даних.

Перша версія Microsoft Servers SQL була представлена ​​компанією далекого 1988 року. СУБД відразу позиціонувалася як реляційна, що має, за заявою виробника, три переваги:

  • процедури, що зберігаються, завдяки яким прискорювалася вибірка даних і підтримувалася їх цілісність в розрахованому на багато користувачів режимі;
  • постійний доступ до адміністрування без відключення користувачів;
  • відкрита платформа сервера, що дозволяє створювати сторонні програми, що використовують SQL Server

2005 року під кодовим найменуванням Yukon з розширеними можливостями масштабування став першою версією, що повністю підтримує технологію.NET. Поліпшилася підтримка розподілених даних, з'явилися перші інструменти звітності та аналізу інформації.

Інтеграція з Інтернетом дозволила використовувати SQL Servers 2005 як основу для створення систем електронної комерції із простим та захищеним доступом до даних через популярні браузери з використанням вбудованого Firewall Версія Enterprise підтримувала паралельні обчисленняна необмежену кількість процесорів.

На зміну версії 2005 прийшов Microsoft SQL Server 2008, який до цих пір є одним з найпопулярніших серверів баз даних, а трохи пізніше з'явилася і наступна версія - SQL Servers 2012, з підтримкою сумісності з .NET Framework та іншими передовими технологіями обробки інформації та середовище розробки Visual Studio. Для доступу було створено спеціальний модуль SQL Azure.

Transact-SQL

З 1992 року SQL є стандартом доступу до бази даних. Практично всі мови програмування для доступу до БД використовують саме його, навіть якщо користувач здається, що він працює з інформацією безпосередньо. Базовий синтаксис мови залишається незмінним забезпечення сумісності, але кожен виробник систем управління базами даних намагався поповнити SQL додатковими функціями. Компромісу знайти не вдалося, і після «війни стандартів» залишилися два лідери: PL/SQL компанії Oracle та Transact-SQL у Microsoft Servers SQL.

T-SQL процедурно розширює SQL для доступу до Microsoft Servers SQL. Але це виключає розробку додатків на «стандартних» операторах.

Автоматизуйте бізнес за допомогою SQL Server 2008 R2

Надійна робота бізнес-додатків є надзвичайно важливою для сучасного бізнесу. Найменша проста база даних може призвести до величезних збитків. Сервер баз даних Microsoft SQL Server 2008 R2 дозволяє надійно та безпечно зберігати інформацію практично необмеженого обсягу, використовуючи знайомі всім адміністраторам засоби керування. Підтримується вертикальне масштабування до 256 процесорів.

Технологія Hyper-V максимально ефективно використовує потужність сучасних багатоядерних систем. Підтримка одному процесорі безлічі віртуальних систем знижує витрати і поліпшує масштабируемость.

Аналізуйте дані

Для швидкого аналізу в режимі реального часу потоків даних використовується компонент SQL Server StreamInsight, оптимізований під даний типзадач. Можлива розробка власних програм на основі .NET.

Безперебійна робота та безпека даних

Підтримку оптимальної продуктивності будь-якої миті часу забезпечує вбудований у сервер регулятор ресурсів. Адміністратор може керувати навантаженням та системними засобами, встановлювати ліміт для додатків на використання ресурсів процесора та пам'яті. Функції шифрування забезпечують гнучкий та прозорий захист інформації та ведуть журнал доступу до неї.

Необмежений розмір бази даних

Сховище даних можна масштабувати швидко та безпечно. Користувачі можуть використовувати готові шаблони "Fast Track Date Warehouse" для підтримки дискових масивів до 48 Тб. Базова конфігурація підтримує обладнання провідних фірм, таких як HP, EMC та IBM. Функції стиснення інформації стандарту UCS 2 дозволяють більш економно витрачати дисковий простір.

Підвищення ефективності роботи розробників та адміністраторів

Нові програмні майстри дозволяють швидко усунути недовантаженість серверів, покращити контроль та оптимізувати продуктивність без необхідності залучення зовнішніх сторонніх фахівців. Контролюйте параметри роботи програм та баз даних, знайдіть можливості для покращення роботи на панелях моніторингу та прискорюйте оновлення та встановлення.

Інструменти для персонального бізнес-аналізу

У компаніях ніколи не було єдиної думки щодо того, хто має займатися аналітикою – IT-відділи або безпосередньо користувачі. Система створення персональних звітів вирішує цю проблему за допомогою сучасних інструментів безпечної та ефективної побудови, аналізу та моделювання бізнес-процесів. Підтримується прямий доступ до баз даних Microsoft Officeта SharePoint Server. Корпоративна інформація може інтегруватися з матеріалами інших типів, таких як карти, графіка та відео.

Зручне середовище для спільної роботи

Надайте своїм співробітникам доступ до інформації, спільної розробки та аналізу даних за допомогою програми PowerPivot для електронної таблиці Excel. Програма дозволяє проводити аналіз інформації та моделювання бізнес-процесів та публікувати звіти для загального доступув Інтернеті або в системі SharePoint.

Для наглядного створення внутрішніх звітів пропонується система Report Builder 3.0, що підтримує безліч форматів та широкий набір попередньо встановлених шаблонів.

Працюйте з базами даних безкоштовно

Компанія надає невеликим проектам і розробникам-початківцям спеціальну безкоштовну версію Microsoft SQL Server Express. Сюди включені самі технології баз даних, як і «повних» версій SQL Server.

Підтримуються середовища розробки Visual Studio та Web Developer. Створюйте складні таблиці та запити, розробляйте інтернет-додатки з підтримкою баз даних, отримуйте прямий доступ до інформації з PHP.

Користуйтеся всіма можливостями Transact-SQL і передовими технологіями доступу до даних ADO.NET і LINQ. Підтримуються процедури, що зберігаються, тригери і функції.

Зосередьтеся на елементах бізнес-логіки, а оптимізацію структури бази даних система зробить самостійно.

Створюйте насичені звіти будь-якого ступеня складності. Користуйтеся підсистемою пошуку, інтегруйте звіти з програмами Microsoft Office та додавайте до документів інформацію про географічне розташування.

Програми, що розробляються, можуть працювати за відсутності підключення до сервера БД. Синхронізація здійснюється автоматично з використанням фірмової технологіїтранзакційної реплікації Sync Framework

Адмініструйте свою інфраструктуру, використовуючи політики управління для всіх баз даних та програм. Загальні експлуатаційні сценарії скорочують час на оптимізацію запитів, створення та відновлення резервних копіймасштабу підприємства.

SQL Server 2008 R2 Express Edition ідеально підходить для швидкого розгортання сайтів та інтернет-магазинів, програм для персонального використання, малого бізнесу. Це відмінний варіантдля початку роботи та навчання.

Керуйте базами даних за допомогою SQL Server Management Studio

Microsoft SQL Server Management є спеціалізованим середовищем для створення, доступу та управління базами даних та всіма елементами SQL Server, включаючи служби звітів.

Система об'єднує в одному інтерфейсі всі можливості програм адміністрування із ранніх версій, таких як Query Analyzer та Enterprise Manager. Адміністратори отримують софт із великим набором графічних об'єктів розробки та управління, а також розширену мову створення сценаріїв роботи з БД.

Редактор коду Microsoft Server Management Studio заслуговує на окрему увагу. Він дозволяє розробляти сценарії скриптів на Transact-SQL, програмувати багатовимірні запити доступу до даних і проводити їх аналіз з підтримкою збереження результатів в XML. Створення запитів та сценаріїв можливе без підключення до мережі або сервера, з подальшим виконанням та синхронізацією. Є широкий вибір попередньо встановлених шаблонів та система керування версіями.

Модуль «Обозреватель об'єктів» дозволяє переглядати та керувати будь-якими вбудованими об'єктами Microsoft Servers SQL на всіх серверах та екземплярах баз даних. Легкий доступ до потрібної інформації надзвичайно важливий для швидкої розробки програм та контролю версій.

Система побудована на базі системи Visual Studio Isolated Shell, яка підтримує налаштування, що розширюються, і розширення сторонніх розробників. В Інтернеті є безліч спільнот, на яких можна знайти всю необхідну інформацію та приклади коду для розробки власних інструментів управління та обробки даних.

За даними дослідницької компанії Forrester Research, сервер баз даних Microsoft SQL Server 2012 увійшов до трійки лідерів ринку корпоративних інформаційних сховищ за підсумками 2013 року. Експерти зазначають, що швидке зростання частки ринку Microsoft обумовлено комплексним підходом корпорації до автоматизації бізнес-процесів. Microsoft SQL Server є сучасною платформою для управління та зберігання даних будь-яких типів, доповненою інструментами аналітики та розробки. Окремо варто відзначити простоту інтеграції з іншими продуктами компанії, такими як Office та SharePoint.



Завантаження...
Top