Погружение 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-е правило: не должно быть транзитивных зависимостей
(неключевой столбец не может изменять другой столбец)