MỘT SỐ THAO TÁC CƠ BẢN TRÊN MYSQL MÀ TESTER/QA NÊN BIẾT (Phần 4)

I. Cách liệt kê tất cả các table và column trong Database 1. Cách liệt kê tất cả các Table Sử dụng cú pháp bên dưới, bạn có thế liệt kê được các tables đang có trong Database: SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE = 'BASE TABLE' and TABLE_SCHEMA = '{Schema Name}'; Ví dụ: SELECT

I. Cách liệt kê tất cả các table và column trong Database

1. Cách liệt kê tất cả các Table

Sử dụng cú pháp bên dưới, bạn có thế liệt kê được các tables đang có trong Database:

SELECT * FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE = 'BASE TABLE' and TABLE_SCHEMA = '{Schema Name}';

Ví dụ:

SELECT * FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE = 'BASE TABLE' and TABLE_SCHEMA = 'thuong';

Kết quả

2. Cách liệt kê tất cả các column

Việc liệt kê column ‘xx’ nào đó đang thuộc ở những table nào có thể giúp QA chúng ta nhanh chóng xác định được quan hệ dữ liệu liên kết giữa các table với nhau, một phần hỗ trợ việc nắm bắt được business của chức năng liên quan đồng thời giúp chúng ta thực hiện truy vấn các dữ liệu cần thiết nhanh hơn.

Cú pháp sử dụng:

CÚ PHÁP 1:

SELECT * 
FROM information_schema.columns 
WHERE column_name = 'My_Column'

Ví dụ 1:

SELECT * 
FROM information_schema.columns 
WHERE column_name = 'qa_code';

Kết quả 1:

CÚ PHÁP 2:

SELECT  COLUMN_NAME AS 'ColumnName', TABLE_NAME AS  'TableName'
FROM    INFORMATION_SCHEMA.COLUMNS
WHERE   COLUMN_NAME LIKE '%columnname%'
ORDER BY    TableName ,ColumnName;

Ví dụ 2:

SELECT  COLUMN_NAME AS 'ColumnName', TABLE_NAME AS  'TableName'
FROM    INFORMATION_SCHEMA.COLUMNS
WHERE   COLUMN_NAME LIKE '%code%'
ORDER BY    TableName ,ColumnName;

Kết quả 2

II. Cách truy vấn lấy thông tin Column Name – Data type – Max-length trong một table

Cú pháp sử dụng:

SELECT column_name as 'Column Name', data_type as 'Data Type', character_maximum_length as 'Max Length'
FROM information_schema.columns
WHERE table_name = 'tbl_User' 

Ví dụ:

SELECT column_name as 'Column Name', data_type as 'Data Type', character_maximum_length as 'Max Length'
FROM information_schema.columns
WHERE table_name = 'qa_member'; 

Kết quả:

III. Khái niệm ràng buộc (CONSTRAINT) trong MySQL

Các ràng buộc được sử dụng để xác định những quy tắc cho dữ liệu bên trong một bảng, nó sẽ giới hạn loại dữ liệu có thể thêm vào bên trong bảng. Điều này đảm bảo tính chính xác, độ tin cậy của dữ liệu nằm ở bên trong bảng. Nếu có bất kỳ vi phạm nào giữa ràng buộc và hành động dữ liệu thì hành động dữ liệu đó sẽ bị hủy bỏ.

Dưới đây là các ràng buộc (CONSTRAINT) thường được sử dụng:

NOT NULL:

Thiết lập việc một cột không được phép chứa giá trị NULL

UNIQUE

Thiết lập việc dữ liệu trong một cột không được phép trùng

PRIMARY KEY

Kết hợp giữa NOT NULL & UNIQUE (cột không được phép chứa giá trị NULL & dữ liệu không được trùng nhau)

FOREIGN KEY

Xây dựng một mối liên kết giữa hai cái bảng nhằm đảm bảo tính “toàn vẹn dữ liệu” của các bảng (khi trong hai cái bảng đó, có một bảng tham chiếu đến dữ liệu của cái bảng còn lại)

CHECK

Giới hạn phạm vi giá trị được nhập vào bên trong cột.

DEFAULT

Thiết lập giá trị mặc định cho cột trong trường hợp chúng ta chèn một hàng mới vào trong bảng mà không gán giá trị cho cột này.

INDEX

Lập chỉ mục cho các cột để cải thiện tốc độ truy xuất dữ liệu từ cơ sở dữ liệu.

Refer:
http://webcoban.vn/

Nguồn: viblo.asia

Bài viết liên quan

WebP là gì? Hướng dẫn cách để chuyển hình ảnh jpg, png qua webp

WebP là gì? WebP là một định dạng ảnh hiện đại, được phát triển bởi Google

Điểm khác biệt giữa IPv4 và IPv6 là gì?

IPv4 và IPv6 là hai phiên bản của hệ thống địa chỉ Giao thức Internet (IP). IP l

Check nameservers của tên miền xem website trỏ đúng chưa

Tìm hiểu cách check nameservers của tên miền để xác định tên miền đó đang dùn

Mình đang dùng Google Domains để check tên miền hàng ngày

Từ khi thông báo dịch vụ Google Domains bỏ mác Beta, mình mới để ý và bắt đầ