🗊Презентация Создание таблиц БД

Нажмите для полного просмотра!
Создание таблиц БД, слайд №1Создание таблиц БД, слайд №2Создание таблиц БД, слайд №3Создание таблиц БД, слайд №4Создание таблиц БД, слайд №5Создание таблиц БД, слайд №6Создание таблиц БД, слайд №7Создание таблиц БД, слайд №8Создание таблиц БД, слайд №9Создание таблиц БД, слайд №10Создание таблиц БД, слайд №11Создание таблиц БД, слайд №12Создание таблиц БД, слайд №13Создание таблиц БД, слайд №14Создание таблиц БД, слайд №15Создание таблиц БД, слайд №16Создание таблиц БД, слайд №17Создание таблиц БД, слайд №18Создание таблиц БД, слайд №19Создание таблиц БД, слайд №20Создание таблиц БД, слайд №21Создание таблиц БД, слайд №22Создание таблиц БД, слайд №23Создание таблиц БД, слайд №24Создание таблиц БД, слайд №25Создание таблиц БД, слайд №26Создание таблиц БД, слайд №27Создание таблиц БД, слайд №28Создание таблиц БД, слайд №29Создание таблиц БД, слайд №30Создание таблиц БД, слайд №31Создание таблиц БД, слайд №32Создание таблиц БД, слайд №33Создание таблиц БД, слайд №34Создание таблиц БД, слайд №35Создание таблиц БД, слайд №36Создание таблиц БД, слайд №37Создание таблиц БД, слайд №38Создание таблиц БД, слайд №39Создание таблиц БД, слайд №40Создание таблиц БД, слайд №41Создание таблиц БД, слайд №42Создание таблиц БД, слайд №43Создание таблиц БД, слайд №44Создание таблиц БД, слайд №45Создание таблиц БД, слайд №46Создание таблиц БД, слайд №47Создание таблиц БД, слайд №48Создание таблиц БД, слайд №49Создание таблиц БД, слайд №50Создание таблиц БД, слайд №51Создание таблиц БД, слайд №52Создание таблиц БД, слайд №53Создание таблиц БД, слайд №54Создание таблиц БД, слайд №55Создание таблиц БД, слайд №56Создание таблиц БД, слайд №57Создание таблиц БД, слайд №58Создание таблиц БД, слайд №59Создание таблиц БД, слайд №60Создание таблиц БД, слайд №61Создание таблиц БД, слайд №62Создание таблиц БД, слайд №63Создание таблиц БД, слайд №64Создание таблиц БД, слайд №65Создание таблиц БД, слайд №66Создание таблиц БД, слайд №67Создание таблиц БД, слайд №68Создание таблиц БД, слайд №69Создание таблиц БД, слайд №70Создание таблиц БД, слайд №71Создание таблиц БД, слайд №72Создание таблиц БД, слайд №73

Содержание

Вы можете ознакомиться и скачать презентацию на тему Создание таблиц БД. Доклад-сообщение содержит 73 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Mypresentation Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





Создание таблиц БД
   Таблицы создаются командой CREATE TABLE. 
   Эта команда создает пустую таблицу, не содержащую записей. Очевидно, что данные в нее можно внести, например, с помощью команды INSERT.
   В команде CREATE TABLE определяется имя таблицы, и набор имен полей. Кроме того, этой же командой оговариваются типы данных и длины полей.
Описание слайда:
Создание таблиц БД Таблицы создаются командой CREATE TABLE. Эта команда создает пустую таблицу, не содержащую записей. Очевидно, что данные в нее можно внести, например, с помощью команды INSERT. В команде CREATE TABLE определяется имя таблицы, и набор имен полей. Кроме того, этой же командой оговариваются типы данных и длины полей.

Слайд 2





Синтаксис команды CREATE  TABLE следующий:
Синтаксис команды CREATE  TABLE следующий:
CREATE  TABLE <имя таблицы> 
(<имя поля1> <тип данных> [(<длина>)],
(<имя поля2> <тип данных> [(<длина>)]),
…).
Описание слайда:
Синтаксис команды CREATE TABLE следующий: Синтаксис команды CREATE TABLE следующий: CREATE TABLE <имя таблицы> (<имя поля1> <тип данных> [(<длина>)], (<имя поля2> <тип данных> [(<длина>)]), …).

Слайд 3


Создание таблиц БД, слайд №3
Описание слайда:

Слайд 4





Пример:
Пример:
CREATE TABLE STUDENTS
(NOM_ZACH INTEGER,
 SFAM CHAR (20), 
 SNAME CHAR (10),
STIP DECIMAL)
Описание слайда:
Пример: Пример: CREATE TABLE STUDENTS (NOM_ZACH INTEGER, SFAM CHAR (20), SNAME CHAR (10), STIP DECIMAL)

Слайд 5





Числовые типы
Числовые типы
Tочные числовые типы
К категории точных числовых типов в SQL относятся те типы, значения которых точно представляют числа. Типы данных этой категории распадаются на две части: целые типы ( INTEGER и SMALLINT ) и типы, допускающие наличие дробной части ( NUMERIC и DECIMAL ).

  целочисленные: 
 tinyint 0-255,
 smallint (от -32 768 до 32 767),
 int (от -2,147,483,648 до 2,147,483,647) и
 bigint (от -2^63 до 2^63 );
 десятичные: decimal и numeric (это - два названия одного и того же типа);
