Опубликован: 05.01.2004 | Уровень: специалист | Доступ: платный | ВУЗ: Московский государственный университет имени М.В.Ломоносова
Лекция 6:

Работа с представлениями. Типы данных

< Лекция 5 || Лекция 6: 123 || Лекция 7 >

Типы данных

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

В стандарте SQL-92 определены следующие типы:

  • символьные:
    • CHARACTER (len) ;
    • CHAR (len) ;
    • CHARACTER VARYING (len) ;
    • CHAR VARYING (len) ;
    • VARCHAR (len) ;
    • NATIONAL CHARACTER (len) ;
    • NATIONAL CHAR (len) ;
    • NCHAR (len) ;
    • NATIONAL CHARACTER VARYING (len) ;
    • NATIONAL CHAR VARYING (len) ;
    • NCHAR VARYING (len) ;
  • двоичные:
    • BIT (len) ;
    • BIT VARYING (len) ;
  • числовые:
    • NUMERIC ;
    • DECIMAL ;
    • DEC ;
    • INTEGER ;
    • INT ;
    • SMALLINT ;
    • FLOAT ;
    • REAL ;
    • DOUBLE PRECISION ;
  • даты/времени:
    • DATE ;
    • TIME ;
    • TIME WITH TIME ZONE ;
    • TIMESTAMP ;
    • TIMESTAMP WITH TIME ZONE ;
  • интервалы:
    • INTERVAL.

Отметим, что параметры типа, указываемые в скобках, в большинстве случаев можно при необходимости опускать.

Для символьных типов возможно указание фразы CHARACTER SET { set_name | using_form}, устанавливающей используемый набор символов.

Приведем описание наиболее часто используемых типов данных:

  • CHAR (num) - текстовая строка фиксированной длины (на диске сразу выделяется место под всю строку);
  • VARCHAR (num) - текстовая строка переменной длины, содержащая не более num символов (на диске выделяется место в зависимости от длины строки);
  • INTEGER или INT - целое;
  • NUMERIC - число с плавающей точкой, возможно определение числа знаков после запятой;
  • DECIMAL или DEC - число с плавающей точкой, возможно задание минимального значения точности;
  • FLOAT - число с плавающей точкой, позволяющее задавать точность (количество знаков после запятой);
  • REAL - число с плавающей точкой, точность которого определяется реализацией;
  • DATE - тип даты;
  • TIME WITH TIME ZONE - тип времени, содержащий поля, описывающие сдвиг зонального времени.

Типы данных, описывающие дату и время, состоят из нескольких полей, в которых хранятся части даты времени. Так, тип DATE содержит поля YEAR, MONTH и DAY. Тип TIME содержит поля HOUR, MINUTE и SECOND.

Тип TIMESTAMP содержит как поля даты, так и поля времени.

Значение типа TIMESTAMP записывается следующим образом: '10-12-2003 08:30:00'. Порядок следования полей при написании даты, как правило, определяется установками компьютера.

Функции даты/времени

Для работы с данными, имеющими тип даты/времени в языке SQL предусмотрены следующие функции:

CURRENT_TIME - определяет текущее время;

CURRENT_DATE - определяет текущую дату;

CURRENT_TIMESTAMP - определяет текущие дату и время.

Например:

INSERT INTO tbl1 (f1,f2,f3,f4)
     VALUES (1,100,'abc', CURRENT_DATE);
< Лекция 5 || Лекция 6: 123 || Лекция 7 >
Азамат Айтказин
Азамат Айтказин
Казахстан
Евгений Резниченко
Евгений Резниченко
Россия