1. Tạo table trong cơ sở dữ liệu
Lệnh SQL tạo table:
Trước khi tạo table chúng ta cần chuẩn bị: Tên của table (table_name), tên của các field (field_name) trong table, kiểu dữ liệu của mỗi field (field_type),… và field nào là khóa chính của mỗi table.
Câu lệnh SQL chung nhất để tạo table là:
CREATE TABLE table_name (field_name field_type,…);
Ví dụ:
tutorials_tbl(
tutorial_id INT NOT NULL AUTO_INCREMENT,
tutorial_title VARCHAR(100) NOT NULL,
tutorial_author VARCHAR(40) NOT NULL,
submission_date DATE,
PRIMARY KEY (tutorial_id)
);
Câu lệnh SQL này được sử dụng để: Tạo table có tên là tutorials, với các field: tutorial_id, tutorial_title, tutorial_author và submission. Trong đó tutorial_id là field có kiểu Int (INT), tự động tăng dần (AUTO_INCREMENT), được chọn làm khóa chính (PRIMARY KEY) cho table nên nó phải chịu ràng buộc NOT NULL.
a. Tạo table từ dấu nhắc mysql>
Ta có thể sử dụng câu lệnh SQL trên để tạo table tại dấu nhắc mysql>. Xem ví dụ cụ thể sau đây:
root@ubuntu:# mysql -u root -p
Enter password:*******
mysql> use TUTORIALS;
Database changed
mysql> CREATE TABLE tutorials_tbl(
-> tutorial_id INT NOT NULL AUTO_INCREMENT,
-> tutorial_title VARCHAR(100) NOT NULL,
-> tutorial_author VARCHAR(40) NOT NULL,
-> submission_date DATE,
-> PRIMARY KEY (tutorial_id)
-> );
Query OK, 0 rows affected (0.16 sec)
mysql>
Trong trường hợp này, chúng ta phải kết nối đến server cơ sở dữ liệu MySQL với account có quyền tạo table trên cơ sở dữ liệu Tutorials.
Khi khóa chính của table gồm nhiều field thì ta phải đặt các field đó (dùng dấu phẩy (,) để ngăn cách) sau từ khóa PRIMARY KEY.
b. Tạo table trong script PHP
Trong môi trường PHP, ta vẫn sử dụng hàm mysql_query để tạo table mới trong cơ sở dữ liệu đang tồn tại. Chỉ khác, tham số sql của hàm này là câu lệnh SQL: Create table <name of table>;
Ví dụ:
<html>
<head>
<title>Creating MySQL Tables</title>
</head>
<body>
<?php
$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'a123456789z';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
If (!$conn)
{
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully<br />';
$sql = "CREATE TABLE lylich( ".
"MaCB INT NOT NULL AUTO_INCREMENT, ".
"Holot VARCHAR(25), "Ten VARCHAR(8),"Ngaysinh DATE, ".
"PRIMARY KEY (MaCB));";
mysql_select_db( 'HSCB' );
$retval = mysql_query( $sql, $conn );
If (!$retval)
{
die('Could not create table: ' . mysql_error());
}
echo "Table created successfully\n";
mysql_close($conn);
?>
</body>
</html>
Script PHP trên được sử dụng để tạo table lylich trong cơ sở dữ liệu HSCB. Table gồm 3 field, trong đó, field MaCB là khóa chính của table này.
Nếu câu lệnh SQL quá dài thì ta có thể dùng dấu chấm (.) và cặp dấu nháy kép (“,”) để tách nó thành nhiều dòng (xem lại câu lệnh sql ở trên).
Sau khi tạo table ta có thể sử dụng lệnh show columns from<table name> tại dấu nhắc mysql> để xem lại cấu trúc của nó.
2. Xóa table trong cơ sở dữ liệu
Câu lệnh SQL chung nhất để xóa table là:
DROP TABLE table_name ;
a. Xóa table từ dấu nhắc mysql>
Ví dụ:
root@ubuntu# mysql -u root -p
Enter password:*******
mysql> use HSCB;
Database changed
mysql> DROP TABLE lylich;
Query OK, 0 rows affected (0.8 sec)
mysql>
b. Xóa table trong script PHP
Ví dụ:
<html>
<head>
<title>Deleting MySQL Tables</title>
</head>
<body>
<?php
$dbhost = 'localhost:3036';
$dbuser = 'root';
$dbpass = 'a123456789z';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
If (!$conn)
{
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully<br />';
$sql = "DROP TABLE tutorials_tbl";
mysql_select_db( 'TUTORIALS' );
$retval = mysql_query($sql, $conn);
If (!$retval)
{
die('Could not delete table: ' . mysql_error());
}
echo "Table deleted successfully\n";
mysql_close($conn);
?>
</body>
</html>
-------------------------------------------------
Chúng ta phải thực sự cẩn thận khi xóa cơ sở dữ liệu, xóa table vì những thao tác này rất dễ thực hiện, nhưng một khi đã xóa rồi thì ta không thể khôi phục lại được.
(Nguyễn Kim Tuấn - CNTT)
» Tin mới nhất:
» Các tin khác: