Язык PHP и работа с базой данных MySQL. Изучаем PHP и MySQL правильно Выбор базы данных

От автора: вас обозвали чайником? Ну, это дело поправимое! Каждый самовар когда-то был чайником! Или каждый профессионал был когда-то самоваром? Нет, опять что-то не то! В общем, MySQL для начинающих.

Зачем чайникам MySQL

Если вы всерьез собрались связать свою жизнь с интернетом, то сразу на первых же шагах в «паутине» столкнетесь с этой СУБД. MySQL можно смело назвать «всея интернетной» системой управления базами данных. Без нее не обходится ни один более-менее серьезный ресурса, она присутствует в админке каждого хостинга. И большая часть всех популярных CMS и даже «самопальных» движков построены с ее участием.

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

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

Основные понятия

Для начала пройдемся по основным понятиям, которые мы будем упоминать в этой публикации:

База данных (БД) – основная составляющая единица СУБД. БД включает в себя таблицы, которые состоят из столбцов и записей (строк). Образуемые на пересечении ячейки содержат в себе структурированные данные определенного типа.

СУБД (система управления БД) – совокупность всех программных модулей для администрирования баз данных.

SQL – язык структурированных запросов, с помощью которого разработчик «общается» с ядром (сервером) СУБД. Как и любой программный язык, SQL имеет свой синтаксис, набор команд и операторов, поддерживаемые типы данных.

Думаю, для начала теоретических знаний нам достаточно. Недостающие пробелы в теории мы «раскрасим» практикой. Теперь осталось выбрать правильный программный инструмент.

Подбор правильного инструмента

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

В его состав уже входят все составляющие СУБД, позволяющие новичку сразу после несложной и понятной установки приступить к практическому знакомству с MySQL. Кроме этого Denwer включает в себя еще несколько необходимых для начинающего разработчика инструментов: локальный сервер, PHP.

Первые шаги

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

Когда закончится процесс установки, запускайте локальный сервер, подождите пару секунд. После этого наберите в адресной строке браузера localhost.

На странице «Ура, заработало!» перейдите по одной из указанных на снимке ссылок. После чего вы попадете в phpMyAdmin – оболочку для администрирования баз данных.

Перейдя по ссылке http://downloads.mysql.com/docs/world.sql.zip, вы скачаете пример тестовой БД с официального сайта MySQL. Опять перейдите в phpMyAdmin, в основном меню сверху зайдите во вкладку «Импорт». В окне «Импорт на текущий» в первом разделе («Импортируемый файл») установите значение «Обзор вашего компьютера».

В окне проводника выберите архив со скачанным примером БД. Внизу основного окна не забудьте нажать «Ок».

Советую пока не изменять указанные значения параметров. Это может привести к некорректному отображению данных импортируемого источника. Если система phpMyAdmin выдала ошибку, что не может распознать алгоритм сжатия БД, тогда разархивируйте ее и повторите весь процесс импорта сначала.

Если все прошло хорошо, то вверху появится сообщение программы, что импорт выполнен успешно, а слева в списке БД — еще одна (word).

Рассмотрим ее структуру изнутри, чтобы вы смогли более наглядно представить, с чем вам придется иметь дело.

Нажмите на название БД MySQL для начинающих. Под ней отобразится список таблиц, из которых она состоит. Кликните по одной из них. Затем перейдите в пункт верхнего меню «Структура». В основной рабочей зоне отобразится структура таблицы: имена всех столбцов, типы данных и все атрибуты.


Для тех, кто хочет изучать PHP, можно посоветовать великолепный "Самоучитель PHP " с сайта PHP5.RU
Курс находится в процессе написания, но уже сейчас ссылки на отдельные уроки из него стоят в различных разделах этого FAQ. И, поверьте - оно стоит того.
Не могу не порекомендовать замечательный материал Вадима Ткаченко АКА Bizon-а "Вступление в PHP и MySQL" . Он даже издавался отдельной книгой, а сейчас - исправленный и дополненный - размещается на сайте
"PHP в деталях ". Этот ресурс стоит особняком. В отличие от предыдущих, рекомендовать прочесть его целиком может только садист - там слишком много информации. но в этом и его прелесть. Это неисчерпаемый ресурс информации по PHP. Единственное замечание - обращайте внимание на дату написания статьи. Не стоит особо доверять тем, что написаны до 2003 года.
Ну, и, конечно же - этот сайт, http://сайт
Если вы еще не прочли его целиком - обязательно сделайте это. Здесь перечислены проблемы, с которыми рано или поздно столкнется КАЖДЫЙ, кто пишет на PHP.

Программное обеспечение.
Для работы с РНР под Windows, надо установить следующие программы:
- web-сервер Apache (5Mb)
- сам PHP (10Mb)
- по желанию - MySQL (23Mb).
Настройка очень простая. Апач устанавливается программой установки. Там, где он запрашивает имя вашего сервера и емейл администратора, надо 2 раза написать localhost и свой e-mail.
PHP распаковывается из зипа в любой каталог по желанию (стандартно - C:\PHP) и настраивается обязательно как модуль Апача. Для этого надо выполнить три действия:
- переписать файл php5ts.dll в каталог WINDOWS
- в файл httpd.conf (C:\Program Files\Apache Group\Apache\conf\httpd.conf), в самом низу, добавить две строчки
LoadModule php5_module c:/php/php5apache2_2.dll
AddType application/x-httpd-php .php .phtml

- перезапустить Апач (с помощью утилиты Apache monitor в трее)
Выполнив все эти действия, можно положить тестовый php скрипт (допустим, он называется test.php и состоит из строчки

в каталог, который является корневым для веб-сервера (по умолчанию это C:\Program Files\Apache Group\Apache\htdocs\) и обратиться к нему, написав в браузере адрес
http://127.0.0.1/test.php

При установке MySQL выбрать Standard configuration, на следующем экране нажать Next, на следующем - задать пароль или снять галочку "Modify security settings", если хотите оставить его пустым.
Для проверки запустите консоль Mysql: Пуск - Выполнить и в появившуюся строку скопировать
"C:\Program Files\MySQL\MySQL Server 5.1\bin\mysql.exe"
или
"C:\Program Files\MySQL\MySQL Server 5.1\bin\mysql.exe" -uroot -pPASSWORD
если консоль запустилась - все работает. Наберите exit для выхода и приступайте к конфигурированию поддержки mysql в PHP.
Для этого, если вы не сделали этого раньше, возьмите файл c:\php\php.ini-development и скопируйте под именем php.ini в каталог windows. Затем отредактируйте его, убрав точку с запятой в начале строки
;extension=php_mysql.dll
и отредактировав параметр extension_dir:
extension_dir = "c:\php\ext\"
заодно можно сразу исправить
short_open_tag = On
чтобы работали старые скрипты и удобные шаблоны
и не забудьте после этого перезапустить Апач, как это было описано выше.
Теперь вы можете использовать mysql в своих php-скриптах.

Те, для кого эта инструкция слишком сложна, могут попробовать установить готовый комплект Денвер-2 .
В него входит сразу все, что нужно, и еще много ненужного. А главное - работает все само.
Еще одно достоинство Денвера в том, что объем базового комплекта в 10 раз меньше полных версий - всего 4 мегабайта. А так же то, что его автор пишет интересные книжки по PHP.

Так же, всем любознательным рекомендуется ВЕСЬМА толковая статья Установка и настройка Apache+PHP
с сайта PHP5.RU. И, конечно же - разделы официальной документации, посвященные установке соответствующих программ.

Форумы.
При изучении любого дела обязательно появятся вопросы.
Вопросы удобно задавать на форумах.
http://phpclub.ru/talk/forumdisplay.php?s=&forumid=12
Форум PHPклуба. Самый посещаемый и известный. К сожалению, известность служит ему дурную службу. Очень часто на вопрос новичка отвечает еще более зеленый новичок, давая совершенно неправильный ответ. Однако профессионалов там тоже предостаточно, готовых объяснить ошибки и первому и второму.

PHP представлен и в русскоязычном сегменте Livejournal
В сообществах К сожалению, и так-то не блиставшие качеством материала, они давно заброшены своими авторами и окончательно потеряли актуальность.
Все, что есть лучшего по теме PHP, перечислено вверху страницы.
Если вы знаете хороший сайт - напишите о нем в разделе "Обратная связь".

Большинство современных веб приложений взаимодействуют с базами данных, обычно, с помощью языка под названием SQL. К счастью для нас, этот язык очень легко выучить. В этой статье мы рассмотрим простые SQL запросы и научимся их использовать для взаимодействия с MySQL базой данных.

Что Вам потребуется?

SQL (Structured Query Language) язык специально разработанный для взаимодействия с системами управления баз данных, таких как MySQL, Oracle, Sqlite и прочие... Для выполнения SQL запросов в этой статье я советую Вам установить MySQL на локальный компьютер. Также я рекомендую использовать phpMyAdmin в качестве визуального интерфейса.

Все это имеется во всеми любимом Денвере. Думаю, каждый должен знать, что это и где это взять:). Можно еще использовать WAMP или MAMP.

