Главная    Почта    Новости    Каталог    Одноклассники    Погода    Работа    Игры     Рефераты     Карты
  
по Казнету new!
по каталогу
в рефератах

SQL Server 2000

ot;char(n)"    "nchar(n)" '     text
     Datetime     Ntext      tinyint
     Decimal      Numeric    uniqueidentifier
     "decimal[(p[,s])]"     "numeric[(p[,s])]"     "varbinary(n)"
     Float  "nvarchar(n)"    "varchar(n)"
     "float(n)"   Real
     Кавычки необходимы, когда помимо самого типа данных требуется указание
     дополнительных параметров. Аргумент п идентифицирует длину системного
     типа данных в пользовательском типе данных, аргумент р — максимальное
     суммарное (до и после десятичной точки) количество цифр для числовых
     типов данных в пользовательском типе данных, аргумент s — максимальное
     количество десятичных цифр после запятой в пользовательском типе
     данных.


   Нельзя создать пользовательский тип данных на основе системного типа
   timestamp.

   О "null _type". Значение этого аргумента определяет, будет ли
     пользовательский тип данных хранить значения NULL Аргумент null_type
     имеет тип varchar(S) и может принимать одно из трех следующих значений:
     NULL (разрешается хранение NULL), NOT NULL (хранение NULL запрещается)
     или NONULL (используется значение по умолчанию). Если аргумент
     null_type не указывается, то при создании пользовательского типа
     используется значение по умолчанию, установленное для базы данных с
     помощью системной хранимой процедуры sp_dboption. Текущее значение,
     установленное в базе данных, можно получить с помощью функции
     GETANSINULL

   Значение аргумента null_type требуется для пользовательского типа данных
   только как значение по умолчанию при создании столбца таблицы. Если при
   создании столбца явно определено свойство NULL или NOT NULL, то значение
   аргумента null_type игнорируется.
О "owner_name". Определяет владельца или создателя нового типа данных. По
  умолчанию владельцем нового типа данных считается текущий пользователь.
  Параметр owner_name имеет тип данных sysname.
  Например, при создании пользовательских типов данных для описания номеров
факса и телефона можно использовать следующий код: ЕХЕС sp_addtype
telephone,  "varchar(24)",  "NOT NULL" EXEC sp_addtype fax,  "varchar(24)",
 "NULL"
  Хранимая процедура sp_addtype добавляет описание типа в системную таблицу
  systypes текущей базы данных. В принципе, если посмотреть на эту таблицу,
  то можно заметить, что в ней также перечислены встроенные типы данных. То
  есть и типы данных, выглядящие встроенными, на уровне конкретной базы
  данных являются пользовательскими, но имеющими те же свойства и имена,
  что и встроенные. Например, выберем из таблицы systypes базы данных pubs
  список доступных типов данных:
SELECT name FROM systypes
  Будет возвращен следующий результат:
name

image
text
uniqueidentifier
tinyint
smallint
int
smalldatetime
real
money
datetime
float
sql_variant
ntext
bit
decimal
numeric
small money
bigint
varbinary
varchar
binary
char
timestamp
nvarchar
nchar
sysname
id
tid
empid

(29 row(s) affected)
   Как видно, в одной таблице перечислены и встроенные, и пользовательские
типы данных (i d, ti d и emi d).
Управление правилами

  Правила (rules) являются одним из средств обеспечения целостности данных,
  хранящихся в базе. Правила оставлены для обеспечения обратной
  совместимости с предыдущими версиями SQL Server. В новой версии они
  заменены ограничениями целостности CHECK, которые являются более мощным
  средством и определяются при создании таблицы. Правила же создаются как
  отдельные объекты, которые впоследствии связываются с конкретными полями
  таблиц. В этом разделе будут рассмотрены правила как самостоятельные
  объекты базы данных.
    Для столбца таблицы можно определить только одно правило, но несколько
  ограничений целостности CHECK. Если для одного столбца определены
  ограничения целостности и правило, то будут учитываться как ограничения
  целостности, так и правило.

    Создание правила не может выполняться в одном пакете с другими
  командами Transact-SQL.

    Для создания правила используется следующая команда Transact-SQL:
  CREATE RULE rule AS condition_expression
    Рассмотрим аргументы команды. О rule— имя правила. При выборе имени
  необходимо придерживаться общих
    правил именования объектов. При необходимости можно указать имя
    владельца.
  О condition_expression — логическое выражение, определяющее условие,
  накладываемое на значения. В качестве условия можно использовать любые
  логические команды, арифметические операторы, встроенные функции и
  предикаты (например IN, BETWEEN, LIKE). В выражении condition_expression
  нельзя ссылаться на столбцы таблиц или на любые другие объекты базы
  данных. Встроенные функции также не должны ссылаться на объекты базы
  данных. В выражении допустима одна локальная переменная, начинающаяся с
  символа @. В качестве имени переменной можно использовать произвольную
  строку. При выполнении правила переменная будет содержать значение,
  которое пользователь пытается ввести в столбец с помощью команды INSERT
  или UPDATE. Переменная может использоваться в любых логических операциях.
  Приведем пример создания правила: CREATE RULE  rule_one AS @val>=100 AND
  (ava1<170 CREATE  RULE  rule_two AS
      (Plist IN ("MATRIX".  "ACC",  "SIS",  "KIT")
     Правило может быть создано только в текущей базе данных. Само по себе
  правило не выполняет контроля данных. Созданное правило необходимо
  связать со столбцом таблицы или пользовательским типом данных. Правило не
  может быть связано с системным типом данных и столбцами, имеющими типы
  данных timestamp, text и image. При связывании правила со столбцом
  таблицы или пользовательским типом данных следует убедиться, что тип
  данных в правиле и в объекте привязки совпадают. Сервер не отслеживает
  соответствия типов данных при связывании. Ошибка выдается только тогда,
  когда пользователь изменяет значение и сервер начинает выполнение
  правила. Строго говоря, сервер вообще не выполняет проверки соответствия
  типов, он лишь констатирует ошибку при сравнении величин, имеющих
  несовместимый тип.
   Для связывания правила со столбцом таблицы или пользовательским типом
 данных используется хранимая процедура sp_bindru1e со следующим
 синтаксисом:
 sp_b1ndrule [@ru1ename =] "rule". [@objname =] "objectjname" [.
 [@futureonly =] "futureonlyjflag"]
   Назначение параметров процедуры sp_bindrule соответствует назначению
 аналогичных параметров хранимой процедуры sp_bindef ault, описанной в
 предыдущем разделе.
   Для «отвязывания» правила используется хранимая процедура sp_unbindrule:
 sp_unb1ndrule  [@objname =]  "object_name" [. [@futureonly =]
 "futureonly_flag"]
   Для получения сведений о правиле (имени владельца и даты создания)
 используйте хранимую процедуру sp_hel p с указанием в качестве аргумента
 имени правила: sp_he1p "rule_name"
   Для получения текста кода Transact-SQL, определяющего правило,
 используйте хранимую процедуру sp_helptext: sp_helptext  "rule_name "
   Для изменения имени правила используйте хранимую процедуру sp_rename:
 sp_rename @objname='rule_one' @newname='rule_two'

Управление умолчаниями

   Умолчание (default) — это значение, которое будет присвоено столбцу
 таблицы при вставке строки, если в команде вставки явно не указано
 значение для этого столбца.
   Как и правила, умолчания оставлены в SQL Server 2000 для обеспечения
 обратной совместимости с предыдущими версиями продукта (до версии SQL
 Server 7.0). Версия SQL Server 2000 позволяет задавать умолчания для
 столбцов таблицы или пользовательского типа данных при их создании,
 используя ключевое слово DEFAULT. Применение умолчаний и правил как
 отдельных объектов базы данных было вызвано невозможностью изменения
 таблиц до версии SQL Server 7.0. Было гораздо проще создать новое правило
 или умолчание, чем удалять таблицу и создавать ее заново. Так как версии
 SQL Server 7.0 и 2000 разрешают свободно изменять структуру таблиц, то
 надобность в правилах и умолчаниях как отдельных объектах отпала сама
 собой. Поэтому, если вы еще только создаете собственную базу данных, нет
 необходимости использовать устаревшие конструкции, подобные правилам и
 умолчаниям. К тому же нет абсолютно никакой гарантии, что Microsoft будет
 поддерживать эти объекты в следующих реализациях SQL Server, так что при
 использовании правил и умолчаний перед вами рано или поздно встанет вопрос
 об изменении структуры базы данных.
    Сейчас мы рассматриваем умолчания, которые существуют в базе данных как
 самостоятельные объекты. Умолчания предоставляют удобный способ быстро
 назначать одинаковые значения по умолчанию множеству столбцов таблиц базы
 данных. Тем не менее задавать значения по умолчанию для столбцов
 рекомендуется, используя синтаксис команд CREATE TABLE и ALTER TABLE.
    Созданное умолчание само по себе не выполняет никаких действий. Его
  необходимо связать с каким-нибудь столбцом таблицы или пользовательским
  типом данных. Тип данных умолчания должен соответствовать типу данных,
  установленному для столбца, с которым связывается умолчание.
    Для создания умолчания используется следующая команда: CREATE DEFAULT
  default AS constant_expression
    Здесь default— имя умолчания, a constant_express1on — его значение.
    При выборе имени умолчания следует придерживаться установленных правил
  именования объектов. Кроме того, имя умолчания должно быть уникально для
  каждого владельца. Указание имени владельца умолчания при его создании не
  обязательно.
    В качестве значения constant_expression можно использовать не только
  
Пред.2627
скачать работу

SQL Server 2000

 

Отправка СМС бесплатно

На правах рекламы


ZERO.kz
 
Модератор сайта RESURS.KZ