Как работать mysql на windows
Серверу MySQL, чтобы подключиться к нему, нужно передать 4 параметра:
Подключаться к серверу нужно с помощи команды:
Выбирать конкретную Базу данных:
Закрыть подключение нужно командой:
И соответственно полный пример подключения, выбирание нужной таблицы и закрытие подключеиния :
$msconnect = mysql_connect($mshost, $msuser, $mspassword);
Создание таблиц. Заполнение информацией БД
Вот мы подключились к серверу MySQL и выбрали БД. Что дальше? Дальше нужно создать новую таблицу. Управления БД в MySQL управляется с помощью специального языка запросов SQL. Поначалу он кажется страшным, непонятным и сложным, но через некоторое время при активной работе с БД вы сможете легко читать самые сложные с виду SQL-запросы (сам так же путался в начале..). Начнем.
Передача SQL запроса БД . Для этого существует единственная команда:
Попробуем создать таблицу . Для этого передадим серверу такой SQL запрос:
Можно создавать сколько угодно полей. Заместо ТипПоля1 пишется:
Добавление информации в БД
Для этого существует та же команда, только другой SQL-запрос:
Думаю, здесь никаких сложностей не возникнет. Единственное, значения поля с типом TEXT вводить в одинарных кавычках. И, как всегда, пример:
Изменение информации в БД
Для этого используется такая команда:
$msconnect = mysql_connect($mshost, $msuser, $mspassword);
В итоге у нас появится новая таблица test_zero, в которой будет одна запись.
Получение информации из БД.
Допустим, у нас большущая БД, в которой хранятся сотни записей. Как же эти записи получить? Очень просто:
while($row=mysql_fetch_array($res))
$num=$row[ num ];
$title=$row[ title ];
$text=$row[ text ];
Условия получения информации из БД
Когда в таблице сотни записей, получать все не всегда целесообразно. Для этого вводят какое либо условие:
lИх так же достаточно много, это основные.
Это так же основные.
Пример вытаскивания из таблицы записей, номер которых больше 10:
И, так сказать, итоговый пример применения БД:
$msconnect = mysql_connect($mshost, $msuser, $mspassword);
while($row=mysql_fetch_array($res))
$num=$row[ num ];
$title=$row[ title ];
$text=$row[ text ];
Каждый, кто поставил перед собой цель освоить веб-технологии рано или поздно нужно будет освоить язык SQL — язык структурированных запросов, применяемый для создания и управления данными в реляционных базах данных. Если говорить о современном веб-приложении, то сегодня практически каждое приложение взаимодействует с СУБД — система управления базой данных.
Самое популярное СУБД для работы с веб-приложениями — MySQL. Сегодня практически все веб-сайты, которые работают в сети взаимодействуют с СУБД MySQL. Конечно MySQL не единственное СУБД, есть ряд других, но сложилось так, что самое популярное. Поэтому разработчикам веб-приложений необходимо освоить СУБД MySQL и язык SQL.
Не нужно покупать или качать десятки книг, все равно вы их сразу не прочтете, а если уж осилите, то огромного результата не даст. Необходим результат, его мы можем получить только когда будем, что-то делать, а не читать постоянно книги. Читать книги — хорошо, но еще лучше практиковаться, только так мы получаем опыт и навыки.
Выберите, одну толковую книгу по изучении MySQL. Сосредоточьтесь на этой книге, прочтите ее, закрепите каждую главу на практике. Если, что-то слабо усвоилось, практикуйтесь, не бойтесь вернуться и еще несколько раз прочитать и сделать. Рекомендую прочесть книгу Алана Бьюли «Изучаем SQL», лично мне эта книга очень помогла. Книга написана простым языком, для простых людей в книге доступным языком описывается как установить сервер MySQL, как работают операторы, фильтры и т.д. Подробнее об этой книге читайте здесь.
Если нету еще навыков работы с MySQL, нету понимания типов данных и операторов SQL, не рекомендую начинать осваивать в phpMyAdmin. Это не значить, что phpMyAdmin — плохо. Главная задача освоить SQL и MySQL — лучше делать через консольное приложение.
Скачайте с официального сайта бесплатно сервер MySQL, установите его себе на компьютер и работайте. Например: если взять книгу Алана Бьюли «Изучаем SQL» в ней подробный курс SQL и работа с MySQL, все примеры работы через консольное приложение.
Читайте, только одну книгу, не пытайтесь хватать все и сразу, так дело не пойдет, потратите время так ничему и не научитесь. Важно один раз освоить основы и дальше только нужна будет практика, практика и документация MySQL, которая находиться на официальном сайте.
Ваши инструменты: выбранная книга, сервер MySQL, практика, практика и еще раз практика.
Имея опыт работы через консольное приложение, разработчику не составить сложности работать в том же самом phpMyAdmin, ему не составит сложности писать все команды SQL. Это нужно и важно, потому, что управлять и создавать базу данных можно в phpMyAdmin толком и не зная SQL. Но помните SQL — запросы писать нужно будет при разработке веб-приложений, от этого не уйти.
Именно по этой причине я рекомендую начинать обучение SQL и MySQL на консольном приложении.
Добрых дел, дорогой друг! О том, что такое SQL мы уже поговорили . Надеюсь я смог заинтересовать темой, и возникло желание пойти в бой!
Но что нужно, чтобы начать работать с Базами Данных немедленно и написать свой первый запрос? Для начала необходимо настроить рабочее пространство . В этой статье поговорим о том, как поставить среду разработки на компьютере с Операционной Системой Windows, что такое MySQL и почему именно MySQL? Итак поехали.
Что такое MySQL
Первоначально существовала Шведская компания MySQL AB, которая занималась разработкой РСУБД ( реляционной системы управления базами данных ) под названием MySQL в 1994 году. Чуть позднее американская технологическая компания Sun Microsystems полностью приобрела право собственности, купив MySQL AB в 2008 году. Затем другой Американский технологический гигант Oracle в 2010 году приобрёл Sun Microsystems , и с тех пор MySQL принадлежит Oracle .
Почему именно MySQL
Итак, MySQL это система управления реляционными базами данных с открытым исходным кодом (РСУБД) с моделью клиент-сервер. Открытый исходный код означает, что вы можете свободно использовать и изменять его. Любой человек может установить данное программное обеспечение. Однако GPL (GPU Public License) определяет, что именно вы можете сделать в зависимости от условий.
MySQL придерживается модели клиент-сервер. Программное обеспечение, которое входит в комплект установки включает в себя различные пакеты. Если вам нужен только доступ к базе данных, то достаточно иметь клиент-версию. Если вы хотите только обеспечить хранение информации на данном компьютере то нужна сервер-версия. Если вы занимаетесь разработкой базы данных (БД), то необходим полный пакет.
Что из себя представляет модель клиент-сервер? Коротко, можно сделать вывод из вышеописанного. Есть сервер, который хранит БД. Есть клиенты, которым нужна информация из БД. Для того, чтобы получить информацию клиенты составляют запросы (SQL) на сервер, который затем, в свою очередь, на основании запросов возвращает клиентам необходимую информацию.
MySQL одна из самых популярных РСУБД, бесплатна, доступна для всех, имеет хорошее сообщество и документацию, позволяет заниматься разработкой баз данных на любом компьютере т.к. кроссплатформенна. Поэтому будем использовать её.
Где скачать MySQL бесплатно и без регистрации
MySQL поддерживает TCP/IP на всех Windows-системах и именованные каналы в среде NT/2000/XP. По умолчанию MySQL использует именованные каналы для соединений с локальной машиной в среде NT/2000/XP и TCP/IP - во всех остальных случаях, если на клиентской машине установлен TCP/IP. Имя машины определяет используемый протокол:
Имя машины | Протокол |
NULL(отсутствует) | На NT/2000/XP пытается установить соединение через именованные каналы; если это не работает, используется TCP/IP. На 9x/Me используется TCP/IP. |
. | Именованные каналы. |
localhost | Соединение TCP/IP с локальной машиной |
имя удаленной машины | TCP/IP |
Чтобы заставить MySQL-клиента использовать именованные каналы, следует добавить опцию --pipe или задать . в качестве имени машины для соединения. Для определения имени канала используйте опцию --socket . В MySQL 4.1 вам следует использовать опцию --protocol=PIPE .
Отметим, что начиная с версии 3.23.50 именованные каналы применяются только в случае, если mysqld запущен с опцией --enable-named-pipe . Это вызвано тем, что у некоторых пользователей применение именованных каналов приводило к прекращению работы сервера MySQL.
Для проверки работоспособности MySQL нужно выполнить следующие команды:
Если при ответе mysqld на входящие соединения под Windows 9x/Me возникают задержки, то это, скорее всего, вызвано проблемами с вашим DNS. В таком случае следует запускать mysqld с опцией --skip-name-resolve и в таблицах привилегий MySQL использовать только localhost и IP-адреса. Избежать работы с DNS при соединении с MySQL-сервером mysqld-nt , работающим под NT/2000/XP, можно путем применения опции --pipe , которая задает использование именованных каналов. Сказанное выше справедливо для большинства клиентов MySQL.
Существует две версии программы работы с MySQL из командной строки:
Бинарный файл | Описание |
mysql | Собран «родными» средствами Windows, обеспечивает весьма ограниченные возможности редактирования текста. |
mysqlc | Собран с использованием компилятора и библиотек Cygnus GNU, которые обеспечивают редактор readline . |
Если вы хотите использовать mysqlc.exe , сначала необходимо скопировать C:\mysql\lib\cygwinb19.dll в системный каталог Windows ( \windows\system или в другое аналогичное место).
Необходимо также установить пароль для пользователя root . Приведенный ниже пример начинается с удаления возможности анонимного доступа, который может быть использован любым пользователем для установки пароля для пользователя root :
Если вы хотите остановить сервер mysqld после того, как установлен пароль для пользователя root , нужно использовать команду:
В текущей версии MySQL вы можете легко добавлять новых пользователей и изменять их привилегии при помощи команд GRANT и REVOKE (Синтаксис команд GRANT и REVOKE).
Enter password: ********
Также можно вводить пароль сразу
Между ключем -p и самим паролем при этом не должно быть пробела, иначе пароль будет воспринят как имя базы данных. Этот вариант плох тем, что пароль останется в history и его можно будет посмотреть в дальнейшем.
Основы работы с MySQL
Любой запрос (за исключением USE, QUIT и еще нескольких) должен завершаться точкой с запятой. Запрос может быть разнесен на несколько строк и будет выполнен только после введения точки с запятой
От выполнения запроса можно отказаться после введения введения нескольких строк выполнив \c
По тому каким образом выглядит приглашение MySQL можно понять состояние выполнения запроса и то, что именно ожидает сервер от администратора
1) >
( или вариации: mysql>, MariaDB> ) Ожидается ввод
2) ->
Ожидается следующая строка запроса длиной в несколько строк
Ожидается следующая строка запроса длиной в несколько строк в случае если запрос начат с одинарной кавычки
Ожидается следующая строка запроса длиной в несколько строк в случае если запрос начат с двойной кавычки
5)`>
Ожидается следующая строка запроса длиной в несколько строк в случае если запрос начат с backtick (“`”)
6) /*>
Ожидается следующая строка запроса длиной в несколько строк в случае если запрос начат со знака комментария /*
Создание базы данных MySQL и ее наполнение данными
Работать от имени пользователя root не желательно, лучшим решением является создание пользователя с ограниченным доступом
Например, добавим пользователя user (в тестовой среде можно работать и от имени root). Авторизовавшись в консоли MySQL создаем базу данных и таблицы
CREATE DATABASE REAL_ESTATE_AGENCY;
Query OK, 1 row affected (0.00 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));
Query OK, 0 rows affected (0.01 sec)
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)
Информацию о структуре таблицы и всех существующих столбцах и колонках можно получить выполнив команду DESCRIBE
Вывести все содержимое таблицы можно с помощью самого общего SELECT запроса (этот вид запросов используется чаще всего и будет подробно рассмотрен в дальнейшем)
Empty set (0.00 sec)
Загрузка данных в таблицы MySQL
Может возникнуть следующая ошибка.
ERROR 1148 (42000): The used command is not allowed with this MySQL version
Query OK, 13 rows affected (0.00 sec)
Records: 13 Deleted: 0 Skipped: 0 Warnings: 0
Результаты SELECT теперь выглядят иначе:
Если для какого-то столбца и ряда нужно значение NULL в текстовом документе оно должно быть представлено как \N. В MySQL начало работы с базами и таблицами выглядит именно так. Далее рассмотрим основы использования SELECT.
Читайте также: