Компьютер-Информ || Архив || Рубрики || Поиск || Подписка || Работа || О "КИ" || Карта


Microsoft Special Interest Group "Neva"

Microsoft SQL Server 2000:
новые возможности для разработчика приложений


Наталия Новакова


В предыдущей статье Microsoft SQL Server 2000: новые возможности для администраторов баз данных освещались преимущества, которые предоставляет СУБД Microsoft SQL Server 2000 специалистам, разрабатывающим информационные системы на ее базе. В следующих статьях эти новшества будут рассмотрены более детально.

Среди новых возможностей Microsoft SQL Server 2000, прежде всего, хочется выделить следующие: появление новых типов данных, создание пользовательских функций, индексирование представлений и вычисляемых столбцов, новые типы триггеров, каскадные изменения данных в зависимой таблице. Рассмотрим кратко каждую из этих возможностей.

Microsoft SQL Server 7.0 позволяет работать с достаточно широким спектром типов данных: целочисленных и вещественных, символьных и текстовых, денежных и двоичных, даты и времени, специальных. Однако нашлось что добавить в Microsoft SQL Server 2000 появился новый тип данных bigint, предназначенный для размещения целочисленных данных в 8 байтах. Таким образом, пользователи могут хранить данные в диапазоне от -263 (-9223372036854775808) до 263 1 (9223372036854775807).

Проверить это достаточно легко с помощью следующего несложного примера:
declare @b1 as bigint, @b2 as bigint
set @b1 = power(cast(-2 as bigint), 63)
set @b2 = -(@b1 + 1)
select @b1 as Нижняя граница bigint,
@b2 as Верхняя граница bigint

Наряду с такими специальными типами данных, как timestamp и uniqueidentifier, которые применялись в предшествующей версии, соответственно, для того, чтобы отследить последовательность изменения строк в таблицах в пределах БД и обеспечить уникальность данных в одном из типов репликации (merge replication), появились типы данных table и sql_variant.

Тип данных table используется только для переменных и позволяет хранить в них сложные наборы данных. Переменная типа table похожа на временную таблицу. Табличная переменная может использоваться в качестве параметра функции или хранимой процедуры. Что касается остальных манипуляций с переменными типа table, то они очень похожи на действия, выполняемые с обычными таблицами. Оператор объявления переменной типа table начинается, как и при объявлении переменных других типов с ключевого слова DECLARE, а объявление полей аналогично командам CREATE и ALTER при создании и модификации таблицы:

declare @tb table
(GID bigint identity (1000,1),
lname nvarchar(30)NOT NULL,
flname nvarchar(30)NOT NULL,
sname nvarchar(30)NOT NULL,
phone char(13) NULL)

На поля могут накладываться ограничения PRIMARY KEY, UNIQUE и NULL/ NOT NULL. Однако дополнительно нельзя назначать никакие индексы, кроме тех, которые автоматически создаются при использовании ограничений PRIMARY KEY и UNIQUE.

Объявленная с помощью табличного типа переменная может обрабатываться точно так же, как и таблица с помощью команд SELECT, INSERT, DELETE и UPDATE:
insert into @tb values (Novakova, Natalie, E, (812)274-1489)
select * from @tb

В этой ситуации нельзя применять операции массового копирования SELECT INTO и INSERT EXEC, что приводит к необходимости последовательного заполнения таблицы записями.
Поля таблицы не могут сами быть типа TABLE, а значит, вложенные таблицы неприменимы. Табличные переменные нельзя применять в операторах DDL: DROP TABLE, ALTER TABLE, TRUNCATE TABLE.
Тип данных sql_variant дает возможность хранить значения любых других скалярных типов данных за исключением text, ntext, image и timestamp.

declare @y as sql_variant, @z as sql_variant
select @y = 2, @z =3
select cast(@y as int)* cast (@z as int)

Этот тип данных может применяться как для локальных переменных, так и для столбцов таблиц. Кроме целочисленных данных, в столбце типа sql_variant можно хранить строковые величины и значения с датой и временем.

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

Авторизованные учебные центры Mirosoft предлагают курсы официальной программы Mirosoft, которые нацелены как на подготовку специалистов-новичков, так и на ускоренное освоение опытными разработчиками особенностей новых инструментов.

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

Работа с Microsoft SQL Server 2000 с помощью запросов Transact-SQL

Двухдневный курс 2071 представляет собой введение в формирование запросов к БД SQL-сервера на языке программирования Transact-SQL.

Рассматриваются следующие темы:

Администрирование БД Microsoft SQL Server 2000

Пятидневный курс 2072 дает знания и необходимые навыки для инсталляции, конфигурирования и поддержки БД Microsoft SQL Server. (Курс 2071 является необходимым условием для понимания курса 2072.)

Темы:

Программирование БД Microsoft SQL Server 2000

Пятидневный курс 2073 дает знания и навыки, необходимые для программирования и создания решений на основе баз данных с использованием SQL Server 2000. (Знакомство с курсом 2071 необходимо для освоения курса 2073.)

Темы:


       КОМПЬЮТЕР-ИНФОРМ 
          Главная страница || Статьи 4'2001 || Новости СПб || Новости России || Новости мира

Рубрики || Работа || Услуги || Поиск || Архив || Дни рождения
О "КИ" || График выхода || Карта сайта || Подписка

Рассылка анонсов газеты по электронной почте

Главная страница

Сайт газеты "Компьютер-Информ" является зарегистрированным электронным СМИ.
Свидетельство Эл 77-4461 от 2 апреля 2001 г.
Перепечатка материалов без письменного согласия редакции запрещена.
При использовании материалов газеты в Интернет гиперссылка обязательна.

Телефон редакции (812) 718-6666, 718-6555.
Адрес: 196084, СПб, ул.Заставская, д.23, БЦ "Авиатор", 3-й этаж, офис 307
e-mail: editor@ci.ru
Для пресс-релизов и новостей news@ci.ru