Да, вы можете сохранять числа как строки, но в дальнейшем вам будет сложно работать с этими данными, обработка будет затруднена. Например, со строками нельзя производить математических вычислений, и вам придется применять операции преобразования, что негативно скажется на качестве и скорости работы вашей программы.
Типы данных в других SQL СУБД, отличных от ORACLE, также различаются?
Есть незначительные различия, например в MS SQL используется VARCHAR, а не VARCHAR2, или вместо CLOB используется тип TEXT. Необходимо обратиться к соответствующему разделу документации выбранной СУБД, чтобы понять, какие именно типы данных различаются.
Почему в ORACLE SQL используется именно VARCHAR2, а не просто VARCHAR, как в MS SQL-сервер?
В ORACLE SQL тоже существует тип VARCHAR, но исторически сложилось так, что в ORACLE SQL между этими двумя типами существует разница:
• VARCHAR может хранить до 2000 символов, а VARCHAR2 может хранить до 4000 символов;
• если мы объявим тип данных как VARCHAR, то будет зарезервировано место для пустых NULL VALUES.
Поэтому чаще всего на практике в ORACLE используется VARCHAR2.
Контрольные вопросы и задания для самостоятельного выполнения
1. Для чего используется тип DATE?
2. Нам необходимо в одной из колонок таблиц сохранять целые числа, какой тип следует использовать?
3. Какой тип правильно использовать для хранения данных о цвете автомобиля?
4. Какой тип данных необходимо использовать для хранения сведений о росте человека?
Как мы уже поняли, основная информация, с которой нам предстоит работать в базе данных, находится в таблицах. Из шага 4 (таблицы в базе данных) про таблицы мы узнали следующие важные сведения:
• каждая таблица обладает уникальным наименованием;
• у таблицы обязательно должны быть колонки, каждая из которых обладает уникальным наименованием в рамках этой таблицы;
• для каждой колонки таблицы задается свой тип данных (про типы данных подробно рассказывается в предыдущем шаге).
1. Имена таблиц, имена колонок в SQL имеют ограничение по количеству символов и не могут называться зарезервированным словом, таким как команда из языка SQL.
Например, нельзя назвать таблицу или колонку GROUP, это зарезервированное слово, часть команды GROUP BY, или же недопустимо называть таблицу или колонку таблицы FROM, SELECT, INSERT, KEY.
2. Имена таблиц и имена колонок не могут начинаться с цифр; также принято использовать при именовании таблиц и колонок латинские буквы, хотя, впрочем, вполне возможно назвать таблицы и колонки таблиц на русском, китайском и даже хинди (я видел и такое), но подобные выкрутасы не приветствуются.
3. Очень желательно, чтобы наименования таблиц, а также наименования колонок таблиц отражали смыл относительно данных, которые содержатся в этих таблицах, например: MANS, CARS, STAFF – люди, машины, персонал, GOODS – товары, ITEMS – элементы.
Теперь, когда мы разобрались с теоретической частью, самое время заняться практическими упражнениями.
Разберемся на практике, как создавать таблицы в базе, используя язык SQL.
Для создания таблиц используется специальная команда SQL CREATE TABLE.
Синтаксис упрощенный.
CREATE TABLE имя таблицы (
Column_NAME1 column_type (NUMBER, или VARCHAR2 (n) или DATE) primary KEY,
Column_NAME 2 column_type (NUMBER, или VARCHAR2 (n) или DATE),
Column_NAMEn column_type (NUMBER или VARCHAR2 (n) или DATE)
);
Для простоты на начальном этапе в наших практических примерах мы будем использовать три основных типа данных.
(NUMBER, VARCHAR2 (n), DATE), соответственно, для хранения чисел, строковых данных и данных календарного типа (дата/время).
Для текстового типа VARCHAR2 (n) после VARCHAR2 в скобках указывается количество символов для данной колонки.
Итак, сначала идет команда создания таблицы CREATE TABLE, далее – наименование таблицы: MANS, GOODS, ITEMS или любое другое.
Далее в скобках через запятую перечисляются наименования колонок и тип колонок.
Вот несколько примеров, как создавать таблицы в языке SQL:
1. Создать таблицу «Мебель»:
• артикул;
• наименование;
• количество;
• номер партии.
CREATE TABLE furnit (artikl VARCHAR2 (50) PRIMARY KEY, NAME VARCHAR2 (50),partCOUNT NUMBER, partnum NUMBER);
2. Создать таблицу «Корзина для веб-магазина»:
• артикул;
• наименование товара;
• имя покупателя;
• количество;
• дата покупки.
CREATE TABLE shopINgcart (
Читать дальше