Hướng dẫn mysql in string
Nhóm phát triển của chúng tôi vừa ra mắt website langlearning.net học tiếng Anh, Nga, Đức, Pháp, Việt, Trung, Hàn, Nhật, ... miễn phí cho tất cả mọi người. Là một website được viết trên công nghệ web Flutter vì vậy hỗ trợ rất tốt cho người học, kể cả những người học khó tính nhất. Hiện tại website đang tiếp tục được cập nhập nội dung cho phong phú và đầy đủ hơn. Mong các bạn nghé thăm và ủng hộ website mới của chúng tôi. Show 1- Kiểu dữ liệu1.1- Kiểu dữ liệu số1.1.1- Các kiểu số nguyênCác kiểu số nguyên tiêu chuẩn của SQL như INTEGER (or INT) và SMALLINT đều được hỗ trợ bởi MySQL. Và các mở rộng tiêu chuẩn, MySQL cũng hỗ trợ các kiểu số nguyên khác như TINYINT, MEDIUMINT, và BIGINT. Bảng dưới đây sẽ liệt kê các kiểu và không gian lưu trữ đòi hỏi và phạm vi của chúng (Giá trị nhỏ nhất, lớn nhất cho kiểu số nguyên có dấu, và không dấu).
1.1.2- Kiểu dấu chấm động (Floating-Point Types)Kiểu dữ liệu FLOAT và DOUBLE mô tả gần đúng các giá trị số thực. MySQL sử dụng 4 byte để lưu trữ dữ liệu FLOAT và 8 byte dành cho kiểu dữ liệu DOUBLE.
Following table shows the required storage and range (maximum and minimum value for signed and unsigned integer) for each floating-point type.
1.1.3- Kiểu dấu chấm cố định (Fixed-Point Types) Kiểu dấu chấm cố định (Fixed-Point data type) được sử dụng để bảo vệ độ chính xác (precision), ví dụ như với dữ liệu tiền tệ. Trong MySQL kiểu DECIMAL và NUMERIC lưu trữ chính xác các dữ liệu số. MySQL 5.6 lưu trữ giá trị DECIMAL theo định dạng nhị phân. Trong SQL chuẩn, cú pháp DECIMAL(5,2) nghĩa là độ chính xác (precision) là 5, và 2 là phần thập phân (scale), nghĩa là nó có thể lưu trữ một giá trị có 5 chữ số trong đó có 2 số thập phân. Vì vậy giá trị lưu trữ sẽ là -999.99 tới 999.99. Cú pháp DECIMAL(M) tương đương với DECIMAL(M,0). Tương tự DECIMAL tương đương với DECIMAL(M,0) ở đây M mặc định là 10. Độ dài tối đa các con số cho DECIMAL là 65. 1.1.4- Kiểu dữ liệu Bit (Bit Value Types)Kiểu dữ liệu BIT được sử dụng để lưu trữ trường giá trị bit. Kiểu BIT(N) có thể lưu trữ N giá trị bit. N có phạm vi từ 1 tới 64. Để chỉ định giá trị các bit, có thể sử dụng b'value'. value là dẫy các số nhị phân 0 hoặc 1. Ví dụ b'111' mô tả số 7, và b'10000000' mô tả số 128. 1.1.5- Kiểu số và thuộc tínhMySQL hỗ trợ một mở rộng cho việc tùy chọn chỉ định độ dài hiển thị là một số nguyên trong dấu ngoặc ngay sau từ khóa kiểu dữ liệu.
1.2- Các kiểu Date and TimeCác kiểu dữ liệu ngày tháng và thời gian đại diện bao gồm DATE, TIME, DATETIME, TIMESTAMP, and YEAR. Mỗi kiểu có một phạm vi hợp lệ. 1.2.1- Kiểu dữ liệu DATETIME, DATE, và TIMESTAMP
1.2.2- Kiểu dữ liệu TIMEMySQL lấy và hiển thị thời gian theo định dạng '
1.2.3- Kiểu dữ liệu YEARKiểu dữ liệu YEAR được sử dụng 1-byte để mô tả giá trị.Nó có thể khai báo YEAR(2) hoặc YEAR(4) chỉ định rõ chiều rộng hiển thị là 2 hay 4 ký tự. Nếu không chỉ rõ chiều rộng mặc định là 4 ký tự. YEAR(4) và YEAR(2) khác nhau định dạnh hiển thị nhưng có cùng phạm
vi giá trị. Bạn có thể chỉ định giá trị YEAR theo một vài định dạng khác nhau:
1.2.4- Khác nhau giữa kiểu dữ liệu Datetime và Timestamp trong MySQLKiểu dữ liệu DATETIME được sử dụng khi bạn cần lưu trữ cả hai thông tin ngày tháng và thời gian.MySQL lấy và hiển thị DATETIME theo định dạng ‘YYYY-MM-DD HH:MM:SS’. Và hỗ trợ phạm vi từ '1000-01-01 00:00:00' tới '9999-12-31 23:59:59'. Kiểu dữ liệu TIMESTAMP cũng được sử dụng khi bạn muốn lưu trữ cả hai thông tin ngày tháng và thời gian. TIMESTAMP có phạm vi '1970-01-01 00:00:01' UTC tới '2038-01-19 03:14:07' UTC Sự khác biệt chính của DATETIME và TIMESTAMP là giá trị của TIMESTAMP được chuyển đổi từ múi giờ hiện tại sang UTC trong khi lưu trữ, và chuyển ngược trở lại từ UTC sang múi giờ hiện tại trong lúc lấy ra. Còn kiểu dữ liệu DATETIME thì không có gì thay đổi. 1.3- Các kiểu chuỗi (String Types)Các kiểu dữ liệu String bao gồm:
1.3.1- Kiểu dữ liệu CHAR và VARCHARKiểu dữ liệu CHAR và VARCHAR là giống nhau, nhưng khác nhau ở cách chúng được lưu trữ và truy xuất. Chúng cũng khác nhau về chiều dài tối đa và giữ lại hay không khoảng trắng phía trước (trailing spaces).
1.3.2- Kiểu dữ liệu BINARY và VARBINARYCác kiểu dữ liệu BINARY và VARBINARY tương tự như CHAR và VARCHAR, ngoại trừ việc chúng có chứa các chuỗi nhị phân chứ không phải là chuỗi non-binary.
1.3.3- Kiểu dữ liệu BLOB và TEXTBLOB là một đối tượng nhị phân lớn (Binary Large OBject) có thể chứa một lượng lớn dữ liệu. Có bốn loại BLOB, TINYBLOB, BLOB, MEDIUMBLOB, và LONGBLOB. Những chỉ khác nhau về độ dài tối đa của các giá trị mà họ có thể giữ. Bốn loại TEXT là TINYTEXT, TEXT, MEDIUMTEXT, và LONGTEXT. Chúng ttương ứng với bốn loại BLOB và có độ dài tối đa và các yêu cầu lưu trữ tương tự.
1.3.4- Kiểu dữ liệu ENUMMột đối tượng chuỗi có giá trị được chọn từ một danh sách các giá trị được đưa ra ở thời điểm tạo ra bảng. Ví dụ:
1.3.5- Kiểu dữ liệu SETMột đối tượng chuỗi có không hoặc nhiều dấu phẩy tách giá trị (tối đa 64). Các giá trị được lựa chọn từ một danh sách các giá trị được đưa ra ở thời điểm tạo ra bảng
2- Phân biệt các câu lệnh DDL, DML và DCLCác câu lệnh trong MySQL có thể được chia làm 3 loại:
Trong tài liệu hướng dẫn này tôi sẽ đề cập tới 2 nhóm con: DDL & DCL. 2.1- DML *Data Manipulation Language (DML) các câu lệnh được sử dụng để quản lý dữ liệu bên trong SCHEME. Ví dụ:
Với DML bạn có thể xem hướng dẫn chi tiết tại: 2.2- DDLData Definition Language (DDL) là các câu lệnh được sử dụng để định nghĩa cấu trúc database hoặc schema. Ví dụ:
2.2.1- CREATE TABLECú pháp:
Tại đây có một vài giải thích:
Ví dụ:
2.2.2- ALTERMySQL ALTER là một lệnh rất tiện dụng khi bạn muốn thay đổi tên của bảng, cột hoặc xóa các cột có sẵn trong bảng. 2.2.2.1- ALTER - Thêm cột vào bảngCú pháp:
Ví dụ:
2.2.2.2- ALTER - Thay đổi tên cột
2.2.2.3- ALTER - Xóa cột trong bảngCú pháp:
Ví dụ:
2.2.2.4- ALTER - Thay đổi kiểu dữ liệu của cộtCú pháp:
Ví dụ:
2.2.2.5- ALTER - Thay đổi tên bảngCú pháp:
Ví dụ:
2.2.3- DROP TABLERất dễ dàng xóa (drop) một bảng MySQL hiện có, nhưng bạn cần phải rất cẩn thận khi xóa bất kỳ bảng hiện tại, vì dữ liệu bị mất sẽ không được phục hồi sau khi xóa một bảng. Cú pháp: 2.3- DCLData Control Language (DCL) là các lệnh điều khiển truy cập dữ liệu. Ví dụ:
2.3.1- GRANT
2.3.2- REVOKE
|