MySQLi - สร้างตาราง

คำสั่งสร้างตารางต้องการ -

  • ชื่อของตาราง
  • ชื่อเขตข้อมูล
  • คำจำกัดความสำหรับแต่ละฟิลด์

ไวยากรณ์

นี่คือไวยากรณ์ SQL ทั่วไปสำหรับสร้างตาราง MySQLi -

CREATE TABLE table_name (column_name column_type);

ตอนนี้เราจะสร้างตารางต่อไปนี้ใน TUTORIALS ฐานข้อมูล.

CREATE TABLE tutorials_inf(
   id INT AUTO_INCREMENT,
   name VARCHAR(20) NOT NULL,
   primary key (id),
);

มีบางรายการที่ต้องการคำอธิบาย -

  • แอตทริบิวต์ฟิลด์ NOT NULLถูกใช้เนื่องจากเราไม่ต้องการให้ฟิลด์นี้เป็นโมฆะ ดังนั้นหากผู้ใช้พยายามสร้างเรกคอร์ดที่มีค่า NULL MySQLi จะเพิ่มข้อผิดพลาด

  • แอตทริบิวต์ฟิลด์ AUTO_INCREMENT บอกให้ MySQLi ดำเนินการต่อและเพิ่มหมายเลขถัดไปที่มีอยู่ในช่อง id

  • คำสำคัญ PRIMARY KEYใช้เพื่อกำหนดคอลัมน์เป็นคีย์หลัก คุณสามารถใช้หลายคอลัมน์โดยคั่นด้วยลูกน้ำเพื่อกำหนดคีย์หลัก

การสร้างตารางจากพรอมต์คำสั่ง

นี่เป็นเรื่องง่ายที่จะสร้างตาราง MySQLi จากพรอมต์ mysql> คุณจะใช้คำสั่ง SQLCREATE TABLE เพื่อสร้างตาราง

ตัวอย่าง

นี่คือตัวอย่างที่สร้าง tutorials_tbl -

root@host# mysql -u root -p
Enter password:*******

mysql> use TUTORIALS;
Database changed

mysql> CREATE TABLE tutorials_inf(
   id INT AUTO_INCREMENT,name VARCHAR(20) NOT NULL,primary key (id));
Query OK, 0 rows affected (0.16 sec)

mysql>

NOTE - MySQLi จะไม่ยุติคำสั่งจนกว่าคุณจะใส่เครื่องหมายอัฒภาค (;) ที่ท้ายคำสั่ง SQL

การสร้างตารางโดยใช้สคริปต์ PHP

ในการสร้างตารางใหม่ในฐานข้อมูลที่มีอยู่คุณจะต้องใช้ฟังก์ชัน PHP mysqli_query(). คุณจะส่งผ่านอาร์กิวเมนต์ที่สองด้วยคำสั่ง SQL ที่เหมาะสมเพื่อสร้างตาราง

ตัวอย่าง

นี่คือตัวอย่างการสร้างตารางโดยใช้สคริปต์ PHP -

<html>
   <head>
      <title>Creating MySQLi Tables</title>
   </head>
   
   <body>
      <?php  
         $host = 'localhost:3306';  
         $user = 'root';  
         $pass = '<Password Here>';  
         $dbname = 'TUTORIALS';  
         $conn = mysqli_connect($host, $user, $pass,$dbname);  
         
         if(!$conn){  
            die('Could not connect: '.mysqli_connect_error());  
         }  
         echo 'Connected successfully<br/>';  
  
         $sql = "create table tutorials_inf(
            id INT AUTO_INCREMENT,name VARCHAR(20) NOT NULL,primary key (id))";  
         
         if(mysqli_query($conn, $sql)){  
         echo "Table created successfully";  
         } else {  
            echo "Table is not created successfully ";  
         }  
         mysqli_close($conn);  
      ?>  
   </body>
</html>

ผลลัพธ์ตัวอย่างควรเป็นดังนี้ -

Connected successfully
Table created successfully