php создание таблицы mysql
PHP Создание таблиц MySQL
В этом уроке вы узнаете, как создавать таблицы в базе данных MySQL с помощью PHP.
Создание таблиц с помощью SQL
В предыдущем уроке мы узнали, как создать базу данных на сервере MySQL. Шаги по созданию таблицы аналогичны созданию баз данных. Разница в том, что вместо создания новой базы данных мы подключимся к существующей базе данных и создадим таблицу в этой базе данных. Для подключения к существующей базе данных мы можем передать дополнительную переменную «имя базы данных» при подключении к MySQL.
Теперь пришло время создать таблицу внутри базы данных, которые фактически будут хранить данные. Информация в таблице организована в строки и столбцы.
За оператором CREATE TABLE следует имя создаваемой таблицы, за которым следует список имен и определений каждого столбца таблицы, разделенный запятыми.
Мы создадим таблицу с именем «persons» и столбцами: «id», «first_name», «last_name» и «email»:
После выбора базы данных в следующем примере создается таблица с именем «persons» и столбцами: «id», «first_name», «last_name» и «email». В first_name, last_name и email столбцы должны содержать значение (т.е. NOT NULL). Столбец id имеет целочисленное значение, которое имеет автоматическое приращение (AUTO_INCREMENT):
Пояснения к таблице:
Обратите внимание, что за каждым именем поля следует объявление типа данных — это объявление указывает, какой тип данных может содержать столбец, будь то целое число, строка, дата и т.д.
В таблице выше используются следующие типы данных:
После типа данных вы можете указать другие необязательные атрибуты для каждого столбца:
Каждая таблица должна иметь столбец первичного ключа (в данном случае столбец «id»). Его значение должно быть уникальным для каждой записи в таблице.
Понимание значений NULL и NOT NULL
Если для столбца указано значение NULL, то в базу данных можно добавить строку, если этому столбцу не присвоено значение. И наоборот, если столбец определен как NOT NULL, то перед добавлением строки в таблицу ему должно быть присвоено значение.
Первичный ключ PRIMARY KEY
Первичный ключ — это столбец, используемый для идентификации отдельных записей в таблице. Значение столбца первичного ключа должно быть уникальным в контексте таблицы, в которой он существует, или, если несколько столбцов объединены, чтобы составить первичный ключ, комбинация значений ключа должна быть уникальной для каждой строки.
Первичный ключ определяется с помощью оператора PRIMARY KEY во время создания таблицы. Если используется несколько столбцов, они разделяются запятыми:
Автоматическое приращение AUTO_INCREMENT
AUTO_INCREMENT — одно из самых простых, но наиболее полезных определений столбцов в языке SQL. По сути, когда столбец определяется с помощью AUTO_INCREMENT, значение столбца автоматически увеличивается каждый раз, когда в таблицу добавляется новая строка. Это особенно полезно при использовании столбца в качестве первичного ключа. Используя AUTO_INCREMENT, нет необходимости писать операторы SQL для вычисления нового уникального идентификатора для каждой строки. Все это обрабатывается сервером MySQL при добавлении строки.
При использовании AUTO_INCREMENT необходимо соблюдать два правила. Во-первых, статус AUTO_INCREMENT может быть присвоен только одному столбцу в таблице. Во-вторых, столбец AUTO_INCREMENT должен быть проиндексирован (например, объявлен как первичный ключ).
Можно переопределить значение AUTO_INCREMENT столбца, просто указав значение при выполнении оператора INSERT. Пока указанное значение является уникальным, предоставленное значение будет использоваться в новой строке, а последующие приращения начнутся с вновь вставленного значения.
MySQL может быть запрошен для получения самого последнего значения приращения, используя функцию last_insert_id() следующим образом:
Создание таблиц БД в трех различных версиях
Теперь, когда мы понимаем SQL-запрос, давайте воспользуемся PHP для его выполнения.
Ниже описано создание таблиц в трех различных версиях: с использованием синтаксиса объектно-ориентированной процедуры MySQLi, процедурный MySQLi и процедуры PDO.
MnogoBlog
как создать сайт на wordpress, настроить и оптимизировать wordpress
Создаём и редактируем таблицы MySQL с помощью PHP
Здравствуйте, сегодня будем создавать таблицу MySQL, заполнять её данными, научимся извлекать данные из таблицы, изменять их и удалять.
Для тестирования нижеуказанного кода можно использовать плагин – Hello (скачать данный плагин по этой ссылке) – в нем нижеуказанный код закомментирован (с помощью /* и */).
Можете установить и активировать плагин hello, далее зайти в админке в пункт “Плагины”, подпункт “Редактор”, выбрать плагин hello, разкомментировать нужный код и протестировать изменения с помощью phpMyAdmin.
Грамотно разработанный сайт залог успеха Вашего бизнеса в Сети. Чтобы создать сайт, который будет корректно представлять ваш бренд нужно обратиться к профессионалам своего дела –
здесь на базе платформы «1С-Битрикс» Вам помогут создать и осуществить продвижения сайта любой сложности.
1. Создаём таблицу MySQL:
1.1. Подключаемся к базе данных MySQL:
Вот мой тестовый сайт со следующими данными:
Вставляем данные в код и получим следующее:
1.2. Добавим новую таблицу в существующую базу данных MySQL:
Создадим новую таблицу “store_details”.
В таблице будет 4 столбца:
ID – этот столбец будет первичным ключом для таблицы
store_name
store_owner
store_country
Для столбца ID будет использоваться целочисленный тип данных (тип int), в то время как остальные столбцы будут установлены на строковый тип данных, а именно – varchar(255) – по желанию можете установить другие типы.
Vы добавили таблицу с названием store_details в нашу базу данных MySQL, теперь если мы зайдем в phpMyAdmin:
, то увидим, что появилась новая таблица store_details:
, давайте же приступим к её наполнению.
2. Вставляем данные в таблицу базы данных MySQL с помощью PHP:
2.1. Проверяем подключение к базе данных:
2.2. Вставляем данные в таблицу:
Добавим в таблицу store_details новую строку со следующими данными для столбцов:
MyShop (столбец store_name)
Kostya (столбец store_owner)
Russia (столбец store_country)
Первый столбец (“ID”) оставим без изменений – он будет заполняться автоматически.
Код, который мы будем использовать:
Каждый новый php запрос будет создавать новую строку в таблице.
Давайте запустим вышеуказанный код несколько раз и посмотрим, что получится.
Заходим в phpMyAdmin, выбираем нашу таблицу – store_details
Как видим у нас создалось несколько одинаковых строк.
3. Как извлечь данные из таблицы MySQL:
Теперь, когда мы уже знаем: как создать новую таблицу в MySQL и как вставить данные в таблицу – давайте попробуем извлечь данные из определенной строки. Для этого мы будем использовать значение столбца таблицы в качестве условия.
Наша таблица store_details выглядит следующим образом:
Предположим, что мы знаем название нашего магазина – “MyShop” и хотим вывести имя владельца магазина (столбец store_owner) и страну магазина (столбец store_country).
Мы будем использовать имя магазина (“MyShop”) в качестве условия для поиска по таблице – условие будет выглядеть так:
“найти строку со столбцом “store_name” в значении MyShop” и получить значения для других столбцов в этой строке”.
3.1. Проверяем подключение к базе данных:
3.2. Извлекаем значения из таблицы MySQL
А далее с помощью конструкции echo мы вывели их значения на экран.
4. Изменяем значения столбцов в конкретной строке таблицы:
4.1. Проверяем подключение к базе данных:
4.2. Меняем значение столбцов в конкретной строке таблицы:
Для напримера, давайте для первой строки поменяем собственника магазина (store_owner) с Kostya на Mnogoblog.
5. Удаляем запись таблицы:
5.1. Проверяем подключение к базе данных:
5.2. Удаляем запись таблицы:
В данном примере, обработчик удалит запись с идентификатором «id», равным “2”.
На этом всё! Красивых и успешных Вам сайтов!
PHP Создание таблиц MySQL
В этом уроке вы узнаете, как создавать таблицы в базе данных MySQL с помощью PHP.
Создание таблиц с помощью SQL
В предыдущем уроке мы узнали, как создать базу данных на сервере MySQL. Шаги по созданию таблицы аналогичны созданию баз данных. Разница в том, что вместо создания новой базы данных мы подключимся к существующей базе данных и создадим таблицу в этой базе данных. Для подключения к существующей базе данных мы можем передать дополнительную переменную «имя базы данных» при подключении к MySQL.
Теперь пришло время создать таблицу внутри базы данных, которые фактически будут хранить данные. Информация в таблице организована в строки и столбцы.
За оператором CREATE TABLE следует имя создаваемой таблицы, за которым следует список имен и определений каждого столбца таблицы, разделенный запятыми.
Мы создадим таблицу с именем «persons» и столбцами: «id», «first_name», «last_name» и «email»:
После выбора базы данных в следующем примере создается таблица с именем «persons» и столбцами: «id», «first_name», «last_name» и «email». В first_name, last_name и email столбцы должны содержать значение (т.е. NOT NULL). Столбец id имеет целочисленное значение, которое имеет автоматическое приращение (AUTO_INCREMENT):
Пояснения к таблице:
Обратите внимание, что за каждым именем поля следует объявление типа данных — это объявление указывает, какой тип данных может содержать столбец, будь то целое число, строка, дата и т.д.
В таблице выше используются следующие типы данных:
После типа данных вы можете указать другие необязательные атрибуты для каждого столбца:
Каждая таблица должна иметь столбец первичного ключа (в данном случае столбец «id»). Его значение должно быть уникальным для каждой записи в таблице.
Понимание значений NULL и NOT NULL
Если для столбца указано значение NULL, то в базу данных можно добавить строку, если этому столбцу не присвоено значение. И наоборот, если столбец определен как NOT NULL, то перед добавлением строки в таблицу ему должно быть присвоено значение.
Первичный ключ PRIMARY KEY
Первичный ключ — это столбец, используемый для идентификации отдельных записей в таблице. Значение столбца первичного ключа должно быть уникальным в контексте таблицы, в которой он существует, или, если несколько столбцов объединены, чтобы составить первичный ключ, комбинация значений ключа должна быть уникальной для каждой строки.
Первичный ключ определяется с помощью оператора PRIMARY KEY во время создания таблицы. Если используется несколько столбцов, они разделяются запятыми:
Автоматическое приращение AUTO_INCREMENT
AUTO_INCREMENT — одно из самых простых, но наиболее полезных определений столбцов в языке SQL. По сути, когда столбец определяется с помощью AUTO_INCREMENT, значение столбца автоматически увеличивается каждый раз, когда в таблицу добавляется новая строка. Это особенно полезно при использовании столбца в качестве первичного ключа. Используя AUTO_INCREMENT, нет необходимости писать операторы SQL для вычисления нового уникального идентификатора для каждой строки. Все это обрабатывается сервером MySQL при добавлении строки.
При использовании AUTO_INCREMENT необходимо соблюдать два правила. Во-первых, статус AUTO_INCREMENT может быть присвоен только одному столбцу в таблице. Во-вторых, столбец AUTO_INCREMENT должен быть проиндексирован (например, объявлен как первичный ключ).
Можно переопределить значение AUTO_INCREMENT столбца, просто указав значение при выполнении оператора INSERT. Пока указанное значение является уникальным, предоставленное значение будет использоваться в новой строке, а последующие приращения начнутся с вновь вставленного значения.
MySQL может быть запрошен для получения самого последнего значения приращения, используя функцию last_insert_id() следующим образом:
Создание таблиц БД в трех различных версиях
Теперь, когда мы понимаем SQL-запрос, давайте воспользуемся PHP для его выполнения.
Ниже описано создание таблиц в трех различных версиях: с использованием синтаксиса объектно-ориентированной процедуры MySQLi, процедурный MySQLi и процедуры PDO.
Создаем таблицы MySQL c помощью phpMyAdmin, SQL-команд и в PHP
Здравствуйте, уважаемый посетитель!
В прошлых статьях мы создали и подключили базу данных MySQL. Но для того чтобы с ней можно было реально работать, необходимо создать таблицы для записи, извлечения и обновления хранящейся в них информации.
В данной статье будут рассмотрены три возможных способа создания таблиц MySQL, а именно: с использованием интерфейса phpMyAdmin, c помощью SQL-запросов, а также используя модуль MySQLi PHP.
Конечно, нет необходимости постоянно использовать все спосбы, каждый сможет выбирать для себя то, что ему удобнее. Но, данная информация о разных возможностях, думаю, для многих будет интересна.
В связи с чем, я и решил более полно отразить данную тему. Тем более, что сейчас в интернете по этому вопросу часто можно встретить много устаревшей информации, либо большое количество перепечаток из разной справочной литературы.
Также следует учесть, что порядок создания таблиц MySQL на локальном веб-сервере Denwer аналогичен и, практически, ничем не отличается от тех процедур, которые выполняются на хостинге. Поэтому, все выполняемые здесь действия будут проводиться на локальном веб-сервере. Повторения же подобных операций на хостинге рассматриваться не будет.
Наверное, такой значительный объем материала следовало бы разбить на три отдельных статьи. Но, собранная информация по этой теме в одном месте, думаю, будет более удобна для ее использования.
Определение основных параметров создаваемой таблицы
Перед тем, как начать создавать таблицу, сначала необходимо определиться с ее основными параметрами, с такими как:
Хорошо известно, что наиболее эффективный способ освоения материала, это рассмотрение его на конкретных примерах. Поэтому, будем продолжать придерживаться этого принципа, и создадим такую таблицу базы данных, которая в дальнейшем реально будет востребована в нашей работе.
Дело в том, что в планах в ближайшем рассмотрении уделить внимание такому немаловажному вопросу, как ЧПУ (человеко-понятный урл).
Не будем сейчас вдаваться в подробности такого технического решения, а только отметим, что отсутствие в сайте ЧПУ существенно влияет на его качество. И на мой взгляд, в настоящее время делать сайт без ЧПУ и использовать в качестве url-страниц названия файлов и get-параметры, мягко говоря, несерьезно.
Вот именно для этих целей мы и создадим первую таблицу нашей базы данных.
Следует отметить, рассмотрение вопроса об ЧПУ не является темой данной статьи. Здесь мы коснулись этого вопроса поверхностно, только для того, чтобы увязать наши действия по созданию таблицы БД с последующей работой над сайтом. Поэтому, более подробно о ЧПУ будем говорить позднее, в соответствующих статьях.
На данный момент наш сайт имеет пять страниц. На рис.1 показана таблица соответствия заголовков страниц к их url-адресам (именам файлов).
№ пп | Заголовок страницы | Адрес страницы (имя файла) |
1 | Главная | index.php |
2 | Статистика угонов | article.php |
3 | Способы маркировки | action.php |
4 | Получить скидку | righting.php |
5 | Контакты | contacts.php |
А, теперь составим с помощью транслита человеко-понятные урлы (ЧПУ), соответствующие заголовкам страниц и поместим их в таблицу соответствия ЧПУ.
Кроме того, дополним заголовки наименованиями будущих полей таблицы БД с использованием латинского алфавита: «id», «title», «file» и «url», соответственно.
id (№ пп) | title (Заголовок страницы) | file (имя файла) | url (ЧПУ) |
1 | Главная | index.php | (см. примечание *) |
2 | Статистика угонов | article.php | statistika-ugonov |
3 | Способы маркировки | action.php | sposobi-markirovki |
4 | Получить скидку | righting.php | poluchity-skidku |
5 | Контакты | contacts.php | kontakti |
Вот такую таблицу БД мы и будем сейчас создавать, в которой будут использоваться следующие параметры:
Таким образом, мы определились с основными параметрами нашей будущей таблицы и теперь сможем перейти к ее созданию.
Создание таблицы с помощью интерфейса phpMyAdmin
Выбрав в главном меню phpMyAdmin нужную базу данных (в нашем случае, это «avtobezugona»), для создания таблицы введем ее наименование (назовем ее «url»), количество столбцов (ранее было определено в количестве 4) и нажмем «OK», как показано на рис.3.
После чего мы попадем на новую вкладку панели phpMyAdmin, в которой требуется ввести параметры по заданным полям. Ниже показан скриншот с параметрами полей, которые заполнены в соответствии с таблицей, изображенной на рис.2.
Здесь, что касается параметров полей, более подробно следует остановиться на поле «id», а именно:
Таким образом поле идентификатора «id» определено таким образом, что ее значения будут принимать только уникальные положительные целые числа, автоматически увеличиваясь на единицу при каждом создании новой записи.
С остальными полями, несколько проще. Достаточно для них лишь указать тип данных «VARCHAR», означающее строку переменной длины и выбрать нужную кодировку «ult8_general_ci».
По вопросу же длины полей «title», «file» и «url» стоит отметить, что начиная с версии MySQL 5.0.3 максимальная длина полей типа «VARCHAR» увеличена с 255 до 65535 символов, и будет не логично для заведомо небольшой длины записей назначать такой максимальный размер полей. Поэтому, их длина здесь назначена в соответствии с ранее определенным значением, равным 100 символов.
Далее, после определения всех параметров, для завершения создания таблицы осталось только установить ее кодировку в «ult8_general_ci» и сохранить введенные параметры с помощью кнопки «Сохранить.
В результате, наша первая таблица базы данных с именем «url» создана. О чем свидетельствуют соответствующие обозначения в главном меню phpMyAdmin и в перечне таблиц раздела «Структура» базы данных, как показано на следующем скриншоте.
А теперь, если кликом мышки выберем в меню phpMyAdmin эту таблицу, то сможем увидеть ее структуру, отражающую в полной мере те настройки, которые мы сделали при ее создании.
При этом, как видно на рис.6, с помощью действий «Изменить» или «Удалить» мы в любое время можем вносить изменения в параметры существующих полей, либо при необходимости удалять их. И что немаловажно, используя соответствующий набор инструментов, можем также в любое место таблицы добавлять новые поля. Не правда ли, очень удобно для дальнейшей работы с созданными таблицами MySQL.
Создание таблицы с помощью SQL-запросов
Теперь будем создавать таблицу в phpMyAdmin не в ручную, как это делали мы в предыдущем случае, а использовать для этого SQL-запросы. И воспользуемся имеющейся в SQL командой «CREATE TABLE», которая и предназначена для создания и описания структуры таблицы.
На рис.7 показан SQL-запрос, который соответствует созданию аналогичной таблицы, созданной в предыдущем случае. Только этим запросом создадим ее не под существующим именем «url», а с изменённым «url_sql», так как при наличие существующей таблицы, создания другой, с таким же именем невозможно.
CREATE TABLE url_sql
id int(10) unsigned auto_increment primary key,
title varchar(100) not null,
file varchar(100) not null,
url varchar(100) not null
Как видно, для того, чтобы создать таблицу достаточно сделать лишь один запрос к базе данных с использованием команды «CREATE TABLE».
При этом, все параметры, которые мы вводили вручную, здесь можно назначить в параметрах этой команды, а именно:
Поскольку наименования этих параметров идентичны тем, которые мы использовали в интерфейсе phpMyAdmin, нет смысла их здесь снова разбирать.
А, теперь выполним данный запрос.
Для этого, в phpMyAdmin откроем поле для ввода SQL-запросов, выбрав раздел SQL, и запишем в него соответствующую команду, как показано на скриншоте.
После нажатия на кнопку «OK» заданная таблица должна быть создана. В этом можно убедиться в появившимся обозначении в меню phpMyAdmin и указанием в разделе SQL созданных полей.
А после открытия ее структуры, можно увидеть, что количество полей и их параметры полностью соответствуют аналогичной таблице, которую мы создали ранее с использованием интерфейса phpMyAdmin.
Как видим, результат этих двух вариантов одинаков. И теперь осталось проверить третий способ, с использованием модуля MySQLi PHP.
Создание таблицы MySQL в PHP
По существу, этот вариант, как и предыдущий, основывается на выполнении SQL-запроса «CREATE TABLE». Но, в отличие от него, выполнение этой команды будет происходить не в ручном режиме, а программно, с использованием функции выполнения запроса к базе данных query модуля MySQLi.
Таким образом, для создания таблицы в PHP откроем файл «connect.php», полученный в предыдущей статье, а затем добавим в него для объектно-ориентированного стиля следующий код:
echo «Таблица url_php c заданными параметрами успешно создана» ;
Для тех, кто использует процедурный стиль, функция query в этом скрипте примет несколько другой вид:
echo «Таблица url_php c заданными параметрами успешно создана» ;
Если внимательно посмотреть, то можно увидеть, что синтаксис и все параметры команды «CREATE TABLE» в строгом соответствии повторяют тот запрос, который мы делали в предыдущем варианте.
Отличие заключается лишь в том, сейчас эта команда сама является параметром функции query модуля MySQLi и сформирована она в данном скрипте в одну строку (написание параметров функции в одну строку необязательное условия, просто такое оформление кода PHP более компактно и удобно).
При этом, имя создаваемой таблицы здесь заменено на «url_php». Это обусловлено тем, что как и в случае с SQL-запросами, при имеющейся в базе данных существующей таблицы, создания другой, с таким же именем выполнено не будет.
Теперь, если откроем главную страницу сайта на локальном веб-сервере, в которой у нас подключен файл «connect.php», то в верхней части страницы должно появиться сообщение «Таблица url_php c заданными параметрами успешно создана», как показано на следующем скриншоте.
Это означает, что таблицы создана. В этом можно будет убедиться используя панель phpMyAdmin.
А если открыть структуру вновь созданной таблицы, то можно увидеть, что поля и их параметры точно такие же, как и в таблицах, полученных в первых двух вариантах.
Таким образом, используя три различных способа мы создали три одинаковых таблицы базы данных MySQL, что и требовалось в данной статье. А каким вариантом пользоваться, и в каких случаях, каждый должен решать для себя сам.
На этом мы завершим рассмотрение данного вопроса, а в следующей статье мы наполним созданную таблицу содержимым и сформируем необходимые запросы для возможности извлечения из неё данных.
Исходные файлы сайта
Исходные файлы сайта с обновлениями, которые были сделаны в данной статье, можно скачать из прилагаемых дополнительных материалов:
Следует отметить, что в файле «connect.php», созданные в этой статье фрагменты кода по созданию таблицы MySQL в объектно-ориентированном и процедурном стиле закомментированы. При их использовании следует раскомментировать соответствующую часть кода.
В связи с тем, что теперь для работы сайта будет необходима база данных MySQL, начиная с этой статьи в дополнительных материалах будут размещаться ее копии на текущее состояние.
В данном случае в базе данных находятся все три таблицы MySQL, которые были созданы по ходу рассмотрения данного материала. Причем, две их них: «url_sql» и «url_php» созданы временно для демонстрации способов работы с БД MySQL. В последствии, по мере ненадобности они будут удалены.
Дополнительные материалы бесплатно предоставляются только зарегистрированным пользователям.
Для скачивания исходных файлов необходимо авторизоваться под своим аккаунтом через соответствующую форму.
Для тех кто не зарегистрирован, можно это сделать на вкладке Регистрация.