В денвере есть встроенная MySQL консоль. Ей мы и будем пользоваться.

CREATE DATABASE: создание базы данных

Вот и наш первый запрос. Мы создадим нашу первую БД для дальнейшей работы.

Для начала, откройте MySQL консоль и залогиньтесь. Для WAMP пароль по умолчанию пустой. То есть ничего:). Для MAMP - "root". Для Денвера необходимо уточнить.

После логина введите следующую строку и нажмите Enter:

CREATE DATABASE my_first_db;

Заметьте, что точка с запятой (;) добавляется в конце запроса, так же как и в других языках.

Также команды в SQL чувствительны к регистру. Пишем их большими буквами.

Опци онально: Character Set и Collation

Если Вы хотите установить character set (набор символов ) и collation (сравнение ) можно написать следующую команду:

CREATE DATABASE my_first_db DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

Находится список наборов символов, которые поддерживаются в MySQL.

SHOW DATABASES: выводит список всех БД

Эта команда используется для вывода всех имеющихся БД.

DROP DATABASE: удаление БД

Вы можете удалить существующую БД с помощью этого запроса.

Будьте осторожны с этой командой, так как она выполняется без предупреждения. Если в Вашей БД есть данные, они будут все удалены.

USE: Выбор БД

Технически это не запрос, а оператор и он не требует точки с запятой в конце.

Он сообщает MySQL выбрать БД для работы по умолчанию для текущей сессии. Теперь мы готовы создавать таблицы и делать прочие вещи с БД.

Что же такое таблица в БД?

Вы можете представить таблицу в БД в виде Excel файла.

Также как и на картинке, у таблиц есть названия колонок, ряды и информация. С помощью SQL запросов мы можем создавать такие таблицы. Мы также можем добавлять, считывать, вносить обновления и удалять информацию.

CREATE TABLE: Создание таблицы

C помощью этого запроса мы можем создавать таблицы в БД. К сожалению, документация MySQL не очень понятна для новичков по этому вопросу. Структура этого типа запросов может быть очень сложной, но мы начнем с легкой.

Следующий запрос создаст таблицу с 2-мя колонками.

CREATE TABLE users (username VARCHAR(20), create_date DATE);

Обратите внимание, что мы можем писать наши запросы в несколько строк и с табуляциями для отступов.

Первая строка простая. Мы просто создаем таблицу с названием "users ". Далее в скобках, через запятую, идет список всех колонок. После каждого названия колонки у нас идут типы информации, такие как VARCHAR или DATE.

VARCHAR(20) означает, что колонка имеет тип строки и может быть максимум 20 символов в длину. DATE также тип информации, который используется для хранения дат в таком формате: "ГГГГ - ММ-ДД ".

PRIMARY KEY ( первичный клю ч)

