Создание, преобразование
и работа с данными
Как говорилось в предисловии, цель данной книги – показать универ
сальные
методы SQL, применяемые на разных серверах БД. Однако
эта глава посвящена созданию, преобразованию и работе со строковы
ми, числовыми и временными данными, а язык SQL не включает ко
манды, обеспечивающие эти функциональные возможности. Вернее,
все эти операции осуществляются встроенными функциями. К
тому
же, хотя стандарт SQL и описывает некоторые функции, производите
ли БД часто отступают от их спецификаций.
Поэтому в данной главе сначала показаны некоторые общие приемы ра
боты с данными в SQLвыражениях, а потом продемонстрированы от
дельные
встроенные функции, реализованные в Microsoft SQL Server,
Oracle Database и MySQL. Кроме материала, представленного в этой
главе, настоятельно рекомендуется приобрести справочное руководст
во с описанием всех функций,
реализованных сервером, с которым вы
работаете. Если вы работаете с несколькими серверами, есть ряд спра
вочников, охватывающих несколько серверов, например «SQL in a Nut
shell» или «SQL Pocket Guide», оба от издательства O’Reilly.
Строковые данные
При работе со строковыми данными используется
один из следующих
символьных типов данных:
CHAR
Предназначен для хранения строк фиксированной длины, допол
ненных пробелами. MySQL допускает значения типа
CHAR
длиной
до 255 символов, Oracle Database – до 2000 символов, а SQL Server –
до 8000 символов.
Строковые данные
123
varchar
Предназначен для хранения строк переменной длины. MySQL до
пускает в
столбце типа
varchar
до 255 символов (65 535 символов
для версии 5.0 и выше), Oracle Database (с помощью типа
varchar2
) –
до 4000 символов, а SQL Server – до 8000 символов.
text
(
MySQL и SQL Server
) или
CLOB
(
Character Large Object
;
Oracle Da
tabase
)
Позволяют хранить очень большие строки переменной длины (обыч
но в этом контексте их называют документами). В MySQL есть не
сколько текстовых типов (
tinytext
,
text
,
mediumtext
и
longtext
) для
документов размером до 4 Гбайт. В
SQL Server всего один тип
text
для документов размером до 2 Гбайт. Oracle Database включает
тип данных
CLOB
, позволяющий хранить колоссальные документы
до 128 Тбайт.
В некоторых примерах данного раздела, иллюстрирующих примене
ние
этих различных типов, я использую такую таблицу:
CREATE TABLE string_tbl
(char_fld CHAR(30),
vchar_fld VARCHAR(30),
text_fld TEXT
);
В следующих двух разделах показано, как создавать строковые дан
ные и работать с ними.
Создание строк
Самый простой способ заполнить символьный столбец – заключить
строку в кавычки:
mysql>
Достарыңызбен бөлісу: