Подписаться на получение новых статей на почту:

Загрузка данных в MySQL. Шаг №50.

Всем привет. В прошлой записи мы с Вами научились создавать базу данных и таблицу в ней. Сегодня рассмотрим загрузку данных в таблицу. Есть два варианта — это загрузка из файла.txt и вставка строк.  Используем первый вариант, кстати он является быстрее второго. Как Вы помните в статье №47 мы научились сохранять данные контроллера с COM-порта в текстовый файл – вот его информацию мы и занесем в базу данных.

На рисунке ниже текстовой файл с данными контроллера сбора данных, первые два значения это температура, далее время и дата.

Как Вы помните, в прошлой статье мы рассмотрели первичный ключ и создали таблицу с ним. Сегодня мы немного переделаем нашу таблицу , а именно сделаем первичный ключ составным, в который будут входить время и дата. Для начала подключимся к серверу, выберем базу данных use logger;   удалим уже созданную таблицу drop table log; создадим по новой таблицу с новым ключом следующей командой:

CREATE TABLE Log (текстовый файл в MySQLT1 FLOAT (3,1), T2 FLOAT (3,1), TIMELog VARCHAR (5), DATELog VARCHAR (8), PRIMARY KEY (TIMELog, DATELog)) ENGINE InnoDB CHARACTER SET utf8;

Выделенный серым,  это и есть наш составной ключ

Теперь введем данные из текстового файла следующей командой:

LOAD DATA INFILE ‘C:/log.txt’  IGNORE INTO TABLE  Log CHARACTER SET cp1251;

Где  LOAD DATA INFILE ‘C:/log.txt’  — загрузка данных из файла по следующему пути;
IGNORE INTO TABLE  Log – заносим данные в таблицу Log, при этом игнорируем, с помощью параметра IGNORE, дублирующиеся строки по ключу. А именно у нас возможны варианты, что по одному  и тому же времени могут считаться значения  температуры. На рисунке выше мы можем увидеть одинаковые строки;
CHARACTER SET cp1251 – кодировка данных в файле

Также хочется отметить, что данные в текстовом файле разделены табуляцией — колоны, и переход на новую строку — ряды.  Данное разделение, это условие по умолчанию. Если же мы захотим разделять данные по-другому, к примеру символом «;», то укажите в конце команду fields terminated by «;». На пока нас устроит и табуляцияЗаполнение таблицы MySQL .

На рисунке, слева, результат создания таблицы, и загрузки из текстового файла  с уже отсеянными дублирующими значениями по составному ключу

Ну и последние,  рассмотрим, как вносить данные по строке.  Для занесения данных используем следующую команду, на примере занесения данных в таблицу log:

INSERT INTO log (T1, T2, TIMELog, DATELog) values (‘-23.9’,’45.6’,’23.12’,’24.12.15’);

Из команды, выше, видно, что первыми указываются названия колонок в таблице, и далее значения этих колонок. На рисунке ниже результат выполнения командыЗапись данных в MySQL.

Как видите, в таблицу добавлены, выше приведенные значения.

Сегодня  мы рассмотрели и научились вносить данные в таблицу базы из текстового файла и отдельно строкой, а также определились с ключом. Самое главное, что мы в последних трех статьях познакомились с базой данных и СУБД MySQL,  для более лучшего понимания комплекса работы  программ и устройств. Начиная с контроллера и посылаемых команд на языке СИ до компьютера, который принимает данные и сохраняет в файле с помощью программы на java, которую в следующей статье мы дополним сервером  MySQL, т.е. сделаем внутренний сервер,  где уже непосредственно в приложении дальше будем обрабатывать данные. На этом на сегодня и остановимся. Всем пока.

Просмотрено 1705 раз.

Я на Google+

Загрузка данных в MySQL. Шаг №50.: Один комментарий

Добавить комментарий

Ваш e-mail не будет опубликован.

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Subscribe without commenting