Перед тем как мы выполним следующий запрос, мы также должны включить колонку для "user_id ", которая будет нашим первичным ключом. Вы можете воспринимать PRIMARY KEY как информацию, которая используется для идентифицирования каждого ряда таблицы.

CREATE TABLE users (user_id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(20), create_date DATE);

INT делает 32 битный целый тип (например, числа). AUTO_INCREMENT автоматически генерирует новое значение ID каждый раз, когда мы добавляем новые ряды информации. Это не обязательно, но делает весь процесс проще.

Эта колонка не обязательна должна быть целым значением, но оно чаще всего используется. Наличие Первичного Ключа также не является обязательным, однако рекомендуется для архитектуры и производительности БД.

Давайте выполним запрос:

SHOW TABLES: показать все таблицы

Этот запрос позволяет получить список таблиц, которые находятся в БД.

EXPLAIN: Показать структуру таблиц

Для показа структуры существующей таблицы Вы можете пользоваться этим запросом.

Колонки отображаются со всеми свойствами.

DROP TABLE: удалить таблицу

Также как и DROP DATABASES, этот запрос удаляет таблицу и ее содержание без предупреждения.

ALTER TABLE: изменить таблицу

Этот запрос также может содержать сложную структуру из-за большего количестве изменений, который он может сделать с таблицей. Давайте посмотрим на примеры.

(если Вы удалили таблицу в прошлом шаге, создайте ее снова для тестов)

ДОБАВЛЕНИЕ КОЛОНКИ

ALTER TABLE users ADD email VARCHAR(100) AFTER username;

Благодаря хорошей читабельности SQL, я думаю, что нет смысла ее подробно объяснять. Мы добавляем новую колонку "email " после "username ".

УДАЛЕНИЕ КОЛОНКИ

Это было также очень легко. Используйте этот запрос с осторожностью, так как можно удалить данные без предупреждения.

Восстановите только что удаленную колонку для дальнейших экспериментов.

ВНЕСЕНИЕ ИЗМЕНЕНИЯ В КОЛОНКУ

Иногда Вы можете захотеть внести изменения в свойства колонки, и Вам не надо ее полностью удалять для этого.

Этот запрос переименовал колонку пользователь в "user_name " и изменил ее тип с VARCHAR(20) на VARCHAR(30). Такое изменение не должны изменить данные в таблице.

INSERT: Добавление информации в таблицу

Давайте добавим некоторую информацию в таблицу используя следующий запрос.

Как Вы можете увидеть, VALUES () содержит список значений, разделенных запятыми. Все значения заключены в одинарные колонки. И значения должны быть в порядке колонок, которые были определены при создании таблицы.

Заметьте, что первое значение NULL для поля PRIMARY KEY под названием "user_id ". Мы делаем это для того, чтобы ID было сгенерировано автоматически, так как колонка имеет свойство AUTO_INCREMENT. Когда информация добавляется первый раз ID будет 1. Следующий ряд - 2, и так далее...

АЛЬТЕРНАТИВНЫЙ ВАРИАНТ

Есть еще один вариант запроса для добавления рядов.

В этот раз мы используем ключевое слово SET вместо VALUES, и у него нет скобок. Есть несколько нюансов:

Колонку можно пропустить. К примеру, мы не присвоили значение для "user_id ", которое по умолчанию получит свое AUTO_INCREMENT значение. Если Вы пропустите колонку с типом VARCHAR, тогда будет добавлено пустая строка.

К каждой колонке необходимо обращаться по имени. Из за этого их можно упоминать в любом порядке, в отличии от прошлого варианта.

АЛЬТЕРНАТИВНЫЙ ВАРИАНТ 2

Вот еще вариант.

Опять же, поскольку есть упоминания названия колонки, можно задавать значения в любом порядке.

LAST_INSERT_ID()

Вы можете использовать этот запрос для получения ID, которое было AUTO_INCREMENT для последнего ряда текущей сессии.

NOW()

Теперь настало время показать, как Вы можете использовать функцию MySQL в запросах.

