Создание пользовательского табличного типа данных диалоговыми средствами Management Studio — КиберПедия 

История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...

Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...

Создание пользовательского табличного типа данных диалоговыми средствами Management Studio

2019-11-19 168
Создание пользовательского табличного типа данных диалоговыми средствами Management Studio 0.00 из 5.00 0 оценок
Заказать работу

Рассчитывая на то, что можно создать диалоговыми средствами Management Studio и пользовательский табличный тип данных, мы в окне Обозревателя объектов раскрываем список баз данных, раскрываем базу данных BestDatabase, раскрываем папку Программирование, раскрываем Типы, щелкаем правой кнопкой мыши по строке Определяемые пользователем табличные типы и выбираем в контекстном меню Создать определяемый пользователем тип таблицы. Однако вместо того чтобы увидеть диалоговое окно, позволяющее задать характеристики этого типа данных, мы получаем сценарий, который содержит описание синтаксиса оператора CREATE TYPE:

 

-- ================================

-- Create User-defined Table Type

-- ================================

USE <database_name,sysname,AdventureWorks>

GO

-- Create the data type

CREATE TYPE <schema_name,sysname,dbo>.<type_name,sysname,TVP> AS TABLE

(

<columns_in_primary_key,, c1> <column1_datatype,, int>

<column1_nullability,, NOT NULL>,

<column2_name, sysname, c2> <column2_datatype,, char(10)>

<column2_nullability,, NULL>,

<column3_name, sysname, c3> <column3_datatype,, datetime>

<column3_nullability,, NULL>,

PRIMARY KEY (<columns_in_primary_key,, c1>)

)

GO

 

Так что для этих целей лучше использовать ваши глубокие познания в области языка Transact-SQL и конкретно оператора CREATE TYPE.

 

Удаление пользовательского типа данных

Для удаления пользовательского типа данных из базы в языке Transact-SQL ис­пользуется оператор DROP TYPE. Его синтаксис показан в листинге 4.52 и на рис. 4.25.

 

Листинг 4.52. Синтаксис оператора Drop Type

DROP TYPE [<имя схемы>.]<имя типа данных>;

 

Рис. 4.25. Синтаксис оператора DROP TYPE

 

Тип данных можно удалить только в том случае, если он не используется в других объектах (локальных переменных, столбцах таблиц, параметрах хранимых процедур) базы данных. Или в иной терминологии: если от него не зависят другие объ­екты базы данных.

Например, попробуйте оператором drop type удалить псевдоним d_char30. Вы получите сообщение, что удалить его невозможно, поскольку на него ссылаются другие объекты. В данном случае это созданный нами табличный тип данных.

Более подробные сведения можно получить при попытке удаления этого псевдонима из среды Management Studio. Щелкните в окне Обозреватель объектов правой кнопкой по имени псевдонима и в контекстном меню выберите команду Удалить. Появится окно удаления объекта (рис. 4.26).

Рис. 4.26. Окно удаления объекта

 

Если здесь щелкнуть по кнопке OK, то в следующих диалоговых окнах вы сможете увидеть, по какой причине удаление невозможно. Чтобы получить подробную ин­формацию о зависимостях этого псевдонима, нужно в окне Удаление объекта щелкнуть мышью по кнопке Показать зависимости.

Появится окно со списком объектов, зависящих от данного псевдонима (рис. 4.27). Здесь видно, что от псевдонима зависит объект базы данных refpeople.

Рис. 4.27. Объекты, зависящие от псевдонима

 

В этом же окне можно увидеть и список объектов, от которых зависит наш объект. Для этого в верхней части окна нужно установить переключатель Объекты, от которых зависит [ D _ CHAR 30].

Чтобы удалить пользовательский тип данных (да и любой другой объект базы дан­ных), нужно устранить все его зависимости. Для этого следует либо удалить те объекты базы данных, которые его используют, либо в этих объектах устранить ссылки на удаляемый объект. Например, если какая-либо таблица содержит стол­бец, ссылающийся на удаляемый псевдоним, то нужно либо удалить этот столбец, либо заменить эту ссылку, установив для столбца системный тип данных.

 

Удаление таблиц

Удалить существующую в базе данных таблицу можно при выполнении оператора Transact-SQL Drop Table или же при использовании диалоговых средств в программе Management Studio.

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

Для выполнения всех последующих действий с базой данных в этой главе пересоздайте и заполните данными базу данных BestDatabase, используя четыре сценария из электронного архива, прилагаемого к данной книге (см. приложение 6).

 


Поделиться с друзьями:

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

Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...

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



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.007 с.