Откройте базу данных. Для создания таблицы вам необходимо иметь базу данных, которая будет ее содержать. Вы можете открыть базу данных, набрав USE database в командной строке MySQL.
Изучите основные типы данных. Каждая запись в таблице сохраняется как определенный тип данных. Это позволяет MySQL взаимодействовать с ними различными способами. Типы данных, которые вы будете использовать, зависят от назначения вашей таблицы. Есть много типов кроме нижеперечисленных, но вы можете их использовать для создания базовой, пригодной для использования таблицы:
Создайте таблицу. Чтобы создать таблицу из командной строки, вам нужно создать все поля с помощью одной команды. Вы создаете таблицы, используя команду CREATE TABLE с последующей информацией о таблице. Чтобы создать базовую запись о сотруднике, вам нужно ввести следующую команду:
CREATE TABLE employees (id INT NOT NULL PRIMARY KEY AUTO_INCREMENT , lastname VARCHAR (20 ) , firstname VARCHAR (20 ) , phone VARCHAR (20 ) , dateofbirth DATE )
Проверьте, что ваша таблица была создана правильно. Как только вы создадите таблицу, вы получите сообщение, что она была успешно создана. Теперь вы можете использовать команду DESCRIBE , чтобы убедиться, что вы включили все поля, что хотели, и что у них правильные типы данных. Наберите DESCRIBE database; и посмотрите на появившийся график, чтобы проверить структуру вашей таблицы.
Создайте таблицу с использованием PHP. Если вы используете PHP для администрирования вашей базы данных MySQL через веб-сервер, вы можете создать таблицу, используя простой PHP-файл. Предполагается, что база данных уже существует на сервере MySQL. Для создания такой же таблицы, как и в Шаге 3, введите следующий код, заменив информацию о соединении на актуальную для вас:
"Failed to connect to MySQL: " . mysqli_connect_error () ; } $sql = "CREATE TABLE employees (id INT NOT NULL PRIMARY KEY AUTO_INCREMENT, lastname VARCHAR(20), firstname VARCHAR(20), phone VARCHAR(20), dateofbirth DATE)" ; if (mysqli_query ($connection , $sql ) ) { echo "Table employees created successfully" ; } else { echo "Error creating table: " . mysqli_error ($connection ) ; } ?>
В виде таблицы. Например, все позиции вашего прайса в магазине, цены, наименование товара и так далее. Да и много чего. Потому что это нужно практически ежедневно. Сейчас не будем говорить о том, что для профессионалов это уже старая избитая тема. Это статья только для начинающих веб программистов.
Так как же сделать таблицу на странице сайта используя php ?
Таблицу, обычно выводят, используя достаточно известную функцию while или for. Профессионалы используют уже готовые скрипты или функции, где просто меняют несколько переменных и файлы, отвечающие за дизайн. Для начинающих скажу, чтобы понять как все работает мы рассмотрим небольшой скрипт чуть ниже. А сейчас немного теории как все работает.
Атрибут ORDER by `id` DESC означает что мы сортируем всех пользователей по убыванию id пользователей. То есть вверху будут максимальное значение id. А если в конце указать вместо атрибута desc указать asc. То сортировка по id будет в противоположную сторону, то есть по возрастанию и вверху будет самое меньшее значение по id.
Полученный запрос обрабатываем функцией mysql_fetch_array. Она достаточно универсальная потому что возвращает ассоциативный массив с двумя индексами с численными индексами и индексами по значению таблиц.
Вместо этогй функции многие используют запрос mysql_fetch_assoc который возвращает массив только с индексами по значению таблиц в базе данных.
Далее все помещаем в один массив $mass и выводим в цикле while по индексу значения таблиц. А поскольку мы выводим все значения в виде таблицы пишем функцию вывода заначений echo ‘(начало строки)(ячейка, квадрат)$mass[‘id’](переменная по индексу значения таблицы id)(закрывающий тег ячейки)(следующая ячейка, квадрат)$mass[‘mail’](закрывающий тег ячейки)… (закрывающий тег строки).
После закрывающей фигурной скобки, который показывает закрытие цикла while выводим закрывающий тег таблицы.
А вот, и сам пример скрипта
Пример скрипта авторизации
ID | LOGIN | Дата регистрации | `.$id.` | `.$login.` | `; echo ``.$mail.` | `.$reg_time.` | `; } ?>
А здесь можно скачать и посмотреть наглядно как все работает на странице. Следует иметь в виду путь к файлу конфигурации в вашем варианте может быть другим.Это напрямую зависит куда вы поместите сам файл конфигурации для всего сайта. Для наглядности файл конфигурации вы найдете в zip-архиве.
Сегодня мы рассмотрели, как работает скрипт для вывода таблицы на php. Скажу сразу, что это всего лишь пример, чтобы иметь представление как все работает. Мы не стали рассматривать как сделать дизайн таблицы, прописать , изменить заголовок таблицы. Думаю, если вы изучили или изучите в будущем CSS, вам абсолютно не трудно будет это сделать самому.
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 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.
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 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
Tables can be created using CREATE TABLE statement and it actually has the following syntax.
CREATE TABLE `TableName` (`fieldname` dataType ) ENGINE = storage Engine;
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 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 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. |
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 ;
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.
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
В предыдущем уроке мы узнали, как создать соединение с сервером БД. Следующий шаг - создание БД и таблиц.
Рассмотрим два способа создания БД и таблиц. Первый, как это делается в PHP, второй - с помощью более дружественной утилиты PhpMyAdmin, которая является стандартной на большинстве вэб-хостов и в XAMPP.
Если у вас на хосте есть сайт с поддержкой PHP и MySQL, БД, возможно, уже создана для вас, и вы можете пропустить это раздел урока и начать создавать таблицы. Не забывайте консультироваться со страницами помощи хоста.
Функция mysql_query используется для отправки запроса БД MySQL. Запросы записываются на языке S tructured Q uery L anguage (SQL). SQL - наиболее широко распространённый язык запросов БД - не только для БД MySQL - он очень логичен и прост для изучения. В этом и следующем уроках вы узнаете всё самое важное о SQL-запросах.
При создании БД используется SQL-запрос CREATE DATABASE с таким синтаксисом:
CREATE DATABASE имя БД
Легко и просто, не так ли!? Попробуем вставить это в PHP-скрипт:
Mysql_connect("mysql.myhost.com", "user", "sesame") or die(mysql_error()); mysql_query("CREATE DATABASE mydatabase") or die(mysql_error()); mysql_close();
Сначала соединяемся с MySQL-сервером. Затем создаём БД "mydatabase". И наконец - закрываем соединение с MySQL-сервером.
Пока неплохо... но всё несколько усложняется, когда мы хотим создать таблицы в PHP. При создании таблиц мы используем SQL-запрос CREATE TABLE с таким синтаксисом:
CREATE TABLE имя таблицы (имя_столбца1 ТИП_ДАННЫХ, имя_столбца2 ТИП_ДАННЫХ, имя_столбца3 ТИП_ДАННЫХ, ...)
имя_таблицы и имя_столбца это, понятное дело, соответствующие имена. ТИП_ДАННЫХ используется для специфицирования типа данных, вставляемых в столбец. Вот наиболее распространённые типы:
Целые числа Десятичные числа Краткий текст до 255 символов длиной Обычный текст до 65,535 символов Длинные куски текста до 4,294,967,295 символов Даты в формате ГГГГ-MM-ДД Время в формате ЧЧ:MM:СС Время и дата в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС
В целом логично и относительно просто. Попробуем вставить это в наш пример:
Mysql_connect("mysql.myhost.com", "user", "sesame") or die(mysql_error()); mysql_select_db("people") or die(mysql_error()); mysql_query("CREATE TABLE MyTable (id INT AUTO_INCREMENT, FirstName CHAR, LastName CHAR, Phone INT, BirthDate DATE PRIMARY KEY(id))") Or die(mysql_error()); mysql_close ();
В этом примере мы начинаем с соединения с MySQL-сервером. Затем используем функцию для выбора БД "people". Далее создаём таблицу "persons" из 5 столбцов.
Обратите внимание, что для столбца "id" мы используем для специфицирования того, что столбец содержит числа, а затем добавляем для автоматического инкремента этих чисел и гарантирования тог, что для каждого ряда будет сгенерирован уникальный ID.
В конце мы используем для установки столбца "id" как первичного ключа/primary key. Первичный ключ уникально идентифицирует каждую запись (/ряд) в таблице, что особенно пригодится при последующих обновлениях БД.
Бывает полезно иметь возможность создавать БД и таблицы напрямую в PHP. Но часто проще использовать phpMyAdmin (или любую иную утилиту администрирования MySQL), которая является стандартной на большинстве вэб-хостов и в XAMPP. Скриншот ниже показывает, как создавать БД и таблицы с применением phpMyAdmin.
Создание таблиц данных 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));
Примеры анализа:
По 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 mysql_query () для создания таблицы базы данных данных уже существует.
Эта функция имеет два параметра, в реализации успешных возвращается TRUE, в противном случае возвращает FALSE.
В следующем примере используется PHP скрипт для создания таблицы данных: