Шаг 3 - Создание и удаление таблиц --------------------------------- Типы данных ~~~~~~~~~~~~~~~ `подробнее про типы данных`_ .. _подробнее про типы данных : https://www.sqlite.org/datatype3.html Нужно понимать что sqlite это очень простая база данных которая поможет вам понять основы SQL и в локальной разработке, но не стоит ждать от БД много. Классы хранения и типы данных Каждое значение, хранящееся в базе данных SQLite (или обрабатываемое ядром базы данных), имеет один из следующих классов хранения: * ``NULL``. Значение является значением NULL. * ``INTEGER``. Значение является целым числом со знаком, хранящимся в 0, 1, 2, 3, 4, 6 или 8 байтах в зависимости от величины значения. * ``REAL``. Значение является значением с плавающей точкой, хранящимся как 8-байтовое число с плавающей точкой IEEE. * ``TEXT``. Значение является текстовой строкой, хранящейся с использованием кодировки базы данных (UTF-8, UTF-16BE или UTF-16LE). * ``BLOB``. Значение является блоком данных, хранящимся точно так же, как он был введен. Ниже приведена таблица конверсии типов +-----------------------+----------------+----------------+ | Тип данных | Типы в SQLite | Номер правила | +=======================+================+================+ | INT | | | | | | | | INTEGER | | | | | | | | TINYINT | | | | | | | | SMALLINT | | | | | | | | MEDIUMINT | INTEGER | 1 | | | | | | BIGINT | | | | | | | | UNSIGNED BIG INT | | | | | | | | INT2 | | | | | | | | INT8 | | | +-----------------------+----------------+----------------+ | CHARACTER(20) | | | | | | | | VARCHAR(255) | | | | | | | | VARYING CHARACTER(255)| | | | | | | | | | | | NCHAR(55) | | | | NATIVE CHARACTER(70) | TEXT | 2 | | | | | | NVARCHAR(100) | | | | | | | | TEXT | | | | | | | | CLOB | | | +-----------------------+----------------+----------------+ | | | | | BLOB | | 3 | | no datatype specified | BLOB | | +-----------------------+----------------+----------------+ | | | | | REAL | | | | | | | | DOUBLE | | | | | | | | DOUBLE PRECISION | | | | | | | | FLOAT | REAL | 4 | | | | | | NUMERIC | | | | | | | | DECIMAL(10,5)| | | | | | | | | BOOLEAN | | | | | | | +-----------------------+----------------+----------------+ | DATE | | | | | | | | DATETIME | NUMERIC | 5 | | | | | +-----------------------+----------------+----------------+ Содание таблиц с помощью CREATE TABLE ~~~~~~~~~~~ .. code-block:: sql CREATE TABLE employees( emp_no INT PRIMARY KEY , birth_date DATE , first_name VARCHAR(14) , last_name VARCHAR(16), gender VARCHAR(14), hire_date DATE ); .. tip:: Возьмите на заметку команда ``.schema`` даст информацию по схеме таблицы .. code-block:: shell Enter ".help" for usage hints. sqlite> .schema employees CREATE TABLE employees( emp_no INT PRIMARY KEY , birth_date DATE , first_name VARCHAR(14) , last_name VARCHAR(16), gender VARCHAR(14), hire_date DATE ); sqlite> .. tip:: Запомните что команда ``.help`` в консоли клиента, даст вам справку по командам Удаление таблиц (DROP TABLE) ~~~~~~~~~~~~ Удалить таблицу проще простого. .. code-block:: sql drop table employees ; Создание учебной Базы ~~~~~~~~~~~~~~~~~~~~~ Файлы базы приведены в папке example_db/sqlite там приложены скрипты создания таблиц и скрипты загрузки данных. Скрипты из внешних файлов загружаются следующим образом. .. code-block:: sql CREATE TABLE employees ( emp_no INT NOT NULL, birth_date DATE NOT NULL, first_name VARCHAR(14) NOT NULL, last_name VARCHAR(16) NOT NULL, gender VARCHAR(16) NOT NULL, hire_date DATE NOT NULL, PRIMARY KEY (emp_no) ); INSERT INTO employees VALUES (10001,'1953-09-02','Georgi','Facello','M','1986-06-26'), (10002,'1964-06-02','Bezalel','Simmel','F','1985-11-21'); Вот пример скриптов, создания таблиц и вставки данных. Для экономии времени просто скачайте базу данных. s