MySQL - это просто!
Сначала ответим на вопрос - что такое MySQL? Это База Данных (БД), в которой структурировано хранятся данные. Следует второй вопрос - зачем отказываться от простых и удобных файлов к сложной БД? Потому что файлы, генерируемые каким либо скриптом на основе файловой БД (гостевые книги, CMS, форумы), постепенно начинают увеличиваться в размере, а так же их количество неуклонно растет. Поиск сильно затруднен. После преодоления некоторого порога (1000, 10000 файлов..) скрипт начинает жутко тормозить, и приходится подолгу ждать, когда он закончит свою работу. БД лишены этих недостатков - даже если в таблице будет миллион записей, поиск среди них будет идти доли секунды. Так уж они устроены, чтобы манипулировать огромным количеством данных. Но тут и возникает вопрос - а как работать с БД, в данном случае с MySQL? Эта статья как раз об этом.
Подключение к серверу.
Серверу MySQL, чтобы подключиться к нему, нужно передать 4 параметра:
- Хост. Это серовер, на котором расположен сервер MySQL. В абсолютном большинстве хост равен "localhost".
- Имя пользователя. Имя пользователя, который может работать с этой таблицей. На локальных компьютерах по дефолту поставлен "root". На хостинге - в зависимости от вас.
- Пароль. Пароль выбранного пользователя. По умолчания равен пустой строке - "".
- Имя Базы данных. Имя БД, как вы ее назвали. По умолчанию - "test".
Подключаться к серверу нужно с помощи команды:
$msconnect=mysql_connect("Хост", "Пользователь", "Пароль");
Выбирать конкретную Базу данных:
mysql_select_db("Имя базы данных", $msconnect);
Закрыть подключение нужно командой:
mysql_close($msconnect);
И соответственно полный пример подключения, выбирание нужной таблицы и закрытие подключеиния:
$msuser = "root"; // Имя пользователя
$mspassword = ""; // Пароль
$msname = "test"; // Имя базы данных
$msconnect = mysql_connect($mshost, $msuser, $mspassword);
mysql_select_db($msname, $msconnect);
mysql_close($msconnect);
?>
Создание таблиц. Заполнение информацией БД
Вот мы подключились к серверу MySQL и выбрали БД. Что дальше? Дальше нужно создать новую таблицу. Управления БД в MySQL управляется с помощью специального языка запросов SQL. Поначалу он кажется страшным, непонятным и сложным, но через некоторое время при активной работе с БД вы сможете легко читать самые сложные с виду SQL-запросы (сам так же путался в начале..). Начнем.
Передача SQL запроса БД. Для этого существует единственная команда:
mysql_query("SQL-запрос", "подключенная БД");
Попробуем создать таблицу. Для этого передадим серверу такой SQL запрос:
поле2 типполя2, поле3 типполя3)","подключенная БД");
Можно создавать сколько угодно полей. Заместо ТипПоля1 пишется:
- INT - целые числа
- TEXT - текстовая информация
Это 2 основных типа поля. На самом деле их очень много, но перечислять их - займет лишком много места. Итак, разобрались с созданием таблиц. Пример использования:
text TEXT)",$msconnect);
Добавление информации в БД
Для этого существует та же команда, только другой SQL-запрос:
'еще что то в поле2','и напоследок в поле3')", "подключенная БД");
Думаю, здесь никаких сложностей не возникнет. Единственное, значения поля с типом TEXT вводить в одинарных кавычках. И, как всегда, пример:
'Текст статьи')", $msconnect);
Изменение информации в БД
Для этого используется такая команда:
mysql_query("UPDATE название_таблицы SET(поле1='значение1', поле2='значение2')
WHERE выражение", "подключенная БД");
Такой командой мы обновляем записи, указанные в скобках, а данной таблице, если они подходят по какому либо условию (WHERE ...). Это мы рассмотри чуть позже. Сейчас - пример:
WHERE num=1", $msconnect);
Теперь полностью - подключение, создание таблицы, заполнение информации, ее обновление и закрытие подключения:
$mshost = "localhost"; // Хост
$msuser = "root"; // Имя пользователя
$mspassword = ""; // Пароль
$msname = "test"; // Имя базы данных
$msconnect = mysql_connect($mshost, $msuser, $mspassword);
mysql_query("CREATE TABLE test_zero ( num INT, title TEXT,
text TEXT)",$msconnect);
mysql_select_db($msname, $msconnect);
mysql_query("INSERT INTO test_zero VALUES (1, 'Заголовок статьи',
'Текст статьи')", $msconnect);
mysql_query("UPDATE test_zero SET(num='2', title='Заголовок 2')
WHERE num=1", $msconnect);
mysql_close($msconnect);
?>
В итоге у нас появится новая таблица test_zero, в которой будет одна запись.
Получение информации из БД.
Допустим, у нас большущая БД, в которой хранятся сотни записей. Как же эти записи получить? Очень просто:
while($row=mysql_fetch_array($res))
{
$поле1=$row[поле1];
$поле2=$row[поле2];
$поле3=$row[поле3];
}
Командой SELECT мы получаем записи таблицы. Заместо строк "поле1, поле2, поле3" может стоять знак "*", который означает, что нужно читать все поля записей. Можно выбрать только одно поле, которое нужно. Это ускоряет работу БД. Что делает цикл while? Он означает, что пока в таблице есть записи, он будет помещать значения их полей в массив с помощью функции "mysql_fetch_array", а как только записи кончатся, цикл остановится. Чтобы получить из массива данные, можно воспользоваться способом, который я указал в примере. Внутри цикла можно генерировать, к примеру, статьи, вытаскивая данные из БД. Вот пример:
while($row=mysql_fetch_array($res))
{
$num=$row[num];
$title=$row[title];
$text=$row[text];
echo "($num) - $title
$text";
}
Условия получения информации из БД
Когда в таблице сотни записей, получать все не всегда целесообразно. Для этого вводят какое либо условие:
ОПЕРАТОР поле2 знак 'значение'");
Рассмотрим поподробнее строку "поле1 знак 'значение'". Поле1 - название поля, например "title". Знак - логическое выражение, принимает значения:
- = - равно
- > - больше
- < - меньше
- != - не равно
lИх так же достаточно много, это основные.
ОПЕРАТОР - логический оператор:
- AND - логическое "и"
- OR - логическое "или"
Это так же основные.
Пример вытаскивания из таблицы записей, номер которых больше 10:
И, так сказать, итоговый пример применения БД:
$msuser = "root"; // Имя пользователя
$mspassword = ""; // Пароль
$msname = "test"; // Имя базы данных
$msconnect = mysql_connect($mshost, $msuser, $mspassword);
mysql_query("CREATE TABLE test_zero ( num INT, title TEXT,
text TEXT)",$msconnect);
mysql_select_db($msname, $msconnect);
mysql_query("INSERT INTO test_zero VALUES (1, 'Заголовок статьи',
'Текст статьи')", $msconnect);
mysql_query("UPDATE test_zero SET(num='2', title='Заголовок 2')
WHERE num=1", $msconnect);
mysql_close($msconnect);
$res=mysql_query("SELECT * FROM test_zero");
while($row=mysql_fetch_array($res))
{
$num=$row[num];
$title=$row[title];
$text=$row[text];
echo "($num) - $title
$text";
}
?>
Ну вот и все! Конечно, это очень простой пример, но позволит вам научится простейшие работе с БД. На основе полученных знаний можно сделать гостевую книгу, скрипт выводящий новости, систему статистики и т.д.
Если бы мне попалась эта статья пораньше - я бы не стал ее писать. Когда я еще не знал MySQL, я перерыл статей 10. Достаточно быстро научился создавать таблицы и заполнять их. А вывести не получалось. Пришлось практически методом тыка учится. специально для этого я и написал эту статью.
P.S: На оформление этой статьи ушло примерно в три раза больше времени, чем на ее написания. При оформлении я более 50 раз перезагружал статью. Вот так то :).


Дайджест новых статей по интернет-маркетингу на ваш email
Новые статьи и публикации
- 2025-03-14 » SPF-запись
- 2025-03-07 » SEO на маркетплейсах: как оптимизировать карточку товара для поисковой выдачи
- 2025-02-18 » Топ-10 бесплатных нейросетей для генерации изображений: лучшие ии генераторы 2024 года
- 2025-02-11 » Критическая уязвимость в 1С-Битрикс
- 2025-02-11 » Google Search Console: руководство для начинающих вебмастеров
- 2025-02-11 » Методы измерения результативности рекламных кампаний: плюсы и минусы
- 2025-02-11 » Тренды SEO в 2025 году
- 2025-02-10 » Свой Google в локалке. Ищем иголку в стоге сена
- 2025-01-29 » SEO — это комплексная работа. Шесть главных факторов ранжирования сайтов
- 2025-01-29 » Гайд для главной страницы e-commerce сайта: как оформить, чтобы повысить конверсию
- 2025-01-20 » Krea AI выпустила бесплатную функцию преобразования изображений в 3D-объекты — их можно вращать и вписывать в фотографии
- 2025-01-15 » Топ-6 лучших российских нейросетей, в которых можно генерировать тексты и изображения бесплатно и без VPN
- 2025-01-14 » 15 бесплатных способов узнать, чем интересуется ваша аудитория
- 2025-01-11 » Бездепозитные бонусы в казино за регистрацию с выводом: особенности и возможности получения
- 2025-01-09 » Новая модель LAM способна выполнять задачи в Word
- 2024-12-26 » Универсальный промпт для нейросети: как выжать максимум из ChatGPT, YandexGPT, Gemini, Claude в 2025
- 2024-11-26 » Капитан грузового судна, или Как начать использовать Docker в своих проектах
- 2024-11-26 » Обеспечение безопасности ваших веб-приложений с помощью PHP OOP и PDO
- 2024-11-22 » Ошибки в Яндекс Вебмастере: как найти и исправить
- 2024-11-22 » Ошибки в Яндекс Вебмастере: как найти и исправить
- 2024-11-15 » Перенос сайта на WordPress с одного домена на другой
- 2024-11-08 » OSPanel 6: быстрый старт
- 2024-11-08 » Как установить PhpMyAdmin в Open Server Panel
- 2024-09-30 » Как быстро запустить Laravel на Windows
- 2024-09-25 » Next.js
- 2024-09-05 » OpenAI рассказал, как запретить ChatGPT использовать содержимое сайта для обучения
- 2024-08-28 » Чек-лист: как увеличить конверсию интернет-магазина на примере спортпита
- 2024-08-01 » WebSocket
- 2024-07-26 » Интеграция с Яндекс Еда
- 2024-07-26 » Интеграция с Эквайринг
"Самый чепуховый и бесперспективный проект, но уже запущенный и работающий в Сети, принесет гораздо больше результатов и прибыли, чем самый совершенный проект, который из-за своего постоянного предстартового совершенствования никогда не будет запущен." |
Мы создаем сайты, которые работают! Профессионально обслуживаем и продвигаем их , а также по всей России и ближнему зарубежью с 2006 года!
Как мы работаем
Заявка
Позвоните или оставьте заявку на сайте.
Консультация
Обсуждаем что именно Вам нужно и помогаем определить как это лучше сделать!
Договор
Заключаем договор на оказание услуг, в котором прописаны условия и обязанности обеих сторон.
Выполнение работ
Непосредственно оказание требующихся услуг и работ по вашему заданию.
Поддержка
Сдача выполненых работ, последующие корректировки и поддержка при необходимости.
Или напишите нам в WhatsApp
Или напишите нам в WhatsApp