MySQL Create Table

4 min read

A database table has its own unique name and consists of columns and rows.

Мэдээллийн сангийн хүснэгт нь өөрийн гэсэн өвөрмөц нэртэй бөгөөд багана, мөрөөс бүрдэнэ.


Create a MySQL Table Using MySQLi and PDO #

MySQLi ба PDO ашиглан MySQL хүснэгт үүсгэх #

The CREATE TABLE statement is used to create a table in MySQL.

CREATE TABLE хэллэгийг MySQL дээр хүснэгт үүсгэхэд ашигладаг.

We will create a table named “MyGuests”, with five columns: “id”, “firstname”, “lastname”, “email” and “reg_date”:

Бид “MyGuests” нэртэй хүснэгт үүсгэх бөгөөд “id”, “firstname”, “lastname”, “email”, “reg_date” гэсэн таван баганатай болно.

CREATE TABLE MyGuests ( id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, firstname VARCHAR(30) NOT NULL, lastname VARCHAR(30) NOT NULL, email VARCHAR(50), reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP )

Notes on the table above:

Дээрх хүснэгтийн тэмдэглэл:

The data type specifies what type of data the column can hold. For a complete reference of all the available data types, go to our Data Types reference.

Өгөгдлийн төрөл нь багана ямар төрлийн өгөгдөл агуулж болохыг зааж өгдөг. Боломжтой бүх өгөгдлийн төрлийг бүрэн лавлахыг хүсвэл манай өгөгдлийн төрлүүдийн лавлагаа руу орно уу.

After the data type, you can specify other optional attributes for each column:

Өгөгдлийн төрлийг оруулсны дараа та багана бүрийн хувьд бусад нэмэлт шинж чанаруудыг зааж өгч болно:

  • NOT NULL – Each row must contain a value for that column, null values are not allowed

    Мөр бүр тухайн баганын утгыг агуулсан байх ёстой, тэг утгыг зөвшөөрөхгүй

  • DEFAULT value – Set a default value that is added when no other value is passed

    Бусад утга дамжуулагдаагүй үед нэмсэн анхдагч утгыг тохируулна уу

  • UNSIGNED – Used for number types, limits the stored data to positive numbers and zero

    Тооны төрлүүдэд ашигладаг бөгөөд хадгалагдсан өгөгдлийг эерэг тоонуудаар хязгаарладаг

  • AUTO INCREMENT – MySQL automatically increases the value of the field by 1 each time a new record is added

    MySQL нь шинэ бичлэг нэмэх бүрт талбарын утгыг автоматаар 1-ээр нэмэгдүүлдэг

  • PRIMARY KEY – Used to uniquely identify the rows in a table. The column with PRIMARY KEY setting is often an ID number, and is often used with AUTO_INCREMENT

    Хүснэгт дэх мөрүүдийг өвөрмөц байдлаар тодорхойлоход ашигладаг. PRIMARY KEY тохируулгатай багана нь ихэвчлэн ID дугаар байх ба AUTO_INCREMENT-тэй хамт ашиглагддаг.

Each table should have a primary key column (in this case: the “id” column). Its value must be unique for each record in the table.

Хүснэгт бүрт анхдагч түлхүүр багана байх ёстой (энэ тохиолдолд: “id” багана). Хүснэгт дэх бичлэг бүрийн хувьд түүний утга өвөрмөц байх ёстой.

The following examples shows how to create the table in PHP:

PHP дээр хүснэгтийг хэрхэн үүсгэхийг дараах жишээнүүд харуулав.

Example (MySQLi Object-oriented) #

<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; // Create connection $conn = new mysqli($servername, $username, $password, $dbname); // Check connection if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } // sql to create table $sql = "CREATE TABLE MyGuests ( id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, firstname VARCHAR(30) NOT NULL, lastname VARCHAR(30) NOT NULL, email VARCHAR(50), reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP )"; if ($conn->query($sql) === TRUE) { echo "Table MyGuests created successfully"; } else { echo "Error creating table: " . $conn->error; } $conn->close(); ?>

Example (MySQLi Procedural) #

<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; // Create connection $conn = mysqli_connect($servername, $username, $password, $dbname); // Check connection if (!$conn) { die("Connection failed: " . mysqli_connect_error()); } // sql to create table $sql = "CREATE TABLE MyGuests ( id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, firstname VARCHAR(30) NOT NULL, lastname VARCHAR(30) NOT NULL, email VARCHAR(50), reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP )"; if (mysqli_query($conn, $sql)) { echo "Table MyGuests created successfully"; } else { echo "Error creating table: " . mysqli_error($conn); } mysqli_close($conn); ?>

Example (PDO) #

<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDBPDO"; try { $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); // set the PDO error mode to exception $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // sql to create table $sql = "CREATE TABLE MyGuests ( id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, firstname VARCHAR(30) NOT NULL, lastname VARCHAR(30) NOT NULL, email VARCHAR(50), reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP )"; // use exec() because no results are returned $conn->exec($sql); echo "Table MyGuests created successfully"; } catch(PDOException $e) { echo $sql . "<br>" . $e->getMessage(); } $conn = null; ?>

Powered by BetterDocs

Leave a Reply