1 / 40

Проектиране на релационни бази от данни с Microsoft SQL Server 2005 Management Studio

Проектиране на релационни бази от данни с Microsoft SQL Server 2005 Management Studio. Теория и практика. Светлин Наков. Национална академия по разработка на софтуер. academy.devbg.org. Съдържание. Национална академия по разработка на софтуер (НАРС) Релационни бази от данни

gavril
Download Presentation

Проектиране на релационни бази от данни с Microsoft SQL Server 2005 Management Studio

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Проектиране на релационни бази от данни с Microsoft SQL Server 2005Management Studio Теория и практика Светлин Наков Национална академия по разработка на софтуер academy.devbg.org

  2. Съдържание • Национална академия по разработка на софтуер (НАРС) • Релационни бази от данни • Таблици, първичен ключ, външен ключ, връзки, множественост, E/R диаграми, нормализация • Инструментът SQL Server Management Studio 2005 • Създаване на таблици и връзки • Изграждане на E/R диаграми

  3. За лектора • Светлин Наков • Носител на наградата “Джон Атанасов” на Президента на България • Автор на 3 книги и над 20 статии • 15 години опит с програмирането • 8 от тях професионално • Директор направление обучение в Национална академия по разработка на софтуер • Преподавател във ФМИ на СУ

  4. Национална академия по разработка на софтуер (НАРС)

  5. Какво е НАРС? • Национална академия по разработка на софтуер (НАРС) • Практическо обучение за софтуерни инженери • Курсове за начинаещи и напреднали • Специалности Java и .NET • Гарантирана работа по специалността • Безплатно обучение! • http://academy.devbg.org

  6. НАРС – успешен старт • НАРС ви гарантира успешен старт в кариерата на софтуерен инженер • Работа в престижи софтуерни фирми: • SAP Labs Bulgaria, telerik, Sciant, Rila Solutions, Sirma, Seeburger Informatik, ICB, Stemo, Wohnfinder, Bank Service, Bianor, Siemens, ComSoft и др. • Безплатнообучение! • За контакти: http://academy.devbg.org

  7. Релационни бази от данни Фундаментални концепции

  8. Релационни бази от данни • Релационните бази от данни • Представляват съвкупности от таблици и връзки между тях (релации) • Ползват здрава математическа основа: релационната алгебра • Системи за управление на релационни бази от данни (СУБД, RDBMS) • Дефиниратрелационната схема (таблиците и връзките между тях) • Обработват данните в таблиците: добавяне, търсене, промяна, изтриване

  9. Системи за управление на бази от данни • RDBMS системите се наричат още • сървъри за управление на бази от данни • или просто "Database сървъри" • По-известни RDBMS сървъри: • Microsoft SQL Server • Oracle Database • IBM DB2 • PostgreSQL • MySQL • Borland Interbase

  10. Таблици и връзки Основни понятия

  11. Таблици • Таблиците представляват съвкупност от стойности, подредени в редове и колони. Пример (таблица Person): • Редовете имат еднаква структура • Колоните имат име и тип (число, символен низ, дата или др.)

  12. Схема на таблица • Схема на таблица е наредена последователност от описания на колони (име и тип) • Например таблицатаPersonима следната схема: Person ( Id:число, Name: символен низ, Family: символен низ, Employer: символен низ )

  13. Типове данни в SQL Server 2005 • Числови • bit (1-bit), integer (32-bit), bigint (64-bit) • float, real, numeric(scale, precision) • money – за парични пресмятания • Текстови • char(size) – фиксирана дължина • varchar(size) – символен низ • nvarchar(size) – Unicode низ • text, ntext – дълъг символен низ

  14. Типове данни в SQL Server 2005 • Бинарни данни • varbinary(size) – редица от байтове • image – бинарен блок до 1 GB • Дати и часове • datetime – дата и час от 1.1.1753 г. до 31.12. 9999 г. с прецизност 1/300 сек. • smalldatetime – дата с точност 1 минута • Други • timestamp– автоматична версия на ред

  15. Първичен ключ • Първичният ключ (primary key) еколона от таблицата, която уникално идентифицира даден неин ред • Два записа (реда) са различни когато са различни първичните им ключове • Първичният ключ може да е съвкупност от няколко колони Person Primary key

  16. Връзки (релации) • Връзките между таблиците се базират на взаимоотношения primary key / foreign key Foreign key Primary key Primary key Town Country

  17. Видове връзки (релации) • Външният ключ (foreign key) е номер на запис (primary key) в друга таблица • Връзките спестяват повтарянето на информация • В примера името на държавата не се повтаря за всеки град • Връзките имат множественост (multiplicity): • 1 x много – държава / градове • много x много – студент / учебен курс • 1 x 1 – например човек ↔ студент

  18. Множественост на връзките (1 x n) • Връзка 1 x много (или много x1) • 1 запис от първата таблица съответства на много записи от втората таблица • Използва се много често Town Country

  19. Множественост на връзките (n x n) • Връзка много x много • Един запис от първата таблица съответства на много записи от втората таблица и обратното • Реализира се чрез междинна таблица StudentCourse Student Course

  20. Множественост на връзките (n x n) • Връзка много x много с entity таблица Enrollment Student Course

  21. Множественост на връзките (1 x 1) • Връзка 1 x 1 • 1 запис от едната таблица съответства на точно 1 запис от другата таблица • Моделира наследяване на таблици Primary & foreign key in the same time Primary key Person Student

  22. Представяне на дървовидни данни • Как представяме дървета и графи?

  23. Авторелации(Self-relationships) • Връзките primary/foreign key може да са в една и съща таблица • Пример: служителите в една фирма имат началник, който също е служител Primary key Foreign key Employees

  24. Проектиране на релационни бази от данни Фундаментални концепции

  25. Идентификация на същностите (entities) • Entity таблиците представляват същности (обекти) от реалния свят • Най-често са съществителни в текста на заданието (спецификацията) • Например: • Същности: студент, курс, град Да се разработи система за съхраняване на информация за студенти, които се обучават в различни курсове. Курсовете се провеждат в различни градове. При регистрация на студент за него се въвежда име, фак. номер, снимка и дата.

  26. Идентификация на колоните в таблиците • Колоните в таблиците са характеристики на същностите • Имат име и тип • Например студентите имат: • Име (текст) • Факултетен номер (число) • Снимка (бинарен блок) • Дата на регистрация (дата)

  27. Идентификация на колоните в таблиците • Колоните са пояснения за същностите в текста на заданието, например: • Студентите имат следните характеристики: • Име, факултетен номер, снимка, дата на регистрация и списък от курсове Да се разработи система за съхраняване на информация за студенти, които се обучават в различни курсове. Курсовете се провеждат в различни градове. При регистрация на студент за него се въвежда име, фак. номер, снимка и дата.

  28. Как да изберем първичен ключ за entity таблиците? • Винаги дефинирайте допълнителна колона за първичния ключ • Не използвайте съществуваща колона (например ЕГН) • Трябва да е число (integer) • Трябва да се обяви като primary key • Използвайте identity в SQL Server • Слагайте първичния ключ като първа колона

  29. Идентификация на връзките (entities) • Връзките са отношения между същностите: • "Студенти се обучават в курсове" – релация много към много • "Курсовете се провеждат в градове" – релация много към едно Да се разработи система за съхраняване на информация за студенти, които се обучават в различни курсове. Курсовете се провеждат в различни градове. При регистрация на студент за него се въвежда име, фак. номер, снимка и дата.

  30. Нормализация на релационна схема

  31. Нормализация • Нормализацията на релационната схема премахва повтарящите се данни • Денормализираните данни съдържат много повторения. Например: Product

  32. Нормализация – пример • Пример за нормализиранасхема: Product Vendor Category Store Town

  33. E/R диаграми

  34. Релационни схеми и E/R диаграми • Релационна схема на БД наричаме съвкупността от: • Схемите на всички таблици • Връзките между таблиците • Релационната схема описва структурата на БД • Не съдържа данни, а само метаданни • Релационните схеми се изобразяват графично чрез Entity/Relationship диаграми (E/R Diagrams)

  35. E/R диаграми – пример Диаграмата е създадена с Microsoft SQL Server 2005 Management Studio

  36. E/R диаграми – пример Диаграмата е създадена с Microsoft Visio

  37. E/R диаграми – пример Диаграмата е създадена с PLATINUM ERwin

  38. Инструменти за E/R дизайн • E/R диаграмите се създават с инструменти за моделиране на данни (Data Modeling Tools): • SQL Server Management Studio • CASE Studio • Oracle Designer • Microsoft Visio • Computer Associates ERwin • IBM Rational Rose • fabForce DBDesigner (GNU GPL проект с отворен код за Windows и Linux)

  39. Дизайн на DB диаграми с SQLServer 2005Management Studio Демонстрация

  40. Проектиране на релационни бази от данни Въпроси?

More Related