Функция NOW() выводит текущую дату. Так что Вы можете использовать ее для автоматического установления даты колонки на текущую при вставке нового ряда.

Заметьте, что мы получили 1 предупреждение, но не обращайте на него внимания. Причина этому то, что NOW() также служит для вывода временной информации.

SELECT: Чтение данных из таблицы

Если мы добавляем информацию в таблицу значит логично было бы научиться ее оттуда считывать. Именно в этом нам и поможет запрос SELECT.

Ниже представлен самый простой возможный запрос SELECT для чтения таблицы.

В этом случае звездочка (*) означает то, что мы запросили все поля из таблицы. Если Вы хотите только определенные колонки, запрос будет выглядеть так.

Условие WHERE

Чаще всего мы заинтересованы не во всех колонках, а только в некоторых. К примеру, давайте предположим, что нам необходимы только электронный адрес для пользователя "nettuts ".

WHERE позволяет устанавливать условия в запросе и делать подробные выборки.

Заметьте, что для равенства использоваться один знак равно (=), а не два, как в программировании.

Вы можете также использовать сравнения.

AND или OR могут быть использованы для объединения условий:

Заметьте, что числовые значения не должны находиться в кавычках.

IN()

Это полезно для выборки по нескольким значениям

LIKE

Позволяет делать "wildcard" запросы

Значок % используется в качестве "wildcard". То есть на его месте может быть что-угодно.

Условие ORDER BY

Если Вы хотите получить результат в упорядоченном виде по какому либо критерию

Порядок по умолчанию ASC (от меньшегок большему). Для обратного используется DESC.

LIMIT ... OFFSET ...

Вы можете ограничить количество полученных результатов.

LIMIT 2 берет только 2 первых результата. LIMIT 1 OFFSET 2 получает 1 результат после первых 2-х. LIMIT 2, 1 означает тоже самое (только обратите внимание сначала идет offset а потом limit ).

UPDATE: Внести изменения в информацию в таблице

Этот запрос используется для изменения информации в таблице.

В большинстве случаев он используется вместе с условием WHERE, так как Вы скорее всего захотите внести изменения в определенные колонки. Если не будет условия WHERE изменения затронут все ряды.

Вы также можете использовать LIMIT для ограничения количества рядов, в которые необходимо внести изменения.

DELETE: Удаление информации из таблицы

Также как и UPDATE, этот запрос используется с WHERE:

Для удаления содержания таблицы можно сделать просто так:

DELETE FROM users;

Но лучше использовать TRUNCATE

Кроме удаления этот запрос также сбрасывает значения AUTO_INCREMENT и при добавлении рядов снова, отсчет начнется с нуля. DELETE такого не делает и отсчет продолжается.

Отключение Строчных Значений и Специальных Слов

Строчные значения

Некоторые символы необходимо отключать (escape), или же могут быть проблемы.

Для этого используется задний слеш (\).

Специальные слова

