Переменный строковый тип
Назначение
Задает символьную строку переменной длины.
Синтаксис
1 вариант (в стиле СУБД ЛИНТЕР)
< переменный строковый тип >::= {VARCHAR < имя > < длина >[< начальное значение >}]
2 вариант (в стиле СУБД Ingres)
< переменный строковый тип >::= VARCHAR struct {short length; char text < длина >; }< имя > < длина >::='['< целое положительное число >']' < начальное значение >::=см. подраздел «Начальное значение»
Описание
< Длина >
задает максимальный размер символьной строки (целое положительное число в диапазоне от 1 до 4000).-
Строка, задающая
< начальное значение >
, должна целиком лежать на одной строке исходного текста (исключая собственно строковый литерал, задающий значение поля text). -
Если строка, задающая начальное значение, содержит символ ' (кавычка) или " (двойная кавычка), то он экранируется символом \ (обратная косая черта).
-
Чтобы продолжить символьную строку на следующую линию, используется символ \ (обратная косая черта) в последней позиции строки.
-
Строка может содержать символы в любых кодировках, поддерживаемых СУБД ЛИНТЕР.
-
В случае объявления переменных в стиле СУБД ЛИНТЕР переменная типа VARCHAR[n] после претрансляции представляется в модуле основного языка в виде:
struct { short len; char arr[n]; }< имя >;
-
В случае объявления переменных в стиле СУБД Ingres переменная типа VARCHAR[n] после претрансляции представляется как
struct { short length; char text[n]; }< имя >
Пример
VARCHAR name_month[8] ;