
- •На какие категории можно разделить типы данных используемых в MySql?
- •Команды describe и create table – пример, описание.
- •Выборка определенных столбцов; значение ключевого слова distinct. Привести примеры.
- •Описание команды insert.
- •Выборка всех данных; выборка определенных строк; операторы для комбинирования условий выбора.
- •Привести примеры Описание команды load data.
- •Числовые типы данных, привести примеры и описание.
- •Указать аспекты запроса с использованием нескольких таблиц.
- •Дайте характеристику сценариям.
- •Символьные (строковые) типы данных, привести примеры и описание.
- •Что из себя представляет MySql?
- •Сортировка строк; сортировка с учетом регистра символов; сортировка по убыванию. Привести примеры.
- •Типы данных для хранения даты и времени.
- •Охарактеризовать функции now(), date_add(), mod(). Привести примеры.
- •Что такое реляционная база данных?
- •Специфика значений null.
- •Сравнение по шаблонам, применение операторов like, not like, regexp, not regexp.
- •В чем заключается суть объектно-ориентированного подхода в программировании? Какие программы из пакета разработки Java используются для компиляции и исполнения программы?
- •Как Вы понимаете понятие класса? Что представляет собой ссылка на объект? Какие символы служат для добавления комментариев в код программы?
- •Коментарии
- •Какие элементарные типы Java Вы знаете? Чем отличаются область видимость и время жизни переменных? Зачем нужен сборщик мусора?
- •Область видимости и время жизни переменных
- •Как выглядит элементарная структура класса? Что может содержать тело класса? Каковы область видимости и время жизни для локальных переменных и объектов?
- •Область видимости и время жизни объектов (переменных – смотри выше п.4)
- •Как описывается и вызывается метод? Где должно находится описание метода в Java? Какое значение имеет ключевое слово public при описании класса?
- •Чем отличаются статические поля и методы от нестатических? Как объявляются такие поля и методы? Какие переменные могут использоваться в статических методах?
- •Что представляет собой конструктор класса? Зачем он нужен? Какие варианты ограничения доступа к переменным и полям класса существуют в Java?
- •В чем заключается суть наследования? Как отличить класс, наследующий другой класс? Какое ограничение существует на количество классов-наследников?
Привести примеры Описание команды load data.
Загрузка данных в таблицу
Создав таблицу, нужно позаботиться об ее заполнении. Для этого предназначены команды LOAD DATA и INSERT.
Создайте текстовый файл с именем `pet.txt', содержащий по одной записи в каждой строке (значения столбцов должны быть разделены символами табуляции и даны в том порядке, который был определен командой CREATE TABLE). Незаполненным полям (например, неизвестный пол или даты смерти живых на сегодняшний день животных), можно присвоить значение NULL. В текстовом файле это значение представляется символами \N. Например, запись для птицы Whistler должна выглядеть примерно так (между значениями должны располагаться одиночные символы табуляции):
name owner species sex birth death
Whistler Gwen bird \N 1997-12-09 \N
Загрузить файл `pet.txt' в таблицу можно с помощью следующей команды:
mysql> LOAD DATA LOCAL INFILE "pet.txt" INTO TABLE pet;
Команда LOAD DATA INFILE читает строки из текстового файла и вставляет их в таблицу с очень высокой скоростью. Если задано ключевое слово LOCAL, то файл читается с клиентского хоста. Если же LOCAL не указывается, то файл должен находиться на сервере. (Опция LOCAL доступна в версии MySQL 3.22.6 и более поздних.)
Если текстовые файлы, которые нужно прочитать, находятся на сервере, то из соображений безопасности эти файлы должны либо размещаться в директории базы данных, либо быть доступными для чтения всем пользователям. Кроме того, для применения команды LOAD DATA INFILE к серверным файлам необходимо обладать привилегиями FILE для серверного хоста
Числовые типы данных, привести примеры и описание.
Типы данных NUMERIC и DECIMAL используются для величин, для которых важно сохранить повышенную точность, например для денежных данных. Требуемая точность данных и масштаб могут задаваться (и обычно задаются) при объявлении столбца данных одного из этих типов, например:
salary DECIMAL(5,2)
Тип FLOAT обычно используется для представления приблизительных числовых типов данных.
Тип INT используется для представления целочисленных значений.
Все типы целочисленных данных могут иметь необязательный и не оговоренный в стандарте атрибут UNSIGNED. Беззнаковые величины можно использовать для разрешения записи в столбец только положительных чисел, если необходимо немного увеличить числовой интервал в столбце.
Указать аспекты запроса с использованием нескольких таблиц.
Предположим, нужно узнать, в каком возрасте животные давали приплод. В таблице event указаны даты родов, но для того, чтобы рассчитать возраст матери, нужно знать и дату ее рождения. Так как даты рождения хранятся в таблице pet, в этом запросе нужно использовать обе таблицы:
mysql> SELECT pet.name,
-> (TO_DAYS(date) - TO_DAYS(birth))/365 AS age,
-> remark
-> FROM pet, event
-> WHERE pet.name = event.name AND type = "litter";
На некоторые аспекты этого запроса следует обратить особое внимание:
В выражении FROM указаны две таблицы, так как запрос будет получать информацию из обеих.
При комбинировании (объединении) информации из нескольких таблиц необходимо указать, как строки одной таблицы связываются с записями другой. Это просто, так как в обеих таблицах есть столбец с именами. В этом запросе выражение WHERE используется для сопоставления записей из двух таблиц по значениям имен.
Так как столбец name присутствует в обеих таблицах, нужно явно указать, какую именно таблицу вы имеете в виду, ссылаясь на данный столбец. Это можно сделать, связав имя таблицы с именем столбца.
Для объединения не обязательно иметь две отдельные таблицы; иногда можно объединить таблицу с самой собой - если нужно сравнить одни записи таблицы с другими записями той же таблицы. Например, для того, чтобы обнаружить среди животных ``семейные пары'', можно объединить таблицу pet с ней самой, составив пары животных разного пола, но одного вида:
mysql> SELECT p1.name, p1.sex, p2.name, p2.sex, p1.species
-> FROM pet AS p1, pet AS p2
-> WHERE p1.species = p2.species AND p1.sex = "f" AND p2.sex = "m";