Главная Обратная связь

Дисциплины:






CREATE TABLE HumanResources.EmployeePayHistoryEncrypted



(EmployeeID nvarchar(100),

RateChangeDate nvarchar(100),

Rate nvarchar(100),

PayFrequency nvarchar(100),

ModifiedDate nvarchar(100))

GO

-- Открываем симметричный ключ

OPEN SYMMETRIC KEY PayKey DECRYPTION By PASSWORD = 'P@ssw0rd';

-- Вставляем данные в таблицу при помощи INSERT INTO

INSERT INTO AdventureWorks.HumanResources.EmployeePayHistoryEncrypted

(EmployeeID,RateChangeDate,Rate,PayFrequency,ModifiedDate)

SELECT

EncryptByKey(Key_GUID('PayKey'), CONVERT(nvarchar(100), EmployeeID)),

EncryptByKey(Key_GUID('PayKey'), CONVERT(nvarchar(100), RateChangeDate)),

EncryptByKey(Key_GUID('PayKey'), CONVERT(nvarchar(100), Rate)),

EncryptByKey(Key_GUID('PayKey'), CONVERT(nvarchar(100), PayFrequency)),

EncryptByKey(Key_GUID('PayKey'), CONVERT(nvarchar(100), ModifiedDate))

FROM AdventureWorks.HumanResources.EmployeePayHistory

К пункту 3 — запрос к зашифрованным данным:

Запрос, возвращающий данные из зашифрованной таблицы EmployeePayHistory, может выглядеть так:

OPEN SYMMETRIC KEY PayKey DECRYPTION By PASSWORD = 'P@ssw0rd';

SELECT

Convert (Nvarchar(100), DecryptByKey(EmployeeID)) As EmployeeID,

Convert (Nvarchar(100), DecryptByKey(RateChangeDate)) As RateChangeDate,

Convert (Nvarchar(100), DecryptByKey(Rate)) As Rate,

Convert (Nvarchar(100), DecryptByKey(PayFrequency)) As PayFrequency,

Convert (Nvarchar(100), DecryptByKey(ModifiedDate)) As ModifiedDate

FROM [AdventureWorks].[HumanResources].[EmployeePayHistoryEncrypted]

Примечание

В реальной жизни, вам, возможно, потребовалось бы произвести дополнительные преобразования, чтобы вернуть информацию в виде значений с типами данных int, money и т.п. В этом примере для простоты мы возвращаем все данные как nvarchar(100).

Задание для самостоятельной работы 5.1 Резервное копирование и восстановление базы данных

Задание:

64. Переведите базу данных AdventureWorks в режим восстановления Full.

65. Создайте на диске C: каталог Backup и произведите в него полное резервное копирование базы данных AdventureWorks. Файл резервной копии должен называться AdventureWorksFull.bkp.

66. Проведите разностное резервное копирование базы данных AdventureWorks. Файл резервной копии должен называться C:\Backup\AdventureWorksDiff.bkp.

67. Проведите резервное копирование журнала транзакций базы данных AdventureWorks. Файл резервной копии должен называться C:\Backup\AdventureWorksLog.bkp.

68. Произведите последовательное восстановление всех созданных вами резервных копий. При этом:



восстановление должно производиться для новой базы данных AdventureWorks1.bkp

файлы этой базы данных должны находиться в корневом каталоге диска C:\.

Решение:

Примечание

В данном решении используются только команды Transact-SQ. Однако те же действия можно выполнить и средствами графического интерфейса SQL Server Management Studio.

К пункту 1 — перевод базы данных AdventureWorks в режим восстановления Full:

Соответствующая команда может выглядеть так:





sdamzavas.net - 2020 год. Все права принадлежат их авторам! В случае нарушение авторского права, обращайтесь по форме обратной связи...