Создать таблицу mysql с помощью php

Последнее обновление: 04.05.2018

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

Для создания таблиц используется команда CREATE TABLE . Эта команды применяет ряд операторов, которые определяют столбцы таблицы и их атрибуты. Общий формальный синтаксис команды CREATE TABLE:

CREATE TABLE название_таблицы (название_столбца1 тип_данных атрибуты_столбца1, название_столбца2 тип_данных атрибуты_столбца2, ................................................ название_столбцаN тип_данных атрибуты_столбцаN, атрибуты_уровня_таблицы)

После команды CREATE TABLE идет название таблицы. Имя таблицы выполняет роль ее идентификатора в базе данных, поэтому оно должно быть уникальным. Затем в скобках перечисляются названия столбцов, их типы данных и атрибуты. В самом конце можно определить атрибуты для всей таблицы. Атрибуты столбцов, а также атрибуты таблицы указывать необязательно.

Создадим простейшую таблицу. Для этого выполним следующий скрипт:

CREATE DATABASE productsdb; USE productsdb; CREATE TABLE Customers (Id INT, Age INT, FirstName VARCHAR(20), LastName VARCHAR(20));

Таблица не может создаваться сама по себе. Она всегда создается в определенной базе данных. Вначале здесь создается база данных productsdb. И затем, чтобы указать, что все дальнейшие операции, в том числе создание таблицы, будут производиться с этой базой данных, применяется команда USE .

Далее собственно идет создание таблицы, которая называется Customers. Она определяет четыре столбца: Id, Age, FirstName, LastName. Первые два столбца представляют идентификатор клиента и его возраст и имеют тип INT , то есть будут хранить числовые значения. Следующие столбцы представляют имя и фамилию клиента и имеют тип VARCHAR(20) , то есть представляют строку длиной не более 20 символов. В данном случае для каждого столбца определены имя и тип данных, при этом атрибуты столбцов и таблицы в целом отсутствуют.

И в результате выполнения этой команды будет создана база данных productsdb, в которой будет создана таблица Customers.

Переименование таблиц

Если после создания таблицы мы захотим ее переименовать, то для этого нужно использовать команду RENAME TABLE , которая имеет следующий синтаксис:

RENAME TABLE старое_название TO новое_название;

Например, переименуем таблицу Customers в Clients:

RENAME TABLE Customers TO Clients;

Полное удаление данных

Для полного удаления данных, очистки таблицы применяется команда TRUNCATE TABLE . Например, очистим таблицу Clients:

TRUNCATE TABLE Clients;

Удаление таблиц

Для удаления таблицы из БД применяется команда DROP TABLE , после которой указывается название удаляемой таблицы. Например, удалим таблицу Clients.

Создание таблиц данных MySQL требуется следующая информация:

  • название таблицы
  • Имя поля таблицы
  • Определение каждого поля таблицы
грамматика

Ниже приведена таблица данных SQL, чтобы создать общий синтаксис MySQL:

CREATE TABLE table_name (column_name column_type);

В следующем примере мы создадим таблицу данных в базе данных w3big w3big_tbl:

W3big_tbl(w3big_id INT NOT NULL AUTO_INCREMENT, w3big_title VARCHAR(100) NOT NULL, w3big_author VARCHAR(40) NOT NULL, submission_date DATE, PRIMARY KEY (w3big_id));

Примеры анализа:

  • Если вы не хотите, чтобы поле NULL может установить поле атрибута NOT NULL, когда функционирование базы данных, если поле данных ввода является NULL, ошибка.
  • AUTO_INCREMENT определяется как самовозбуждение свойства, как правило, используются для первичного ключа автоматически увеличивается на единицу.
  • PRIMARY KEY ключевое слово используется для определения столбца первичного ключа. Вы можете использовать несколько столбцов, чтобы определить столбцы первичного ключа, разделенных запятой между ними.
Создание таблицы из командной строки

По MySQL> окно командной строки может быть очень простой, чтобы создать таблицу MySQL. Вы можете использовать SQL TABLE оператор CREATE , чтобы создать таблицу данных.

примеров

Root@host# mysql -u root -p Enter password:******* mysql> use w3big; Database changed mysql> CREATE TABLE w3big_tbl(-> w3big_id INT NOT NULL AUTO_INCREMENT, -> w3big_title VARCHAR(100) NOT NULL, -> w3big_author VARCHAR(40) NOT NULL, -> submission_date DATE, -> PRIMARY KEY (w3big_id) ->); Query OK, 0 rows affected (0.16 sec) mysql>

Примечание: MySQL команда терминатора является точкой с запятой (;).

Создание таблицы данных с помощью PHP-скрипта

Вы можете использовать функцию в PHP mysql_query () для создания таблицы базы данных данных уже существует.

Эта функция имеет два параметра, в реализации успешных возвращается TRUE, в противном случае возвращает FALSE.

грамматика bool mysql_query(sql, connection); примеров

В следующем примере используется PHP скрипт для создания таблицы данных:

创建 MySQL 数据表

Я создаю таблицу для отображения на веб-странице, и эта таблица заполняется данными из базы данных MySQL. Я пытаюсь сделать пару вещей, которые затрудняют мне.

Сначала я пытаюсь вызвать код PHP, который существует в отдельном файле в HTML через JavaScript. Я думаю, что у меня это работает правильно, но я не уверен на 100% (потому что таблица не будет отображаться). Я думаю, что он работает правильно, потому что в FireBug отображается some кода таблицы (который находится в файле PHP).

Во-вторых, я пытаюсь сделать так, чтобы ряды чередуют цвета для удобства просмотра. До сих пор мой PHP-код приведен ниже. Таблица не отображается вообще ни в одном браузере.

$query = "SELECT * FROM employees"; $result = mysql_query($query); $num = mysql_num_rows($result); echo "

"; for ($i = 0; $i < $num; $i++){ $row = mysql_fetch_array($result); $id = $row["id"]; $l_name = $row["l_name"]; $f_name = $row["f_name"]; $ssn = $row["ssn"]; $class = (($i % 2) == 0) ? "table_odd_row" : "table_even_row"; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; } echo "
$wrap_id$wrap_l_name$wrap_f_name$wrap_ssn
"; mysql_close($link); }

ИЗМЕНИТЬ

Чтобы ответить на несколько вопросов:

@controlfreak123, я не уверен, что вы подразумеваете под "include ("filename_with_php_in_it")". Поскольку страница не вызывается для анализа, я думаю, что она вызывается и делается контакт. Я указал в своем первоначальном вопросе, что считаю, что это верно, потому что FireBug показывает код для таблицы, и этот код находится в отдельном файле PHP, поэтому связь между файлом HTML и файлом PHP должна иметь место. Вот как я вызываю файл PHP из HTML файла, если вы хотите знать:

@Matt S, я не получаю много информации о выходе, на самом деле я не знал, что вообще что-то получаю, пока не посмотрю на FireBug и не увидел, что код PHP (или его часть) действительно передается в файл HTML. Конкретный вопрос заключается в том, как получить данные из базы данных MySQL и заполнить их в HTML-таблицу через PHP. Я также могу подтвердить, что employees имеет в нем данные, две записи, которые я вводил для тестирования. Я могу попытаться поместить код в свой собственный файл без JavaScript, как вы предложили, но это победит мою цель, так как я хочу, чтобы мои файлы HTML и PHP были отдельными, но я могу попробовать, чтобы проверить, хорош ли PHP-код и убедитесь, что JavaScript не нарушает его.

@Аарон, я не уверен, что вы просите (извините). Код предназначен для заполнения и создания таблицы на HTML-странице.

3 ответов

Вот полный пример того, что вы ищете:

  • вытащите некоторые данные из mysql, используя php
  • помещает эти данные в таблицу html
  • применять переменные цветные строки к таблице

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

Кроме того, помните, что $row чувствителен к регистру. Итак, $row != $Row .

Надеюсь, что это поможет:

tr.header { font-weight:bold; } tr.alt { background-color: #777777; } $(document).ready(function(){ $(".striped tr:even").addClass("alt"); });

Id Name Title

Здесь код таблицы использует только PHP, чтобы чередовать стили, как вы пытаетесь сделать в своем примере:

Id Title Date

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

Заметка: активирована адаптивная версия сайта, которая автоматически подстраивается под небольшой размер Вашего браузера и скрывает некоторые детали сайта для удобства чтения. Приятного просмотра!

Здравствуйте уважаемые читатели блога Site on! В прошлой статье мы рассмотрели всё о в PHP, но для закрепления полученных теоритических материалов, предлагаю выполнить практическую задачу, которая довольно часто встречается в повседневной жизни разработчика сайтов.

В наших с вами любимых CMS для отрисовки любой HTML таблицы используются циклы, по-другому никак. Например, у товара (смартфона) есть характеристики: ширина, высота, глубина, цвет, размер дисплея, объём памяти и тд. Все эти свойства обычно отрисовываются в виде HTML таблицы, это очень удобно и хорошо, ровно выглядит.

Чтобы понять, как это делается, сегодня мы решим такую простую задачу, как создание таблицы умножения:

Приступим

Для начала нужно придумать и понять алгоритм, которому мы будем следовать. Из чего состоит HTML таблица? Давайте я нарисую:

Как видим из рисунка, тег table встречается всего 1 раз, поэтому он явно должен быть вне цикла. Повторяется у нас только строка (tr) и внутри неё ячейки, они же столбцы (td). Всё, больше у нас ничего не повторяется.

Теперь нужно решить, какой цикл лучше использовать для данной задачи. Это классический вариант и лучшим решением будет цикл for, хотя можно использовать и while, если вы к нему привыкли больше. Но нам понадобится не один цикл, а два: первый будет рисовать и считать строки (tr), а второй столбцы (td).

Готово! Результат:

В первом цикле мы отрисовываем tr, внутри него td. Этот код можно было бы назвать идеальным шаблоном отрисовки любой таблицы, но я знаю, как сделать ещё лучше. Незачем каждый раз напрягать PHP и делать вывод на экран (echo) после каждой итерации, гораздо лучше поместить всё в одно место (переменную) и сделать echo в самом конце, один единственный раз:

Для этого мы использовали оператор .= присвоение через . Результат будет точно таким же. Но это ещё не всё. Нам нужно привести нашу таблицу к виду, как на самом первом рисунке в этой статье. То есть сделать первую строку и столбец полужирным и поставить зелёный фон. Такого результата можно добиться двумя способами:

  • С помощью CSS3 (правильный способ);
  • С помощью PHP (неправильный способ, но возьмём его, так как в этом разделе учим PHP);

Итак, делаем с помощью PHP:

Красота:) Можете выводить таблицу хоть 100 на 100. Балуйтесь, как хотите, это полезно для опыта. Спасибо за внимание, и приятных вам выходных!

