Php как создать таблицу в бд mysql

Создание и удаление таблиц

CREATE TABLE name_table(
id INT(11) PRIMARY KEY AUTO_INCREMENT NOT NULL ,
title VARCHAR(255) ,
message TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
age INT(11) DEFAULT 0 ,
price DOUBLE
) ENGINE = InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci;

PRIMARY KEY — первичный ключ, ограничение, позволяющее однозначно идентифицировать каждую запись в таблице SQL.

Первичные ключи должны содержать уникальные значения.

Первичный ключ не может иметь значения NULL.

NOT NULL — означает, что каждая строка должна содержать значение для этого столбца, нулевые значения допускаться не будут.

AUTO_INCREMENT — автоматический инкремент.

CHARACTER SET utf8 COLLATE utf8_general_ci — кодировка для конкретного поля, ставится сразу после типа.

). — здесь кодировка задана для всех полей

DEFAULT — значение по умолчанию.

ENGINE=InnoDB — тип таблицы(используемый движок) — InnoDB

Пример запроса на удаление таблицы name_table :

$sql = «DROP TABLE name_table» ;

Удалить все данные из таблицы

— данная команда очистит полностью таблицу и приведет ее к первоначальному состоянию,

когда она только создалась ( CREATE TABLE ) и в ней не было никаких записей.

— данная команда не производит сброс счётчика AUTO_INCREMENT , который используется, как известно, для автоматической генерации значения поля без необходимости его ручной установки. Чтобы этого избежать, можно использовать вместо команды выше данный вариант:

TRUNCATE TABLE name_table RESTART IDENTITY ;

— данный вариант вызова команды TRUNCATE позволит сбросить значение счётчика полей с AUTO_INCREMENT .

Поэтому значение поля первой добавленной записи после данного удаления будет 1 .

ПРИМЕРЫ создания таблиц

1 mysqli — объектно-ориентированный подход

// Создаем переменные
$servername = «localhost» ; // для локального сервера на компьютере
$username = «root» ; // имя пользователя
$password = «» ; // пароль если существует
$dbname = «newDB» ; // имя базы данных

// Устанавливаем соединение с сервером MySQL:
// создаем экземпляр класса new mysqli() и записываем, в качестве аргументов, наши переменные

$conn = new mysqli ( $servername , $username , $password , $dbname );

// Проверка соединения:
// если выполняется выражение $conn->connect_error , то останавливаем выполнение die
// и выводим «Не удалось подключиться»
// С помощью выражения $conn -> connect_error выведем информацию об ошибке .
// Иначе выведем: «Соединение успешно установлено»

if ( $conn -> connect_error ) die ( «Не удалось подключиться: » . $conn -> connect_error );
>
echo «Соединение успешно установлено» ;

// Запрос для создания таблицы users1

$sql = «CREATE TABLE users(
name VARCHAR(30) NOT NULL,
surname VARCHAR(30) NOT NULL PRIMARY KEY,
password VARCHAR(30) NOT NULL )» ;

// Проверка выполнения создания таблицы:
// Если значение $conn -> query($sql) будет — TRUE,
// тогда выведем сообщение «Таблица users создана успешно».
// В противном случае выведем сообщение «Ошибка при создании таблицы»
// и выведем информацию об ошибке: $conn->error.

if ( $conn -> query ( $sql ) === TRUE ) echo «Таблица users создана успешно

» ;
> else <
echo «Ошибка при создании таблицы: » . $conn -> error ;
>

// закрываем соединение
$conn -> close ();
?>

— После перезагрузки страницы выведет в браузере:

Таблица users создана успешно

В phpMyAdmin в базе данных newDB появилась таблица » users «

bd-5-1

2 mysqli — процедурный подход

// Создаем переменные
$servername = «localhost» ; // для локального сервера на компьютере
$username = «root» ; // имя пользователя
$password = «» ; // пароль если существует
$dbname = «newDB» ; // имя базы данных

// Устанавливает соединение с сервером MySQL с помощью функции mysqli_connect()

$conn = mysqli_connect ( $servername , $username , $password , $dbname );

if (! $conn ) die ( «Не удалось подключиться: » . mysqli_connect_error ());
>
echo «Соединение успешно установлено» ;

// Запрос для создания таблицы:
// NOT NULL — означает, что каждая строка должна содержать значение для этого столбца,
// нулевые значения допускаться не будут.
// PRIMARY KEY — первичный ключ, ограничение, позволяющее однозначно идентифицировать
// каждую запись в таблице SQL.

$sql = «CREATE TABLE users2(
name VARCHAR(30) NOT NULL,
surname VARCHAR(30) NOT NULL PRIMARY KEY, password VARCHAR(30) NOT NULL )» ;

// Проверка выполнения создания таблицы:
// Если запрос к базе данных — выполнен,
// тогда выведем сообщение «Таблица users2 создана успешно».
// В противном случае выведем сообщение «Ошибка при создании таблицы»
// и выведем информацию об ошибке mysqli_error($conn) ;

if ( mysqli_query ( $conn , $sql )) echo «Таблица users2 создана успешно

» ;
> else <
echo «Ошибка при создании таблицы: » . mysqli_error ( $conn ); >

// закрываем соединение
mysqli_close ( $conn );
?>

— После перезагрузки страницы выведет в браузере:

Таблица users2 создана успешно

В phpMyAdmin в базе данных newDB появилась таблица » users2 «

