tutorial pengembangan web terbaru
 

PHP Buat MySQL Tabel


Sebuah tabel database memiliki nama yang unik dan terdiri dari kolom dan baris.


Buat Tabel MySQL Menggunakan MySQLi dan PDO

CREATE TABLE pernyataan digunakan untuk membuat tabel di MySQL.

Kami akan membuat tabel bernama "MyGuests" , dengan lima kolom: "id" , "firstname" , "lastname" , "email" dan "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
)

Notes on the table above:

Tipe data menentukan jenis data kolom dapat terus. Untuk referensi lengkap semua jenis data yang tersedia, pergi ke kami referensi Jenis Data .

Setelah jenis data, Anda dapat menentukan atribut opsional lainnya untuk setiap kolom:

  • NOT NULL - Setiap baris harus berisi nilai untuk kolom itu, nilai-nilai null tidak diperbolehkan
  • nilai DEFAULT - Mengatur nilai default yang ditambahkan bila tidak ada nilai lain dilewatkan
  • Unsigned - Digunakan untuk jenis nomor, membatasi data yang disimpan untuk bilangan positif dan nol
  • AUTO INCREMENT - MySQL secara otomatis meningkatkan nilai lapangan oleh 1 setiap kali rekor baru ditambahkan
  • PRIMARY KEY - Digunakan untuk secara unik mengidentifikasi baris dalam sebuah tabel. Kolom dengan pengaturan PRIMARY KEY sering nomor ID, dan sering digunakan dengan AUTO_INCREMENT

Setiap tabel harus memiliki kolom primary key (in this case: the "id" column) . Nilainya harus unik untuk setiap record dalam tabel.

Contoh berikut menunjukkan cara membuat tabel di PHP:

Contoh (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
)";

if ($conn->query($sql) === TRUE) {
    echo "Table MyGuests created successfully";
} else {
    echo "Error creating table: " . $conn->error;
}

$conn->close();
?>

Contoh (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
)";

if (mysqli_query($conn, $sql)) {
    echo "Table MyGuests created successfully";
} else {
    echo "Error creating table: " . mysqli_error($conn);
}

mysqli_close($conn);
?>

Contoh (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
    )";

    // 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;
?>