PHP mencipta jadual MySQL

PHP mencipta jadual MySQL

Jadual data mempunyai nama unik dan terdiri daripada baris dan lajur.

Membuat jadual MySQL menggunakan MySQLi dan PDO

Pernyataan CREATE TABLE digunakan untuk mencipta jadual MySQL.

BUAT JADUAL tbl_name (col_name column_definition);

Membuat jadual mesti mempunyai sekurang-kurangnya satu definisi medan Gunakan ruang untuk memisahkan nama dan jenis medan, dan gunakan koma untuk memisahkan berbilang medan

Selepas pangkalan data dicipta, kita boleh melaksanakan pernyataan berikut untuk mendapatkan pernyataan penciptaan jadual

TUNJUKKAN CREATE TABLE tbl_name;

atau laksanakan pernyataan berikut untuk mencetak struktur jadual

DESC tbl_name;

BUAT JADUAL my_tbl (
umur INT,
nama VARCHAR(100)
);

Pernyataan di atas mencipta jadual bernama my_tbl Jadual, jadual mempunyai dua medan, satu dinamakan umur (umur), jenis yang disimpan ialah integer, medan lain dinamakan nama (nama), jenisnya ialah rentetan dengan panjang maksimum 100 aksara

Sila gunakan SHOW atau DESC untuk melihat pernyataan penciptaan jadual atau struktur jadual

Kami akan mencipta jadual bernama "MyGuests" dengan 5 lajur: "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
 )

Nota daripada jadual di atas:

Jenis data menentukan jenis data yang boleh disimpan oleh lajur. Untuk jenis data lengkap sila rujuk Manual Rujukan Jenis Data kami.

Selepas menetapkan jenis data, anda boleh menentukan atribut pilihan lain untuk setiap lajur: Tidak dibenarkan.

· Ia akan meningkat secara automatik sebanyak 1 setiap kali ketika merakam. Biasanya KUNCI UTAMA lajur ditetapkan kepada nilai ID, digunakan dengan AUTO_INCREMENT.

Setiap jadual hendaklah mempunyai kunci utama (lajur ini ialah lajur "id") dan kunci utama mesti mengandungi nilai unik.

Contoh berikut menunjukkan cara membuat jadual dalam PHP:

Contoh (MySQLi - berorientasikan objek)

<?php
 $servername = "localhost";
 $username = "username";
 $password = "password";
 $dbname = "myDB";
 
 // 创建连接
 $conn = new mysqli($servername, $username, $password, $dbname);
 // 检测连接
 if ($conn->connect_error) {
     die("连接失败: " . $conn->connect_error);
 } 
 
 // 使用 sql 创建数据表
 $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 "创建数据表错误: " . $conn->error;
 }
 
 $conn->close();
 ?>

Contoh (MySQLi - prosedur)

<?php
 $servername = "localhost";
 $username = "username";
 $password = "password";
 $dbname = "myDB";
 
 // 创建连接
 $conn = mysqli_connect($servername, $username, $password, $dbname);
 // 检测连接
 if (!$conn) {
     die("连接失败: " . mysqli_connect_error());
 }
 
 // 使用 sql 创建数据表
 $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 "数据表 MyGuests 创建成功";
 } else {
     echo "创建数据表错误: " . mysqli_error($conn);
 }
 
 mysqli_close($conn);
 ?>

Instance (PDO)

<?php
 $servername = "localhost";
 $username = "username";
 $password = "password";
 $dbname = "myDBPDO";
 try {
     $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
     // 设置 PDO 错误模式,用于抛出异常
     $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
 
     // 使用 sql 创建数据表
     $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
     )";
 
     // 使用 exec() ,没有结果返回 
     $conn->exec($sql);
     echo "数据表 MyGuests 创建成功";
 }
 catch(PDOException $e)
 {
     echo $sql . "<br>" . $e->getMessage();
 }
 $conn = null;
 ?>

By the way, operasi berkaitan jadual lain:

Padam jadual:

DROP TABLE tbl_name;

Ubah suai nama jadual:

UBAH JADUAL tbl_name RENAME new_tbl_name;

Tambah medan:

ALTER JADUAL tbl_name TAMBAH col_name column_definition;

<🎜 Lalai ialah lajur terakhir pada penghujung semua lajur Jika anda ingin menukarnya kepada lajur pertama, anda boleh menulisnya seperti berikut

UBAH JADUAL tbl_name TAMBAH nama_kolom_definisi PERTAMA;

Jika anda ingin menentukan lokasi tertentu, anda boleh menulisnya seperti berikut

UBAH JADUAL tbl_nama TAMBAH nama_kolom_takrifan_kolom SELEPAS nama_kol_lain;

Padam medan:

UBAH JADUAL tbl_name DROP col_name;

Ubah suai atribut medan:

UBAH JADUAL tbl_name UBAH takrifan_kolom nama_kolom;

Ubah suai nama medan dan atribut:

UBAH JADUAL_nama_f_Tubah tbl col_name_to column_definition;

ubah suai hanya boleh mengubah suai definisi medan, manakala perubahan boleh mengubah suai nama medan


Meneruskan pembelajaran
||
<?php $servername = "localhost"; $username = "username"; $password = "password"; $dbname = "myDB"; // 创建连接 $conn = mysqli_connect($servername, $username, $password, $dbname); // 检测连接 if (!$conn) { die("连接失败: " . mysqli_connect_error()); } // 使用 sql 创建数据表 $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 "数据表 MyGuests 创建成功"; } else { echo "创建数据表错误: " . mysqli_error($conn); } mysqli_close($conn); ?>
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!