// Создаем переменные
$servername = «localhost» ; // для локального сервера на компьютере
$username = «root» ; // имя пользователя
$password = «» ; // пароль если существует
$dbname = «newDB» ; // имя базы данных

// Подключение к серверу MySQL
// Обработка ошибок подключения: используем блок try-catch :

try // Подключение к серверу MySQL
$conn = new PDO ( «mysql:host= $servername ; dbname= $dbname » , $username , $password );

echo «Соединение успешно установлено

» ;

// Устанавливаем режим ошибки PDO в исключение

$conn -> setAttribute ( PDO :: ATTR_ERRMODE , PDO :: ERRMODE_EXCEPTION );

> catch ( PDOException $e ) <
echo «Ошибка при создании таблицы:
» . $e -> getMessage ();
>

// Созданние таблицы
try // Созданние SQL-запроса

$sql = «CREATE TABLE users3(
name VARCHAR(30) NOT NULL,
surname VARCHAR(30) NOT NULL PRIMARY KEY,
password VARCHAR(30) NOT NULL )» ;

// Устанавливаем режим ошибки PDO в исключение

$conn -> setAttribute ( PDO :: ATTR_ERRMODE , PDO :: ERRMODE_EXCEPTION );

$conn -> exec ( $sql );
echo «Таблица users3 создана успешно
» ;

> catch ( PDOException $e ) <
echo «Ошибка при создании таблицы:
» . $sql . $e -> getMessage ();
>

// Закрыть подключение
$conn = null ;
?>

— После перезагрузки страницы выведет в браузере:

Таблица users3 создана успешно

В phpMyAdmin в базе данных newDB появилась таблица » users3 «

Источник

Php как создать таблицу в бд mysql

Для выполнения запросов у объекта mysqli вызывается метод query() , в который передается выполняемая команда SQL:

$conn = new mysqli("localhost", "root", "mypassword"); $conn->query(команда_sql);

Если выполнение запроса прошло успешно, то метод query() возвращает true , если неудачно, то возвращается false .

Процедурный подход

При процедурном подходе для выполнения вызывается функция mysqli_query() , в которую передается объект подключения и выполняемая команда SQL:

$conn = mysqli_connect("localhost", "root", "mypassword"); mysqli_query($conn, $query);

Если выполнение запроса прошло успешно, то функция mysqli_query() возвращает true , если неудачно, то возвращается false .

Создание базы данных

Для создания базы данных в MySQL применяется команда CREATE DATABASE , после которой указывается имя создаваемой базы данных. Создадим базу данных с помощью PHP.

Объектно-ориентированный подход

connect_error)< die("Ошибка: " . $conn->connect_error); > // Создаем базу данных testdb2 $sql = "CREATE DATABASE testdb2"; if($conn->query($sql)) < echo "База данных успешно создана"; >else< echo "Ошибка: " . $conn->error; > $conn->close(); ?>

Здесь создается база данных testdb2 . Если при выполнении команды возникнет ошибка, то мы можем получить информацию о ней через свойство $conn->error .

Процедурный подход

 // Создаем базу данных testdb3 $sql = "CREATE DATABASE testdb3"; if(mysqli_query($conn, $sql)) < echo "База данных успешно создана"; >else < echo "Ошибка: " . mysqli_error($conn); >mysqli_close($conn); ?>

Здесь создается база данных testdb3 . Если при выполнении команды возникнет ошибка, то мы можем получить информацию о ней через функцию mysqli_error() , в которую передается объект подключения.

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

Создав базу данных, мы можем добавить в нее таблицы для хранения данных. Для создания таблицы в MySQL применяется команда CREATE TABLE , после которой указывается имя создаваемой таблицы и в скобках определения столбцов. Например, создадим в ней таблицу, которая описывается следующим кодом

CREATE TABLE Users (id INTEGER AUTO_INCREMENT PRIMARY KEY, name VARCHAR(30), age INTEGER);

Здесь создается таблица под названием «users». Она будет хранить условных пользователей. В ней будет три столбца: id, name и age. Столбец id представляет числовой уникальный идентификатор строки — или идентификатор пользователя. Столбец name представляет строку — имя пользователя. А столбец age хранит число — возраст пользователя.

Объектно-ориентированный подход

connect_error)< die("Ошибка: " . $conn->connect_error); > $sql = "CREATE TABLE Users (id INTEGER AUTO_INCREMENT PRIMARY KEY, name VARCHAR(30), age INTEGER);"; if($conn->query($sql)) < echo "Таблица Users успешно создана"; >else< echo "Ошибка: " . $conn->error; > $conn->close(); ?>

Если мы обращаемся уже непосредственно к базе данных, то ее имя передается в качетстве четвертого параметра в конструктор mysqli : new mysqli(«localhost», «root», «mypassword», «testdb2»); .

Процедурный подход

 $sql = "CREATE TABLE Users (id INTEGER AUTO_INCREMENT PRIMARY KEY, name VARCHAR(30), age INTEGER);"; if(mysqli_query($conn, $sql)) < echo "Таблица Users успешно создана"; >else < echo "Ошибка: " . mysqli_error($conn); >mysqli_close($conn); ?>

Если мы подключаемся к конкретной базе данных, то ее имя передается в качетстве четвертого параметра в функцию mysqli_connect() : mysqli_connect(«localhost», «root», «mypassword», «testdb3») .

Источник

Читайте также:  Многоуровневый меню php mysql
Оцените статью