денежные: money (от -2^63 до 2^63 - с точностью 4 знака после запятой) и smallmoney (от -214748.3648 до +214748.3647).;
с плавающей запятой: float (от -1.79E + 308 до 1.79E + 308) и real (от -3.40E + 38 до 3.40E + 38).
Описание слайда:
Числовые типы Числовые типы Tочные числовые типы К категории точных числовых типов в SQL относятся те типы, значения которых точно представляют числа. Типы данных этой категории распадаются на две части: целые типы ( INTEGER и SMALLINT ) и типы, допускающие наличие дробной части ( NUMERIC и DECIMAL ).   целочисленные: tinyint 0-255, smallint (от -32 768 до 32 767), int (от -2,147,483,648 до 2,147,483,647) и bigint (от -2^63 до 2^63 ); десятичные: decimal и numeric (это - два названия одного и того же типа); денежные: money (от -2^63 до 2^63 - с точностью 4 знака после запятой) и smallmoney (от -214748.3648 до +214748.3647).; с плавающей запятой: float (от -1.79E + 308 до 1.79E + 308) и real (от -3.40E + 38 до 3.40E + 38).

Слайд 6


Создание таблиц БД, слайд №6
Описание слайда:

Слайд 7





DECIMAL [(точность[,масштаб])] Параметр точность указывает максимальное количество цифр вводимых данных этого типа (до и после десятичной точки в сумме), а параметр масштаб – максимальное количество цифр, расположенных после десятичной точки. 
DECIMAL [(точность[,масштаб])] Параметр точность указывает максимальное количество цифр вводимых данных этого типа (до и после десятичной точки в сумме), а параметр масштаб – максимальное количество цифр, расположенных после десятичной точки.
Описание слайда:
DECIMAL [(точность[,масштаб])] Параметр точность указывает максимальное количество цифр вводимых данных этого типа (до и после десятичной точки в сумме), а параметр масштаб – максимальное количество цифр, расположенных после десятичной точки. DECIMAL [(точность[,масштаб])] Параметр точность указывает максимальное количество цифр вводимых данных этого типа (до и после десятичной точки в сумме), а параметр масштаб – максимальное количество цифр, расположенных после десятичной точки.

Слайд 8





Строковые типы
В SQL Server предусмотрены две дублирующих разновидности полей для представления текстовых данных: 
поля Unicode и не-Unicode. 
Unicode - типы данных начинаются символом n (от слова national, то есть с поддержкой национальных символов).
Описание слайда:
Строковые типы В SQL Server предусмотрены две дублирующих разновидности полей для представления текстовых данных: поля Unicode и не-Unicode. Unicode - типы данных начинаются символом n (от слова national, то есть с поддержкой национальных символов).

Слайд 9





Всего в SQL Server предусмотрены следующие типы для текстовых данных:
Всего в SQL Server предусмотрены следующие типы для текстовых данных:
·        char/nchar - строковые данные фиксированной длины;
·        varchar/nvarchar - строковые данные переменной длины.
Описание слайда:
Всего в SQL Server предусмотрены следующие типы для текстовых данных: Всего в SQL Server предусмотрены следующие типы для текстовых данных: ·        char/nchar - строковые данные фиксированной длины; ·        varchar/nvarchar - строковые данные переменной длины.

Слайд 10





При использовании  типа Char значения длиной короче заданной дополняются пробелами до указанной длины. Максимальное значение длины – 8000 символов.
При использовании  типа Char значения длиной короче заданной дополняются пробелами до указанной длины. Максимальное значение длины – 8000 символов.
При использовании  типа VarChar значения длиной короче заданной не дополняются пробелами.
Описание слайда:
При использовании типа Char значения длиной короче заданной дополняются пробелами до указанной длины. Максимальное значение длины – 8000 символов. При использовании типа Char значения длиной короче заданной дополняются пробелами до указанной длины. Максимальное значение длины – 8000 символов. При использовании типа VarChar значения длиной короче заданной не дополняются пробелами.

Слайд 11


Создание таблиц БД, слайд №11
Описание слайда:

Слайд 12





datetime (8 байт, точность до 3,33 миллисекунд);
datetime (8 байт, точность до 3,33 миллисекунд);
 smalldatetime (4 байта, точность до минуты). 
В большинстве приложений вполне хватает smalldatetime;
Описание слайда:
datetime (8 байт, точность до 3,33 миллисекунд); datetime (8 байт, точность до 3,33 миллисекунд); smalldatetime (4 байта, точность до минуты). В большинстве приложений вполне хватает smalldatetime;

Слайд 13


Создание таблиц БД, слайд №13
Описание слайда:

Слайд 14


Создание таблиц БД, слайд №14
Описание слайда:

Слайд 15





Логический тип данных - хранит значения вида true/false (единица/ноль).
Логический тип данных - хранит значения вида true/false (единица/ноль).
 В SQL Server он представлен типом данных boolean.
Описание слайда:
Логический тип данных - хранит значения вида true/false (единица/ноль). Логический тип данных - хранит значения вида true/false (единица/ноль). В SQL Server он представлен типом данных boolean.

Слайд 16


Создание таблиц БД, слайд №16
Описание слайда:

Слайд 17


Создание таблиц БД, слайд №17
Описание слайда:

Слайд 18


Создание таблиц БД, слайд №18
Описание слайда:

Слайд 19


Создание таблиц БД, слайд №19
Описание слайда:

Слайд 20


Создание таблиц БД, слайд №20
Описание слайда:

Слайд 21


