Погружение 2
День восьмой
9 марта 2016 г.

MySQL поглощает мою жизнь последние пару дней, и вот еще несколько вещей, которые мне запомнились.

Согласно Википедии, MySQL — это система управления реляционными базами данных с открытым исходным кодом; в июле 2013 года это была вторая по распространенности РСУБД в мире и наиболее широко используемая модель клиент-серверная РСУБД с открытым исходным кодом. Он назван в честь дочери соучредителя Майкла Видениуса, Май. Аббревиатура SQL расшифровывается как язык структурированных запросов.
https://en.wikipedia.org/wiki/MySQL

Если вы похожи на меня, это может не иметь большого значения для вас. Мне нужно увидеть вещи и немного поиграть с ними, поэтому давайте проверим некоторые основные команды MySQL. Прежде всего, эта система предназначена для стола, поэтому давайте сначала посмотрим, как создать один из них. На самом деле, даже до этого у вас должна быть база данных для создания таблицы, так что давайте посмотрим и на это очень быстро. Вау, еще до этого вы должны быть в MySQL, так что вот команда, которая поможет вам попасть внутрь.

# login to MySQL from command line
$ mysql -uroot -p // Will ask for password type password press enter
# start MySQL from cloud 9
$ mysql-ctl start // Will create an empty database on first start
# run MySQL in cloud 9
$ mysql-ctl cli // Will re launch the MySQL interactive shell client
# CREATE database:
$ CREATE DATABASE nameOfDatabase;
# Switch to (use) a database:
$ USE nameOfDatabase;
//Yes it really is that simple.

Теперь пора…

# CREATE TABLE syntax: A simple contact table
$ CREATE TABLE contact (
     id int(10) unsigned not null AUTO_INCREMENT, 
     nameLast VARCHAR(30),
     nameFirst VARCHAR(20),
     email VARCHAR(50),
     cell VARCHAR(20),
     primary key (id)
);
# ALTER TABLE syntax: A table modifier here it adds a new row gender
$ ALTER TABLE contact ADD gender CHAR(1);

#Рекомендация: создайте оператор select для запроса строк, которые вы собираетесь изменить, перед изменением, чтобы обеспечить точность, особенно при использовании DELETE.

Примечание. Если вы не знакомы с операторами select или вам нужно освежить знания, ознакомьтесь с моей вчерашней публикацией здесь https://medium.com/@jhonnyjblaze/immersion-2-day-seven-3-8-16-e9b8ed89dff3#. .a5yke0irm»

/Some other common commands you are likely to run right before or after creating a table */
# show table CREATE SQL:
$ SHOW CREATE TABLE contact;
# DESC a table’s schema:
$ DESC contact;
/* In this context DESC a schema means a description of data in the database, including the other objects and their connections. */ 

Так что теперь у нас есть стол? Теперь мы получаем настоящее удовольствие, потому что с таблицами, содержащими данные, мы можем выполнять запросы к данным. Самый простой запрос — просто запросить все данные в базе данных. Однако в зависимости от размера вашей базы данных это может оказаться не самым практичным или эффективным способом сбора данных. Предложения запроса помогают ограничить результаты, возвращаемые нашими запросами, и повышают вероятность получения более значимых и/или точных результатов при выполнении запросов к базам данных.

# Select all records:
$ SELECT * FROM contact;
# WHERE CLAUSE:
$ SELECT * FROM contact WHERE gender = 'F';
There are additional clauses and they can be chained like so
$ SELECT * FROM contact WHERE gender = 'F' AND gender = 'M';
// ^ Hopefully this does not return any data for you.
WHERE age >= 30 AND age <= 55;
// ^ This flies also
WHERE age BETWEEN 30 AND 55;
// ^ This is equivalent to the syntax above but easier to read.

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

Первая нормальная форма или 1NF:

1-е правило — столбцы таблицы могут содержать только атомарные значения
2-е правило — отсутствие повторяющихся наборов данных

Вторая нормальная форма или 2NF:

1-е правило: должно быть в 1NF
2-е правило: не должно быть частичных функциональных зависимостей

Третья нормальная форма или 3NF

1-е правило: должно быть во 2NF
2-е правило: не должно быть транзитивных зависимостей
(неключевой столбец не может изменять другой столбец)