Steps for Create Database Mysql

Create Database in two ways

1) By executing a simple SQL query

2) By using forward engineering in MySQL Workbench

In this tutorial, you will learn-

As SQL beginner , let"s look into the query method first.

Create Database

CREATE DATABASE is the SQL command for creating a database.

Imagine you need to create a database with name "movies". You can do it by executing following SQL command.

CREATE DATABASE movies;

Note: you can also use the command CREATE SCHEMA instead of CREATE DATABASE

Now let"s improve our SQL query adding more parameters and specifications.

IF NOT EXISTS

A single MySQL server could have multiple databases. If you are not the only one accessing the same MySQL server or if you have to deal with multiple databases there is a probability of attempting to create a new database with name of an existing database . IF NOT EXISTS let you to instruct MySQL server to check the existence of a database with a similar name prior to creating database.

When IF NOT EXISTS is used database is created only if given name does not conflict with an existing database"s name. Without the use of IF NOT EXISTS MySQL throws an error.

CREATE DATABASEIF NOT EXISTS movies;

Collation and Character Set

Collation is set of rules used in comparison. Many people use MySQL to store data other than English. Data is stored in MySQL using a specific character set. The character set can be defined at different levels viz, server , database , table and columns.

You need to select the rules of collation which in turn depend on the character set chosen.

For instance, the Latine1 character set uses the latin1_swedish_ci collation which is the Swedish case insensitive order.

CREATE DATABASE IF NOT EXISTS movies CHARACTER SET latin1 COLLATE latin1_swedish_ci

The best practice while using local languages like Arabic , Chinese etc is to select Unicode (utf-8) character set which has several collations or just stick to default collation utf8-general-ci.

You can find the list of all collations and character sets here

You can see list of existing databases by running following SQL command.

SHOW DATABASES

Creating Tables MySQL

Tables can be created using CREATE TABLE statement and it actually has the following syntax.

CREATE TABLE `TableName` (`fieldname` dataType ) ENGINE = storage Engine;

  • "CREATE TABLE" is the one responsible for the creation of the table in the database.
  • "" is optional and only create the table if no matching table name is found.
  • "`fieldName`" is the name of the field and "data Type" defines the nature of the data to be stored in the field.
  • "" additional information about a field such as " AUTO_INCREMENT" , NOT NULL etcCreate Table Example:- CREATE TABLE IF NOT EXISTS `MyFlixDB`.`Members` (`membership_number` INT AUTOINCREMENT , `full_names` VARCHAR(150) NOT NULL , `gender` VARCHAR(6) , `date_of_birth` DATE , `physical_address` VARCHAR(255) , `postal_address` VARCHAR(255) , `contact_number` VARCHAR(75) , `email` VARCHAR(255) , PRIMARY KEY (`membership_number`)) ENGINE = InnoDB;

Now let"s see what the MySQL"s data types are. You can use any of them depending on your need. You should always try to not to underestimate or overestimate potential range of data when creating a database.

DATA TYPES

Data types define the nature of the data that can be stored in a particular column of a table