Поскольку в MySQL есть много специальных слов (SELECT или UPDATE), чтобы избежать ошибок при их использовании необходимо использовать кавычки. Но не обычные кавычки, а вот такие (`).

То есть Вам необходимо будет добавить колонку с именем " delete", это необходимо сделать так:

Заключение

Спасибо, что дочитали до конца. Надеюсь, Вам эта статья была полезна. Это еще не конец! Будет продолжение:).

В MySQL начало работы — это прежде всего авторизация, создание базы данных и таблиц, а также наполнение таблиц данными. Изначально информацию можно добавлять выполняя запросы к серверу баз данных или, например, импортируя данные из текстовых документов. Именно таким образом будут загружены данные из документов в таблицы REAL_ESTATE и PEOPLE .

Данный материал — продолжение .

MySQL начало работы и импорт данных

mysql -h host -u user -p

Enter password: ********

Также можно вводить пароль сразу

mysql -h host -u user -pPASSWORD

Между ключем -p и самим паролем при этом не должно быть пробела, иначе пароль будет воспринят как имя базы данных. Этот вариант плох тем, что пароль останется в history и его можно будет посмотреть в дальнейшем.

Основы работы с MySQL

Любой запрос (за исключением USE , QUIT и еще нескольких) должен завершаться точкой с запятой. Запрос может быть разнесен на несколько строк и будет выполнен только после введения точки с запятой

SELECT
-> *
-> FROM
-> gebwoocommerce_api_keys
-> ;
Empty set (0.01 sec)

MariaDB >

От выполнения запроса можно отказаться после введения введения нескольких строк выполнив \c

SELECT
-> *
-> FROM
-> gebwoocommerce_api_keys
-> \c

По тому каким образом выглядит приглашение MySQL можно понять состояние выполнения запроса и то, что именно ожидает сервер от администратора

(или вариации: mysql> , MariaDB> ) Ожидается ввод

2) ->

Ожидается следующая строка запроса длиной в несколько строк

3) ">

Ожидается следующая строка запроса длиной в несколько строк в случае если запрос начат с одинарной кавычки

4) «>

Ожидается следующая строка запроса длиной в несколько строк в случае если запрос начат с двойной кавычки

Ожидается следующая строка запроса длиной в несколько строк в случае если запрос начат с backtick (“`”)
6) /*>

Ожидается следующая строка запроса длиной в несколько строк в случае если запрос начат со знака комментария /*

Создание базы данных MySQL и ее наполнение данными

Работать от имени пользователя root не желательно, лучшим решением является

Например, добавим пользователя user (в тестовой среде можно работать и от имени root). Авторизовавшись в консоли MySQL создаем базу данных и таблицы

CREATE DATABASE REAL_ESTATE_AGENCY;

Query OK, 1 row affected (0.00 sec)

+——————————+
| Database |
+——————————+
| information_schema |
| mysql |
| performance_schema |
| REAL_ESTATE_AGENCY |
+——————————+
4 rows in set (0.03 sec)

Database change

CREATE TABLE REAL_ESTATE (type VARCHAR(20), city VARCHAR(20), floorspace INT, district VARCHAR(20), street VARCHAR(20), rentorsale VARCHAR(20), PRICE VARCHAR (20));

CREATE TABLE PEOPLE (name VARCHAR(20), profession VARCHAR(20), age INT, city VARCHAR(20), district VARCHAR(20), rentorsale VARCHAR(20), PRICE VARCHAR (20));

Query OK, 0 rows affected (0.01 sec)

+——————————+
| Tables_in_REAL_ESTATE_AGENCY |
+——————————+
| PEOPLE |
| REAL_ESTATE |
+——————————+
2 rows in set (0.00 sec)

Информацию о структуре таблицы и всех существующих столбцах и колонках можно получить выполнив команду DESCRIBE

+————+————-+——+——+———+——-+
| Field | Type | Null | Key | Default | Extra |
+————+————-+——+——+———+——-+
| type | varchar(20) | YES | | NULL | |
| city | varchar(20) | YES | | NULL | |
| floorspace | int(11) | YES | | NULL | |
| district | varchar(20) | YES | | NULL | |
| street | varchar(20) | YES | | NULL | |,

| rentorsale | varchar(20) | YES | | NULL | |
| PRICE | varchar(20) | YES | | NULL | |
+————+————-+——+——+———+——-+
7 rows in set (0.00 sec)

Вывести все содержимое таблицы можно с помощью самого общего SELECT запроса (этот вид запросов используется чаще всего и будет подробно рассмотрен в дальнейшем)

SELECT * FROM REAL_ESTATE;

Empty set (0.00 sec)

Данных сейчас нет — наполним таблицы. Делать это можно выполняя UPDATE-ы с необходимыми значениями или загружая данные из тексовых документов. На этапе первоначальной загрузки второй способ гораздо удобнее. Воспользуемся им.

Загрузка данных в таблицы MySQL

Сохраняем информацию в /tmp/real_estate.txt — значения в столбцах разделяем табуляцией. После этого в консоли загружаем данные предварительно выбрав таблицу.

Может возникнуть следующая ошибка.

ERROR 1148 (42000): The used command is not allowed with this MySQL version

Если ошибка возникает к MySQL нужно подключаться с опцией —local-infile=1 :

mysql —local-infile=1 -u root -p

LOAD DATA LOCAL INFILE "/tmp/real_estate.txt" INTO TABLE REAL_ESTATE;

Query OK, 13 rows affected (0.00 sec)
Records: 13 Deleted: 0 Skipped: 0 Warnings: 0

Результаты SELECT теперь выглядят иначе:

SELECT * FROM REAL_ESTATE;


Если для какого-то столбца и ряда нужно значение NULL в текстовом документе оно должно быть представлено как \N. В MySQL начало работы с базами и таблицами выглядит именно так. Далее рассмотрим основы использования .

Если вы хотите разобраться в технической терминологии легко и без разочарований - вы попали по адресу. Мы делаем простым, и делаем всё возможное, чтобы объяснить это простым языком. Итак, что такое MySQL? Давайте разберёмся прямо сейчас.

Что такое MySQL?

Прежде всего, вы должны знать, как это произносится: MY-ES-KYOO-EL ’[май-эс-кью-эл]. Вы можете услышать и другие варианты произношения, но, по крайней мере теперь, вы знаете официальное произношение. Шведская компания MySQL AB первоначально разработала MySQL в 1994 году. Тогда американская технологическая компания Sun Microsystems полностью приобрела право собственности, купив MySQL AB в 2008 году. Американский технологический гигант Oracle в 2010 году приобрёл Sun Microsystems, а с тех пор MySQL практически принадлежала Oracle.

Что касается общего определения, MySQL это система управления реляционными базами данных с открытым исходным кодом (СУРБД) с моделью клиент-сервер. СУРБД - это программное обеспечение или служба, используемая для создания и управления базами данных на основе реляционной модели. Теперь давайте подробнее рассмотрим каждый термин:

База данных

База данных - это просто набор структурированных данных. Например, когда вы делаете селфи: вы нажимаете кнопку и фотографируете себя. Ваша фотография - это данные, а галерея вашего телефона - это база данных. База данных - это место, в котором хранятся данные. Слово “реляционный” означает, что данные, хранящиеся в наборе данных, организованы в виде таблиц. Каждая таблица связана в некотором роде. Если программное обеспечение не поддерживает реляционную модель данных, просто назовите её СУБД.

Открытый исходный код

Открытый исходный код означает, что вы можете свободно использовать и изменять его. Любой может установить программное обеспечение. Вы также можете изучить и настроить исходный код, чтобы он лучше соответствовал вашим потребностям. Однако GPL (GPU Public License) определяет, что именно вы можете сделать в зависимости от условий. Коммерческая лицензированная версия доступна, если вам нужно более гибкое владение и расширенная поддержка.

Модель клиент-сервер

Компьютеры, которые устанавливают и запускают программное обеспечение СУРБД, называются клиентами. Когда им нужно получить доступ к данным, они подключаются к серверу СУРБД. Это система “клиент-сервер”.

MySQL является одним из многих вариантов программного обеспечения СУРБД. Считается, что СУРБД и MySQL одинаковы из-за популярности MySQL. Назовите несколько крупных веб-приложений , таких как Facebook, Twitter, YouTube, Google и Yahoo! все используют MySQL для хранения данных. Хотя изначально он создавался для ограниченного использования, теперь он совместим со многими важными вычислительными платформами, такими как Linux, macOS, Microsoft Windows и Ubuntu.

SQL

Помните, что MySQL является одной из самых популярных торговых марок программного обеспечения СУРБД, которая реализует модель клиент-сервер. Итак, как клиент и сервер взаимодействуют в среде СУРБД? Они используют специфичный для домена язык - язык структурированных запросов (SQL). Если вы когда-либо сталкивались с другими именами, в которых есть SQL, такими как PostgreSQL и сервер Microsoft SQL, они, скорее всего, являются брендами, которые также используют синтаксис SQL. Программное обеспечение СУРБД часто пишется на других языках программирования, но всегда использует SQL в качестве основного языка для взаимодействия с базой данных. Сам MySQL написан на C и C ++. Подумайте о странах Южной Америки, все они географически различны и имеют разную историю, но все они в основном говорят по-испански.

Инженер-компьютерщик Тед Кодд разработал SQL в начале 1970-х годов на основе реляционной модели IBM. Он стал более широко использоваться в 1974 году и быстро заменил аналогичные, тогда устаревшие языки, ISAM и VISAM. Помимо истории, SQL сообщает серверу, что делать с данными. Это похоже на ваш пароль или код WordPress. Вы вводите его в систему, чтобы получить доступ к области панели управления. В этом случае операторы SQL могут указать серверу выполнить определённые операции:

  • Запрос данных: запрос конкретной информации из существующей базы данных.
  • Обработка данных: добавление, удаление, изменение, сортировка и другие операции для изменения данных, значений или визуальных элементов.
  • Идентификация данных: определение типов данных, например, изменение числовых данных в целые числа. Это также включает определение схемы или взаимосвязи каждой таблицы в базе данных.
  • Контроль доступа к данным: обеспечение методов безопасности для защиты данных, в том числе принятие решения о том, кто может просматривать или использовать любую информацию, хранящуюся в базе данных.

Как работает MySQL?

Изображение объясняет базовую структуру клиент-сервер. Одно или несколько устройств (клиентов) подключаются к серверу через определённую сеть. Каждый клиент может сделать запрос из графического интерфейса пользователя (GUI) на своих экранах, и сервер выдаст желаемый результат, если оба конца понимают инструкцию. Не вдаваясь в технические аспекты, основные процессы, происходящие в среде MySQL, одинаковы:

  1. MySQL создаёт базу данных для хранения и управления данными, определяющими отношения каждой таблицы.
  2. Клиенты могут делать запросы, вводя определённые команды SQL на MySQL.
  3. Приложение сервера ответит запрошенной информацией и появится на стороне клиента.

Вот и всё. Клиенты обычно указывают, какой MySQL GUI использовать. Чем легче и удобнее графический пользовательский интерфейс, тем быстрее и проще будут выполняться операции по управлению данными. Некоторыми из самых популярных графических интерфейсов MySQL (англ) являются MySQL WorkBench, SequelPro, DBVisualizer и Navicat DB Admin Tool. Некоторые из них бесплатны, некоторые коммерческие, некоторые работают исключительно для macOS, а некоторые совместимы с основными операционными системами. Клиенты должны выбирать графический интерфейс в зависимости от своих потребностей. Для управления базами данных, в том числе на сайте , наиболее очевидным подходом является phpMyAdmin.

Почему MySQL так популярен?

MySQL действительно не единственная СУРБД на рынке, но она является одной из самых популярных и уступает только Oracle Database, когда оценивается с использованием таких важных параметров, как количество упоминаний в результатах поиска, профессиональных профилей в LinkedIn и частоты технических дискуссий на интернет-форумах. Тот факт, что многие крупные технологические гиганты полагаются на него, ещё больше укрепляет заслуженную позицию. Почему так? Вот причины:

Гибкость и простота в использовании

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

Высокая производительность

Широкий спектр кластерных серверов поддерживает MySQL. Независимо от того, храните ли вы большие объёмы данных электронной коммерции или выполняете тяжелую бизнес-аналитику, MySQL может помочь вам с оптимальной скоростью.

Промышленный стандарт

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

Безопасность

Безопасность ваших данных должна быть вашей главной задачей при выборе правильного программного обеспечения СУРБД. С помощью системы доступа и управления учётными записями MySQL устанавливает высокий уровень безопасности. Доступна проверка на основе хоста и шифрование пароля.

Теперь вы знаете, что такое MySQL. У вас уже есть опыт использования MySQL? Пожалуйста, дайте мне знать, оставив комментарий ниже или , на Hostinger.