Создание таблиц БД, слайд №21
Описание слайда:

Слайд 22


Создание таблиц БД, слайд №22
Описание слайда:

Слайд 23





Преобразование типов

Для выполнения преобразований SQL Server содержит функции CONVERT и CAST, с помощью которых значения одного типа преобразовываются в значения другого типа, если такие изменения вообще возможны. 
CONVERT и CAST могут быть взаимозаменяемыми.
CAST(выражение AS тип_данных) 
CONVERT(тип_данных[(длина)], выражение)
Описание слайда:
Преобразование типов Для выполнения преобразований SQL Server содержит функции CONVERT и CAST, с помощью которых значения одного типа преобразовываются в значения другого типа, если такие изменения вообще возможны. CONVERT и CAST могут быть взаимозаменяемыми. CAST(выражение AS тип_данных) CONVERT(тип_данных[(длина)], выражение)

Слайд 24





Пример:
SELECT ‘сегодня  ‘ + CONVERT(VARCHAR(11),GETDATE())


CAST('1977.01.07‘ AS Datetime)
Описание слайда:
Пример: SELECT ‘сегодня ‘ + CONVERT(VARCHAR(11),GETDATE()) CAST('1977.01.07‘ AS Datetime)

Слайд 25


Создание таблиц БД, слайд №25
Описание слайда:

Слайд 26





Временные таблицы 

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

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

Слайд 27





  В SQL Server существуют два типа временных таблиц: локальные и глобальные. 
  В SQL Server существуют два типа временных таблиц: локальные и глобальные. 
  Локальные временные таблицы доступны лишь для своего владельца. Имена локальных временных таблиц начинаются с префикса #. 
   Глобальные временные таблицы доступны для всех пользователей, их имена должны начинаться с префикса ##.
Описание слайда:
В SQL Server существуют два типа временных таблиц: локальные и глобальные. В SQL Server существуют два типа временных таблиц: локальные и глобальные. Локальные временные таблицы доступны лишь для своего владельца. Имена локальных временных таблиц начинаются с префикса #. Глобальные временные таблицы доступны для всех пользователей, их имена должны начинаться с префикса ##.

Слайд 28





Создание ограничений
Описание слайда:
Создание ограничений

Слайд 29





Декларативные ограничения при создании таблиц

   При создании таблиц могут быть заданы декларативные ограничения целостности атрибутов:
 значения по умолчанию (DEFAULT), 
задание обязательности или необязательности значений (NULL или NOT NULL), 
условия проверки значения (CHECK),
 задание уникальность столбца (UNIQUE) .
Описание слайда:
Декларативные ограничения при создании таблиц При создании таблиц могут быть заданы декларативные ограничения целостности атрибутов: значения по умолчанию (DEFAULT), задание обязательности или необязательности значений (NULL или NOT NULL), условия проверки значения (CHECK), задание уникальность столбца (UNIQUE) .

Слайд 30





  Например, на значение стипендии может быть наложено ограничение (стипендия должна находиться в пределах от 500 до 750 тысяч рублей) по умолчанию значение стипендии равно 500 тыс. руб.
  Например, на значение стипендии может быть наложено ограничение (стипендия должна находиться в пределах от 500 до 750 тысяч рублей) по умолчанию значение стипендии равно 500 тыс. руб.

STIP MONEY DEFAULT 700 CHECK(STIP >=700 AND <=750)
Описание слайда:
Например, на значение стипендии может быть наложено ограничение (стипендия должна находиться в пределах от 500 до 750 тысяч рублей) по умолчанию значение стипендии равно 500 тыс. руб. Например, на значение стипендии может быть наложено ограничение (стипендия должна находиться в пределах от 500 до 750 тысяч рублей) по умолчанию значение стипендии равно 500 тыс. руб. STIP MONEY DEFAULT 700 CHECK(STIP >=700 AND <=750)

Слайд 31





Возраст сотрудника должен быть
Возраст сотрудника должен быть
 не менее 18 лет:

  BIRTH_DAY DATE CHECK(DATEDIFF(YEAR,GETDATE(),BIRTH_DAY)>=18)
Описание слайда:
Возраст сотрудника должен быть Возраст сотрудника должен быть не менее 18 лет: BIRTH_DAY DATE CHECK(DATEDIFF(YEAR,GETDATE(),BIRTH_DAY)>=18)

Слайд 32





При создании ограничений необходимо учитывать следующее:
При создании ограничений необходимо учитывать следующее:
ограничение, определенное для одного поля может ссылаться только на это поле и называется    ограничением на уровне поля;
 
Ограничение может ссылаться на несколько полей и называется ограничением на уровне таблицы.
Описание слайда:
При создании ограничений необходимо учитывать следующее: При создании ограничений необходимо учитывать следующее: ограничение, определенное для одного поля может ссылаться только на это поле и называется ограничением на уровне поля; Ограничение может ссылаться на несколько полей и называется ограничением на уровне таблицы.

Слайд 33


Создание таблиц БД, слайд №33
Описание слайда:

Слайд 34





Пример ограничения на уровне таблицы
Пример ограничения на уровне таблицы

CREATE TABLE  TestTable 
 ( id int DEFAULT 1 NOT NULL, 
   vcName varchar(50) NOT NULL,
   dBirthDate datetime,
   dDocDate datetime,  
  CONSTRAINT CK_birthdate CHECK (dDocDate>dBirthDate AND <=getdate())
Описание слайда:
Пример ограничения на уровне таблицы Пример ограничения на уровне таблицы CREATE TABLE TestTable ( id int DEFAULT 1 NOT NULL, vcName varchar(50) NOT NULL, dBirthDate datetime, dDocDate datetime, CONSTRAINT CK_birthdate CHECK (dDocDate>dBirthDate AND <=getdate())

Слайд 35


Создание таблиц БД, слайд №35
Описание слайда:

Слайд 36





  Часто для  поля или группы полей требуется реализовать ограничение, связанное c уникальностью значений.
  Часто для  поля или группы полей требуется реализовать ограничение, связанное c уникальностью значений.
  В этом случае в ограничение поля (группы) при создании таблицы помещают ключевое слово UNIQUE. Можно определить группу полей как уникальную, например, в таблице USP уникальными должны быть комбинации полей NOM_ZACH и PKOD: 

    UNIQUE (NOM_ZACH,PKOD)
Описание слайда:
Часто для поля или группы полей требуется реализовать ограничение, связанное c уникальностью значений. Часто для поля или группы полей требуется реализовать ограничение, связанное c уникальностью значений. В этом случае в ограничение поля (группы) при создании таблицы помещают ключевое слово UNIQUE. Можно определить группу полей как уникальную, например, в таблице USP уникальными должны быть комбинации полей NOM_ZACH и PKOD: UNIQUE (NOM_ZACH,PKOD)

Слайд 37





   Ограничение PRIMARY KEY действует аналогично UNIQUE, но для таблицы должен быть определен только один первичный ключ, а уникальных полей может быть несколько.
   Ограничение PRIMARY KEY действует аналогично UNIQUE, но для таблицы должен быть определен только один первичный ключ, а уникальных полей может быть несколько.
   Первичный ключ может быть составным (как в таблице USP, где ключ состоит из атрибутов NOM_ZACH и PKOD). 
  Для объявления составного первичного ключа требуется объявление на уровне таблицы.
Описание слайда:
Ограничение PRIMARY KEY действует аналогично UNIQUE, но для таблицы должен быть определен только один первичный ключ, а уникальных полей может быть несколько. Ограничение PRIMARY KEY действует аналогично UNIQUE, но для таблицы должен быть определен только один первичный ключ, а уникальных полей может быть несколько. Первичный ключ может быть составным (как в таблице USP, где ключ состоит из атрибутов NOM_ZACH и PKOD). Для объявления составного первичного ключа требуется объявление на уровне таблицы.

Слайд 38





   PRIMARY KEY(NOM_ZACH, PKOD)
   PRIMARY KEY(NOM_ZACH, PKOD)
Описание слайда:
PRIMARY KEY(NOM_ZACH, PKOD) PRIMARY KEY(NOM_ZACH, PKOD)

Слайд 39





Ссылочная целостность
Описание слайда:
Ссылочная целостность

Слайд 40


Создание таблиц БД, слайд №40
Описание слайда:

Слайд 41


Создание таблиц БД, слайд №41
Описание слайда:

Слайд 42





   Таблица USP  подчинена двум другим таблицам: SUBJECTS и STUDENTS. При этом таблица USP связана с таблицей STUDENTS обязательной связью. 
   Таблица USP  подчинена двум другим таблицам: SUBJECTS и STUDENTS. При этом таблица USP связана с таблицей STUDENTS обязательной связью. 
   Каждому значению атрибута NOM_ZACH в таблице USP обязательно должно соответствовать ровно одно значение этого же атрибута в таблице STUDENTS. 
    В таблице USP не может быть значений атрибута NOM_ZACH, которых нет в таблице STUDENTS. Связь с таблицей SUBJECTS также будет обязательной.
Описание слайда:
Таблица USP подчинена двум другим таблицам: SUBJECTS и STUDENTS. При этом таблица USP связана с таблицей STUDENTS обязательной связью. Таблица USP подчинена двум другим таблицам: SUBJECTS и STUDENTS. При этом таблица USP связана с таблицей STUDENTS обязательной связью. Каждому значению атрибута NOM_ZACH в таблице USP обязательно должно соответствовать ровно одно значение этого же атрибута в таблице STUDENTS. В таблице USP не может быть значений атрибута NOM_ZACH, которых нет в таблице STUDENTS. Связь с таблицей SUBJECTS также будет обязательной.

Слайд 43


Создание таблиц БД, слайд №43
Описание слайда:

Слайд 44





   Ключ FOREIGN KEY ограничивает значения, которые можно ввести в БД так, чтобы заставить внешний и родительский ключи соответствовать принципу ссылочной целостности. 
   Ключ FOREIGN KEY ограничивает значения, которые можно ввести в БД так, чтобы заставить внешний и родительский ключи соответствовать принципу ссылочной целостности. 
Синтаксис ограничения FORIGN KEY:

FOREIGN KEY <список полей> REFERENCES <имя таблицы, содержащей родительский ключ>[список полей родительского ключа].
Описание слайда:
Ключ FOREIGN KEY ограничивает значения, которые можно ввести в БД так, чтобы заставить внешний и родительский ключи соответствовать принципу ссылочной целостности. Ключ FOREIGN KEY ограничивает значения, которые можно ввести в БД так, чтобы заставить внешний и родительский ключи соответствовать принципу ссылочной целостности. Синтаксис ограничения FORIGN KEY: FOREIGN KEY <список полей> REFERENCES <имя таблицы, содержащей родительский ключ>[список полей родительского ключа].

Слайд 45





Создадим таблицу USP с полем NOM_ZACH, и PKOD определенными в качестве внешних ключей:
Создадим таблицу USP с полем NOM_ZACH, и PKOD определенными в качестве внешних ключей:

CREATE TABLE USP 
(NOM_ZACH INTEGER NOT NULL, 
PKOD INTEGER  NOT NULL, 
TNUM INTEGER, 
UDATE DATE , 
MARK INTEGER, 
PRIMARY KEY(NOM_ZACH, PKOD) ,

FOREIGN KEY (NOM_ZACH) REFERENCES  STUDENTS (NOM_ZACH), 

FOREIGN KEY (PKOD) REFERENCES   SUBJECTS (PKOD))
Описание слайда:
Создадим таблицу USP с полем NOM_ZACH, и PKOD определенными в качестве внешних ключей: Создадим таблицу USP с полем NOM_ZACH, и PKOD определенными в качестве внешних ключей: CREATE TABLE USP (NOM_ZACH INTEGER NOT NULL, PKOD INTEGER NOT NULL, TNUM INTEGER, UDATE DATE , MARK INTEGER, PRIMARY KEY(NOM_ZACH, PKOD) , FOREIGN KEY (NOM_ZACH) REFERENCES STUDENTS (NOM_ZACH), FOREIGN KEY (PKOD) REFERENCES SUBJECTS (PKOD))

Слайд 46





     Используя ограничения FOREIGN KEY, можно не указывать список полей родительского ключа, если родительский ключ имеет ограничение PRIMARY KEY.
     Используя ограничения FOREIGN KEY, можно не указывать список полей родительского ключа, если родительский ключ имеет ограничение PRIMARY KEY.
    
CREATE TABLE USP 
(NOM_ZACH INTEGER NOT NULL FOREIGN KEY REFERENCES STUDENTS, 
PKOD INTEGER NOT NULL FOREIGN KEY REFERENCES SUBJECT, 
TNUM INTEGER, 
UDATE DATE , 
MARK INTEGER, 
PRIMARY KEY (NOM_ZACH,PKOD)); 
    В случае употребления ключей   со многими полями, обязательно выполнение условия, чтобы порядок полей во внешних и первичных ключах совпадал.
Описание слайда:
Используя ограничения FOREIGN KEY, можно не указывать список полей родительского ключа, если родительский ключ имеет ограничение PRIMARY KEY. Используя ограничения FOREIGN KEY, можно не указывать список полей родительского ключа, если родительский ключ имеет ограничение PRIMARY KEY. CREATE TABLE USP (NOM_ZACH INTEGER NOT NULL FOREIGN KEY REFERENCES STUDENTS, PKOD INTEGER NOT NULL FOREIGN KEY REFERENCES SUBJECT, TNUM INTEGER, UDATE DATE , MARK INTEGER, PRIMARY KEY (NOM_ZACH,PKOD)); В случае употребления ключей со многими полями, обязательно выполнение условия, чтобы порядок полей во внешних и первичных ключах совпадал.

Слайд 47





   В соответствии со стандартом, изменение или удаление значений родительского ключа не допускается. 
   В соответствии со стандартом, изменение или удаление значений родительского ключа не допускается. 
    Это означает, что нельзя удалить данные о студенте из таблицы STUDENTS до тех пор, пока в таблице USP для него имеется какая-нибудь информация. Однако довольно часто возникают ситуации, когда необходимо удалить информацию о студенте, например, в случае его отчисления.
   В таких случаях рассматривается возможность каскадирования или ограничения действий.
Описание слайда:
В соответствии со стандартом, изменение или удаление значений родительского ключа не допускается. В соответствии со стандартом, изменение или удаление значений родительского ключа не допускается. Это означает, что нельзя удалить данные о студенте из таблицы STUDENTS до тех пор, пока в таблице USP для него имеется какая-нибудь информация. Однако довольно часто возникают ситуации, когда необходимо удалить информацию о студенте, например, в случае его отчисления. В таких случаях рассматривается возможность каскадирования или ограничения действий.

Слайд 48


Создание таблиц БД, слайд №48
Описание слайда:

Слайд 49





   При необходимости изменить или удалить текущее ссылочное значение родительского ключа существует следующие возможности: 
   При необходимости изменить или удалить текущее ссылочное значение родительского ключа существует следующие возможности: 
1. Запретить изменения (по умолчанию).
2. Сделав изменения в родительском ключе, произвести изменения во внешнем ключе автоматически (каскадное изменение).
3. Сделать изменение в родительском ключе и установить внешний ключ в NULL значение либо присвоить ему значение по умолчанию.
   В пределах этих возможностей выполняются все команды модификации.
Описание слайда:
При необходимости изменить или удалить текущее ссылочное значение родительского ключа существует следующие возможности: При необходимости изменить или удалить текущее ссылочное значение родительского ключа существует следующие возможности: 1. Запретить изменения (по умолчанию). 2. Сделав изменения в родительском ключе, произвести изменения во внешнем ключе автоматически (каскадное изменение). 3. Сделать изменение в родительском ключе и установить внешний ключ в NULL значение либо присвоить ему значение по умолчанию. В пределах этих возможностей выполняются все команды модификации.

Слайд 50





Итак, изменения в родительском ключе можно разделить на
Итак, изменения в родительском ключе можно разделить на
 ограниченные (NO ACTION),
 каскадируемые (CASCADE), 
пустые (SET NULL) ,
устанавливающие значения по умолчанию (SET DEFAULT).
Описание слайда:
Итак, изменения в родительском ключе можно разделить на Итак, изменения в родительском ключе можно разделить на ограниченные (NO ACTION), каскадируемые (CASCADE), пустые (SET NULL) , устанавливающие значения по умолчанию (SET DEFAULT).

Слайд 51





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

Слайд 52





CREATE TABLE USP 
CREATE TABLE USP 
(NOM_ZACH INTEGER NOT NULL, 
PKOD INTEGER, 
TNUM INTEGER, 
UDATE DATE , 
MARK INTEGER, 
PRIMARY KEY(NOM_ZACH, PKOD) 
FOREIGN KEY (PKOD) REFERENCES SUBJECTS
FOREIGN KEY (NOM_ZACH) REFERENCES STUDENTS  ON UPDATE CASCADE)
Описание слайда:
CREATE TABLE USP CREATE TABLE USP (NOM_ZACH INTEGER NOT NULL, PKOD INTEGER, TNUM INTEGER, UDATE DATE , MARK INTEGER, PRIMARY KEY(NOM_ZACH, PKOD) FOREIGN KEY (PKOD) REFERENCES SUBJECTS FOREIGN KEY (NOM_ZACH) REFERENCES STUDENTS ON UPDATE CASCADE)

Слайд 53





   Если данные о студенте удаляются, удаление их должно быть выполнено сначала в подчинённой (USP), а затем в главной таблице (STUDENTS).
   Если данные о студенте удаляются, удаление их должно быть выполнено сначала в подчинённой (USP), а затем в главной таблице (STUDENTS).
 В этом случае используется ограничение 

  ON DELETE NO ACTION
  После этого при удалении данных о студенте из таблицы STUDENT команда не будет выполнена до тех пор, пока не будут удалены его данные из таблицы USP.
Описание слайда:
Если данные о студенте удаляются, удаление их должно быть выполнено сначала в подчинённой (USP), а затем в главной таблице (STUDENTS). Если данные о студенте удаляются, удаление их должно быть выполнено сначала в подчинённой (USP), а затем в главной таблице (STUDENTS). В этом случае используется ограничение ON DELETE NO ACTION После этого при удалении данных о студенте из таблицы STUDENT команда не будет выполнена до тех пор, пока не будут удалены его данные из таблицы USP.

Слайд 54


Создание таблиц БД, слайд №54
Описание слайда:

Слайд 55





Изменение таблиц
При необходимости в уже созданную таблицу можно внести изменения, например, добавить столбец.
ALTER TABLE STUDENTS ADD S_TEL VARCHAR (20) NOT NULL
Описание слайда:
Изменение таблиц При необходимости в уже созданную таблицу можно внести изменения, например, добавить столбец. ALTER TABLE STUDENTS ADD S_TEL VARCHAR (20) NOT NULL

Слайд 56





   Новое поле станет последним по порядку в таблице. Допускается добавление сразу нескольких полей. Они должны быть отделены друг от друга запятыми. 
   Новое поле станет последним по порядку в таблице. Допускается добавление сразу нескольких полей. Они должны быть отделены друг от друга запятыми. 
   Предполагается, что столбец может содержать неопределенные значения, если в объявлении не указано обратное. Если новый столбец не допускает неопределенных значений, необходимо определить для него значение по умолчанию.
    Новые столбцы могут представлять собой вычисляемые выражения и объявляться с ограничениями уровня столбцов.
Описание слайда:
Новое поле станет последним по порядку в таблице. Допускается добавление сразу нескольких полей. Они должны быть отделены друг от друга запятыми. Новое поле станет последним по порядку в таблице. Допускается добавление сразу нескольких полей. Они должны быть отделены друг от друга запятыми. Предполагается, что столбец может содержать неопределенные значения, если в объявлении не указано обратное. Если новый столбец не допускает неопределенных значений, необходимо определить для него значение по умолчанию. Новые столбцы могут представлять собой вычисляемые выражения и объявляться с ограничениями уровня столбцов.

Слайд 57





  В таблицу могут быть добавлены и новые ограничения с помощью команды
  В таблицу могут быть добавлены и новые ограничения с помощью команды
    ADD CONSTRAINT <имя ограничения>. 
   Имя ограничения состоит из краткого названия типа ограничения (например, PK для первичного ключа, ID для индекса), символа подчёркивания, имени поля или таблицы и порядкового номера ограничения данного типа, если к одному объекту задаётся несколько ограничений одного типа.
Описание слайда:
В таблицу могут быть добавлены и новые ограничения с помощью команды В таблицу могут быть добавлены и новые ограничения с помощью команды ADD CONSTRAINT <имя ограничения>. Имя ограничения состоит из краткого названия типа ограничения (например, PK для первичного ключа, ID для индекса), символа подчёркивания, имени поля или таблицы и порядкового номера ограничения данного типа, если к одному объекту задаётся несколько ограничений одного типа.

Слайд 58






Примеры:
1.  Для добавления ограничения, задающего значение по умолчанию: 

ALTER TABLE USP 
ADD CONSTRAINT Def_Mark DEFAULT 7  FOR MARK


2.  Для добавления ограничения проверки значения:

ALTER TABLE USP 
ADD CONSTRAINT Сh_Mark CHECK MARK IN (3,4,5)


3. Для добавления внешнего ключа (NOM_ZACH) в таблицу USP для связи с таблицей STUDENTS

ALTER   TABLE USP
ADD CONSTRAINT  FK_USP_STUDENTS  FOREIGN KEY (NOM_ZACH) REFERENCES   STUDENTS         ON UPDATE CASCADE
Описание слайда:
Примеры: 1. Для добавления ограничения, задающего значение по умолчанию: ALTER TABLE USP ADD CONSTRAINT Def_Mark DEFAULT 7 FOR MARK 2. Для добавления ограничения проверки значения: ALTER TABLE USP ADD CONSTRAINT Сh_Mark CHECK MARK IN (3,4,5) 3. Для добавления внешнего ключа (NOM_ZACH) в таблицу USP для связи с таблицей STUDENTS ALTER TABLE USP ADD CONSTRAINT FK_USP_STUDENTS FOREIGN KEY (NOM_ZACH) REFERENCES STUDENTS ON UPDATE CASCADE

Слайд 59





  Для получения информации об  ограничениях используется системная 
  Для получения информации об  ограничениях используется системная 
 процедура 
sp_helpconstraint  имя_таблицы

или sp_help имя ограничения.
Описание слайда:
Для получения информации об ограничениях используется системная Для получения информации об ограничениях используется системная процедура sp_helpconstraint имя_таблицы или sp_help имя ограничения.

Слайд 60





Удаление столбцов и ограничений
     Из созданной таблицы можно удалить столбцы или ограничения. При удалении ограничений следует помнить, что выполнению команды могут помешать некоторые зависимости.
    Например, если столбец является первичным ключом, сервер не позволит удалить его до тех пор, пока не будет снято соответствующее ограничение. Если в другой таблице существует ссылка на столбец, сервер также не позволит удалить его до снятия ограничения.
    Примеры:
    ALTER TABLE USP
DROP CONSTRAINT   Ch_Mark

ALTER TABLE USP
DROP COLUMN   Udate
Описание слайда:
Удаление столбцов и ограничений Из созданной таблицы можно удалить столбцы или ограничения. При удалении ограничений следует помнить, что выполнению команды могут помешать некоторые зависимости. Например, если столбец является первичным ключом, сервер не позволит удалить его до тех пор, пока не будет снято соответствующее ограничение. Если в другой таблице существует ссылка на столбец, сервер также не позволит удалить его до снятия ограничения. Примеры: ALTER TABLE USP DROP CONSTRAINT Ch_Mark ALTER TABLE USP DROP COLUMN Udate

Слайд 61





Разрешение и запрет ограничений
   С помощью команды ALTER TABLE с предложениями ENABLE и DISABLE можно разрешать и запрещать действия ограничений, не удаляя их.

  ALTER TABLE таблица
  ENABLE | DISABLE CONSTRAINT имя ограничения
Описание слайда:
Разрешение и запрет ограничений С помощью команды ALTER TABLE с предложениями ENABLE и DISABLE можно разрешать и запрещать действия ограничений, не удаляя их. ALTER TABLE таблица ENABLE | DISABLE CONSTRAINT имя ограничения

Слайд 62





Модификация столбцов
    Иногда при создании таблиц делают неверные предположения относительно типа данных, которые собираются хранить в таблице. Неверный выбор приводит к неэффективному хранению данных или же данные могут оказаться слишком большими и не помещаться в столбцах. В таких ситуациях следует изменить исходное определение столбцов командой ALTER COLUMN.

    Пример: 
     ALTER TABLE PREP
  ALTER COLUMN FIO varchar(50)
Описание слайда:
Модификация столбцов Иногда при создании таблиц делают неверные предположения относительно типа данных, которые собираются хранить в таблице. Неверный выбор приводит к неэффективному хранению данных или же данные могут оказаться слишком большими и не помещаться в столбцах. В таких ситуациях следует изменить исходное определение столбцов командой ALTER COLUMN. Пример: ALTER TABLE PREP ALTER COLUMN FIO varchar(50)

Слайд 63





Удаление таблиц
    Удаление таблиц выполняется с помощью команды DROP TABLE. 
   Для того чтобы иметь возможность удалить таблицу, пользователь должен быть ее владельцем. 
    Кроме того, перед удалением SQL требует очистки таблицы от данных. 
    Таким образом, таблица с находящимися в ней данными не может быть удалена. Перед удалением следует убедиться, что на таблицу не ссылается никакая другая таблица, и что она не используется в каком-либо представлении. 
   Синтаксис команды удаления:

    DROP TABLE <имя таблицы>
Описание слайда:
Удаление таблиц Удаление таблиц выполняется с помощью команды DROP TABLE. Для того чтобы иметь возможность удалить таблицу, пользователь должен быть ее владельцем. Кроме того, перед удалением SQL требует очистки таблицы от данных. Таким образом, таблица с находящимися в ней данными не может быть удалена. Перед удалением следует убедиться, что на таблицу не ссылается никакая другая таблица, и что она не используется в каком-либо представлении. Синтаксис команды удаления: DROP TABLE <имя таблицы>

Слайд 64





Создание индексов
    Индекс - упорядоченный список полей или групп полей в таблице. 
   Таблицы могут иметь огромное количество записей, при этом записи не находятся в каком-либо определённом порядке, поэтому на их поиск по указанному критерию может потребоваться достаточно продолжительное время.
Описание слайда:
Создание индексов Индекс - упорядоченный список полей или групп полей в таблице. Таблицы могут иметь огромное количество записей, при этом записи не находятся в каком-либо определённом порядке, поэтому на их поиск по указанному критерию может потребоваться достаточно продолжительное время.

Слайд 65





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

Индексы могут состоять из нескольких полей, при этом первое поле является как бы главным, второе упорядочивается внутри первого, третье внутри второго и т.д.
Описание слайда:
Когда создаётся индекс для поля, база данных запоминает порядок всех значений этого поля в специальной области памяти. Когда создаётся индекс для поля, база данных запоминает порядок всех значений этого поля в специальной области памяти. При этом каждое значение поля в индексе содержит ссылку на физическое расположение записи в самой таблице данных. Индексы могут состоять из нескольких полей, при этом первое поле является как бы главным, второе упорядочивается внутри первого, третье внутри второго и т.д.

Слайд 66


Создание таблиц БД, слайд №66
Описание слайда:

Слайд 67





    С помощью индексов осуществляется доступ к данным наиболее оптимальным способом. 

    С помощью индексов осуществляется доступ к данным наиболее оптимальным способом. 

    В индексы следует включать поля, к которым часто выполняются запросы при выполнении операций выборки. К ним относятся внешние ключи, а также другие поля, часто используемые для соединения таблиц.
Описание слайда:
С помощью индексов осуществляется доступ к данным наиболее оптимальным способом. С помощью индексов осуществляется доступ к данным наиболее оптимальным способом. В индексы следует включать поля, к которым часто выполняются запросы при выполнении операций выборки. К ним относятся внешние ключи, а также другие поля, часто используемые для соединения таблиц.

Слайд 68


Создание таблиц БД, слайд №68
Описание слайда:

Слайд 69





   Таблица, для которой создаётся индекс, должна уже существовать и содержать имена индексируемых полей. При этом имя индекса не может быть использовано для чего-либо другого в базе данных и SQL сам решает, когда он необходим для работы и использует его автоматически. 
   Таблица, для которой создаётся индекс, должна уже существовать и содержать имена индексируемых полей. При этом имя индекса не может быть использовано для чего-либо другого в базе данных и SQL сам решает, когда он необходим для работы и использует его автоматически.
Описание слайда:
Таблица, для которой создаётся индекс, должна уже существовать и содержать имена индексируемых полей. При этом имя индекса не может быть использовано для чего-либо другого в базе данных и SQL сам решает, когда он необходим для работы и использует его автоматически. Таблица, для которой создаётся индекс, должна уже существовать и содержать имена индексируемых полей. При этом имя индекса не может быть использовано для чего-либо другого в базе данных и SQL сам решает, когда он необходим для работы и использует его автоматически.

Слайд 70





   Для создания уникальных (не содержащих повторяющихся значений) индексов используется ключевое слово UNIQUE в операторе CREATE INDEX (CREATE UNIQUE INDEX …). 
   Для создания уникальных (не содержащих повторяющихся значений) индексов используется ключевое слово UNIQUE в операторе CREATE INDEX (CREATE UNIQUE INDEX …). 
  Например, создать индекс c именем Ind_Tnum для поля TNUM таблицы SUBJECT: 

 CREATE UNIQUE INDEX  Ind_Tnum ON SUBJECT(TNUM)
Описание слайда:
Для создания уникальных (не содержащих повторяющихся значений) индексов используется ключевое слово UNIQUE в операторе CREATE INDEX (CREATE UNIQUE INDEX …). Для создания уникальных (не содержащих повторяющихся значений) индексов используется ключевое слово UNIQUE в операторе CREATE INDEX (CREATE UNIQUE INDEX …). Например, создать индекс c именем Ind_Tnum для поля TNUM таблицы SUBJECT: CREATE UNIQUE INDEX Ind_Tnum ON SUBJECT(TNUM)

Слайд 71





Для удаления индекса используется команда
Для удаления индекса используется команда
DROP INDEX имя индекса

 Чтобы изменить индекс таблицы, необходимо удалить его и затем создать заново в соответствии с новым определением.

Для получения информации о текущих индексах таблицы используется процедура sp_helpindex.
Описание слайда:
Для удаления индекса используется команда Для удаления индекса используется команда DROP INDEX имя индекса Чтобы изменить индекс таблицы, необходимо удалить его и затем создать заново в соответствии с новым определением. Для получения информации о текущих индексах таблицы используется процедура sp_helpindex.

Слайд 72





Кластеризованный индекс
     Использование опции Clustered index позволяет произвести так называемое кластерное индексирование, в результате чего будут отсортированы данные в самой таблице согласно порядку этого индекса, и вся добавляемая информация будет приводить к изменению физического порядка данных. При этом нужно учитывать, что в таблице может быть определён только один кластерный индекс. 

    Синтаксис: 
CREATE CLUSTERED INDEX
Описание слайда:
Кластеризованный индекс Использование опции Clustered index позволяет произвести так называемое кластерное индексирование, в результате чего будут отсортированы данные в самой таблице согласно порядку этого индекса, и вся добавляемая информация будет приводить к изменению физического порядка данных. При этом нужно учитывать, что в таблице может быть определён только один кластерный индекс. Синтаксис: CREATE CLUSTERED INDEX

Слайд 73






Для повышения быстродействия кластерный индекс следует создавать раньше некластерных индексов. 

По умолчанию создается некластерный индекс.
Описание слайда:
Для повышения быстродействия кластерный индекс следует создавать раньше некластерных индексов. По умолчанию создается некластерный индекс.



Похожие презентации
Mypresentation.ru
Загрузить презентацию