MySQL has 3 main categories of data types namely

  • Numeric,
  • Date/time.
  • Numeric Data types

    Numeric data types are used to store numeric values. It is very important to make sure range of your data is between lower and upper boundaries of numeric data types.

    TINYINT() -128 to 127 normal
    0 to 255 UNSIGNED.
    SMALLINT() -32768 to 32767 normal
    0 to 65535 UNSIGNED.
    MEDIUMINT() -8388608 to 8388607 normal
    0 to 16777215 UNSIGNED.
    INT() -2147483648 to 2147483647 normal
    0 to 4294967295 UNSIGNED.
    BIGINT() -9223372036854775808 to 9223372036854775807 normal
    0 to 18446744073709551615 UNSIGNED.
    FLOAT A small approximate number with a floating decimal point.
    DOUBLE(,) A large number with a floating decimal point.
    DECIMAL(,) A DOUBLE stored as a string , allowing for a fixed decimal point. Choice for storing currency values.
    Text Data Types

    As data type category name implies these are used to store text values. Always make sure you length of your textual data do not exceed maximum lengths.

    CHAR() A fixed section from 0 to 255 characters long.
    VARCHAR() A variable section from 0 to 255 characters long.
    TINYTEXT A string with a maximum length of 255 characters.
    TEXT
    BLOB A string with a maximum length of 65535 characters.
    MEDIUMTEXT
    MEDIUMBLOB A string with a maximum length of 16777215 characters.
    LONGTEXT
    LONGBLOB A string with a maximum length of 4294967295 characters.

    Date / Time

    DATE YYYY-MM-DD
    DATETIME YYYY-MM-DD HH:MM:SS
    TIMESTAMP YYYYMMDDHHMMSS
    TIME HH:MM:SS

    Apart from above there are some other data types in MySQL.

    ENUM To store text value chosen from a list of predefined text values
    SET This is also used for storing text values chosen from a list of predefined text values. It can have multiple values.
    BOOL Synonym for TINYINT(1), used to store Boolean values
    BINARY Similar to CHAR, difference is texts are stored in binary format.
    VARBINARY Similar to VARCHAR, difference is texts are stored in binary format.

    Now let"s see a sample SQL query for creating a table which has data of all data types. Study it and identify how each data type is defined.

    CREATE TABLE`all_data_types` (`varchar` VARCHAR(20) , `tinyint` TINYINT , `text` TEXT , `date` DATE , `smallint` SMALLINT , `mediumint` MEDIUMINT , `int` INT , `bigint` BIGINT , `float` FLOAT(10, 2) , `double` DOUBLE , `decimal` DECIMAL(10, 2) , `datetime` DATETIME , `timestamp` TIMESTAMP , `time` TIME , `year` YEAR , `char` CHAR(10) , `tinyblob` TINYBLOB , `tinytext` TINYTEXT , `blob` BLOB , `mediumblob` MEDIUMBLOB , `mediumtext` MEDIUMTEXT , `longblob` LONGBLOB , `longtext` LONGTEXT , `enum` ENUM("1", "2", "3") , `set` SET("1", "2", "3") , `bool` BOOL , `binary` BINARY(20) , `varbinary` VARBINARY(20)) ENGINE= MYISAM ;

    • Use upper case letters for SQL keywords i.e. "DROP SCHEMA IF EXISTS `MyFlixDB`;"
    • End all your SQL commands using semi colons.
    • Avoid using spaces in schema, table and field names. Use underscores instead to separate schema, table or field names.
    MySQL workbench ER diagram forward engineering

    MySQL workbench has utilities that support forward engineering. Forward engineering is a technical term is to describe the process of translating a logical model into a physical implement automatically .

    We created an ER diagram on our ER modeling tutorial. We will now use that ER model to generate the SQL scripts that will create our database.

    Creating the MyFlix database from the MyFlix ER model

    1. Open the ER model of MyFlix database that you created in earlier tutorial.

    2. Click on the database menu. Select forward engineer

    3. The next window, allows you to connect to an instance of MySQL server. Click on the stored connection drop down list and select local host. Click Execute

    4. Select the options shown below in the wizard that appears. Click next

    5. The next screen shows the summary of objects in our EER diagram. Our MyFlix DB has 5 tables. Keep the selections default and click Next.

    6.. The window shown below appears. This window allows you to preview the SQL script to create our database. We can save the scripts to a *.sql" file or copy the scripts to the clipboard. Click on next button

    7. The window shown below appears after successfully creating the database on the selected MySQL server instance.


    Summary
    • Creating a database involves translating the logical database design model into the physical database.
    • MySQL supports a number of data types for numeric, dates and strings values.
    • CREATE DATABSE command is used to create a database
    • CREATE TABLE command is used to create tables in a database
    • MySQL workbench supports forward engineering which involves automatically generating SQL scripts from the logical database model that can be executed to create the physical database

    The Database along with Dummy Data is attached. We will be using this DB for all our further tutorials. Simple import the DB in MySQL Workbench to get started