Hướng dẫn insert datetime sql php - chèn ngày giờ sql php

Hướng dẫn insert datetime sql php - chèn ngày giờ sql php

Nội dung chính ShowShow

  • 1- Kiểu dữ liệu
  • 1.1- Kiểu dữ liệu số
  • 1.2- Các kiểu Date and Time
  • MySQL lấy và hiển thị thời gian theo định dạng ' CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 3 (hoặc định dạng CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 4 đối với các giá trị giờ lớn). Giá trị của CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 5 có thể trong khoảng CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 6 tới CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 7. Phần thời gian có thể lớn bởi vì kiểu CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 5 có thể không chỉ mô tả thời gian của một ngày (Vốn chỉ có tối đa 24 giờ), mà nó có thể là thời gian trôi qua hoặc khoảng thời gian giữa hai sự kiện (Cái mà có thể lớn hơn 24h thậm trí có giá trị âm).
  • 1.3.5- Kiểu dữ liệu SET
  • DML - Data Manipulation Language
  • EXPLAIN PLAN - Giải thích đường dẫn truy cập dữ liệu
  • RENAME - Thay đổi tên của đối tượng.

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. 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.
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.

Nội dung chính

  • 1- Kiểu dữ liệu
  • 1.1- Kiểu dữ liệu số
  • 1.2- Các kiểu Date and Time
  • MySQL lấy và hiển thị thời gian theo định dạng ' CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 3 (hoặc định dạng CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 4 đối với các giá trị giờ lớn). Giá trị của CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 5 có thể trong khoảng CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 6 tới CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 7. Phần thời gian có thể lớn bởi vì kiểu CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 5 có thể không chỉ mô tả thời gian của một ngày (Vốn chỉ có tối đa 24 giờ), mà nó có thể là thời gian trôi qua hoặc khoảng thời gian giữa hai sự kiện (Cái mà có thể lớn hơn 24h thậm trí có giá trị âm).
  • 1.3.5- Kiểu dữ liệu SET
  • DML - Data Manipulation Language
EXPLAIN PLAN - Giải thích đường dẫn truy cập dữ liệu

1- Kiểu dữ liệu

1.1- Kiểu dữ liệu số

1.2- Các kiểu Date and Time

MySQL lấy và hiển thị thời gian theo định dạng ' CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 3 (hoặc định dạng CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 4 đối với các giá trị giờ lớn). Giá trị của CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 5 có thể trong khoảng CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 6 tới CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 7. Phần thời gian có thể lớn bởi vì kiểu CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 5 có thể không chỉ mô tả thời gian của một ngày (Vốn chỉ có tối đa 24 giờ), mà nó có thể là thời gian trôi qua hoặc khoảng thời gian giữa hai sự kiện (Cái mà có thể lớn hơn 24h thậm trí có giá trị âm).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.3.5- Kiểu dữ liệu SET DML - Data Manipulation Language
(số byte)
EXPLAIN PLAN - Giải thích đường dẫn truy cập dữ liệu
(Có dấu)
RENAME - Thay đổi tên của đối tượng.
(Có dấu)
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. 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.
(Không dấu)
Nội dung chính
(Không dấu)
1- Kiểu dữ liệu 1 -128 127 0 255
1.3- Các kiểu chuỗi (String Types) 2 -32768 32767 0 65535
2- Phân biệt các câu lệnh DDL, DML và DCL 3 -8388608 2.1- DML * 0 16777215
Hãy theo dõi chúng tôi trên Fanpage để nhận được thông báo mỗi khi có bài viết mới. Facebook 4 -2147483648 2147483647 0 4294967295
1.3- Các kiểu chuỗi (String Types) 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). 8 -9223372036854775808 2.1- DML * (số byte)
54775807
0 Hãy theo dõi chúng tôi trên Fanpage để nhận được thông báo mỗi khi có bài viết mới. (Có dấu)
09551615

Facebook (Có dấu)

1.1.1- Các kiểu số nguyên (Không dấu)FLOAT 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 8 byte dành cho kiểu dữ liệu DOUBLE.

Cá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). (Không dấu)Kiểu dữ liệu
Độ dài (số byte) Giá trị nhỏ nhất (Có dấu) 10,2, ở đây 10 là độ dài phần nguyên còn 2 là số số thập phân. Phần thập phân có thể sử dụng 24 vị trí cho một số FLOAT.
Giá trị lớn nhất (Có dấu) Giá trị nhỏ nhất (Không dấu) DOUBLE. REAL là một từ đồng nghĩa với DOUBLE.

Giá trị lớn nhất (Không dấu)

1.3.5- Kiểu dữ liệu SET DML - Data Manipulation Language
(Số Bytes)
EXPLAIN PLAN - Giải thích đường dẫn truy cập dữ liệu
(Có dấu)
RENAME - Thay đổi tên của đối tượng.
(Có dấu)
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. 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.
(Không dấu)
Nội dung chính
(Không dấu)
1- Kiểu dữ liệu 4 -3.402823466E+38 1.3- Các kiểu chuỗi (String Types) Giá trị nhỏ nhất (Có dấu) 3.402823466E+38
Giá trị lớn nhất (Có dấu) 8 Giá trị nhỏ nhất (Không dấu) 157E+ 308
157E+ 308
Giá trị lớn nhất (Không dấu) 14E- 308
14E- 308
TINYINT 2.22507385850720 14E- 308 
2.22507385850720
14E- 308 
SMALLINT 7E+ 308
7E+ 308

MEDIUMINT

8388607 to 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.   MySQL kiểu DECIMALNUMERIC 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.
 

INT 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.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.

BIGINT DECIMAL là 65.DECIMAL là 65.

92233720368 54775807

184467440737 09551615 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. 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.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. 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. 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.

TypesDescription
FLOAT(M,D) Một số chấm động (floating-point number) không thể không có dấu (unsigned). Bạn có thể định nghĩa độ dài phần nguyên (M) và độ dài phần thập phân (D). Điều này không bắt buộc và mặc định là 10,2, ở đây 10 là độ dài phần nguyên còn 2 là số số thập phân. Phần thập phân có thể sử dụng 24 vị trí cho một số FLOAT.
DOUBLE(M,D) Một số chấm động DOUBLE (Độ chính xác gấp 2) cũng không thể không có dấu (unsigned). Bạn có thể định nghĩa độ dài phần nguyên (M) và độ dài phần thập phân (D). Điều này không bắt buộc và mặc định là 16,4, ở đó 16 là độ dài phần nguyên còn 4 là độ dài phần thập phân. Phần thập phân có thể sử dụng tới 53 vị trí cho một số DOUBLE. REAL là một từ đồng nghĩa với DOUBLE. INT(3)ZEROFILL, 7 sẽ hiển thị là 007. INT(3) ZEROFILL, 7 sẽ hiển thị là 007.
  • Following table shows the required storage and range (maximum and minimum value for signed and unsigned integer) for each floating-point type.

1.2- Các kiểu Date and Time

Độ dài (Số Bytes)DATE, TIME, DATETIME, TIMESTAMP, and YEAR. Mỗi kiểu có một phạm vi hợp lệ. DATE, TIME, DATETIME, TIMESTAMP, and YEAR. Mỗi kiểu có một phạm vi hợp lệ.

FLOAT

Kiểu dữ liệuMô tảĐịnh dạng hiển thịPhạm vi
DATETIME Sử dụng khi bạn cần giá trị lưu trữ cả hai thông tin ngày tháng và thời gian. YYYY-MM-DD HH:MM:SS '1000-01-01 00:00:00' to '9999-12-31 23:59:59'.
DATE Sử dụng khi bạn muốn lưu trữ chỉ thông tin ngày tháng. YYYY-MM-DD '1000-01-01' to '9999-12-31'.
TIMESTAMP Lưu trữ cả hai thông tin ngày tháng và thời gian. Giá trị này sẽ được chuyển đổi từ múi giờ hiện tại sang UTC trong khi lưu trữ, và sẽ chuyển trở lại múi giờ hiện tại khi lấy dữ liệu ra. YYYY-MM-DD HH:MM:SS '1000-01-01 00:00:00' to '9999-12-31 23:59:59'.

DATE

Sử dụng khi bạn muốn lưu trữ chỉ thông tin ngày tháng. lấy và hiển thị thời gian theo định dạng '

YYYY-MM-DD

YYYY-MM-DD

'1000-01-01' to '9999-12-31'. 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ự.

TIMESTAMP YEAR(2) khác nhau định dạnh hiển thị nhưng có cùng phạm vi giá trị.
Với định dạng 4 số, MySQL hiển thị  giá trị YEAR theo định dạng YYYY, với phạm vi 1901 tới 2155, hoặc 0000.
Với định dạng 2 số, MySQL chỉ hiển thị 2 số cuối; ví dụ 70 (1970 hoặc 2070) hoặc 69 (2069).

Lưu trữ cả hai thông tin ngày tháng và thời gian. Giá trị này sẽ được chuyển đổi từ múi giờ hiện tại sang UTC trong khi lưu trữ, và sẽ chuyển trở lại múi giờ hiện tại khi lấy dữ liệu ra. YEAR theo một vài định dạng khác nhau:

Sử dụng khi bạn muốn lưu trữ chỉ thông tin ngày tháng. lấy và hiển thị thời gian theo định dạng 'Phạm vi
DATETIME Sử dụng khi bạn cần giá trị lưu trữ cả hai thông tin ngày tháng và thời gian.
YYYY-MM-DD HH:MM:SS '1000-01-01 00:00:00' to '9999-12-31 23:59:59'.
DATE Sử dụng khi bạn muốn lưu trữ chỉ thông tin ngày tháng.
MySQL chuyển đổi '0' tới '69' tương đương với giá trị YEAR từ 2000-2069.
Và '70' tới '99' tương đương với YEAR từ 1970 tới 1999.
YYYY-MM-DD '1000-01-01' to '9999-12-31'. MySQL chuyển đổi giá trị từ 1 tới 69 tương đương với YEAR từ 2001 tới 2069. Và 70 tới 99 tương đương với YEAR từ 1970 tới 1999.
MySQL chuyển đổi giá trị từ 1 tới 69 tương đương với YEAR từ 2001 tới 2069.
Và 70 tới 99 tương đương với YEAR từ 1970 tới 1999.

TIMESTAMP

Lưu trữ cả hai thông tin ngày tháng và thời gian. Giá trị này sẽ được chuyển đổi từ múi giờ hiện tại sang UTC trong khi lưu trữ, và sẽ chuyển trở lại múi giờ hiện tại khi lấy dữ liệu ra. 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'.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'.

'1970-01-01 00:00:01' UTC to '2038-01-19 03:14:07' UTC 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' UTCTIMESTAMP 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

1.2.2- Kiểu dữ liệu TIME 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.DATETIME 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.

MySQL lấy và hiển thị thời gian theo định dạng ' CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 3 (hoặc định dạng CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 4 đối với các giá trị giờ lớn). Giá trị của CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 5 có thể trong khoảng CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 6 tới CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 7. Phần thời gian có thể lớn bởi vì kiểu CREATE TABLE My_Table ( length ENUM('small', 'medium', 'large') ); 5 có thể không chỉ mô tả thời gian của một ngày (Vốn chỉ có tối đa 24 giờ), mà nó có thể là thời gian trôi qua hoặc khoảng thời gian giữa hai sự kiện (Cái mà có thể lớn hơn 24h thậm trí có giá trị âm).

1.2.3- Kiểu dữ liệu YEAR

  • Kiể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ị. Với định dạng 4 số, MySQL hiển thị  giá trị YEAR theo định dạng YYYY, với phạm vi 1901 tới 2155, hoặc 0000. Với định dạng 2 số, MySQL chỉ hiển thị 2 số cuối; ví dụ 70 (1970 hoặc 2070) hoặc 69 (2069).
  • Bạn có thể chỉ định giá trị YEAR theo một vài định dạng khác nhau:
  • Độ dài chuỗi
  • Chuỗi 4 con số
  • '1901' tới '2155'.
  • Một số có 4 con số
  • SET.

1901 tới 2155.

Chuỗi 1 hoặc 2 chữ số

Kiểu dữ liệuMô tảĐịnh dạng hiển thịGiá trị từ '0' tới '99'. MySQL chuyển đổi '0' tới '69' tương đương với giá trị YEAR từ 2000-2069. Và '70' tới '99' tương đương với YEAR từ 1970 tới 1999.
Một số có 1 hoặc 2 chữ số Giá trị 1 từ 99. MySQL chuyển đổi giá trị từ 1 tới 69 tương đương với YEAR từ 2001 tới 2069. Và 70 tới 99 tương đương với YEAR từ 1970 tới 1999. 1.2.4- Khác nhau giữa kiểu dữ liệu Datetime và Timestamp trong MySQL Kiể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: Và 0 tới 65,535 với các phiên bản MySQL 5.0.3 hoặc mới hơn.
Và 0 tới 65,535 với các phiên bản MySQL 5.0.3 hoặc mới hơn.

CHAR

VARCHARBINARY 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. BINARYVARBINARY tương tự như CHARVARCHAR, 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.

Kiểu dữ liệuMô tảĐịnh dạng hiển thị
Giá trị từ '0' tới '99'. MySQL chuyển đổi '0' tới '69' tương đương với giá trị YEAR từ 2000-2069. Và '70' tới '99' tương đương với YEAR từ 1970 tới 1999. Một số có 1 hoặc 2 chữ số Kiể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 Một số có 1 hoặc 2 chữ số Giá trị 1 từ 99. MySQL chuyển đổi giá trị từ 1 tới 69 tương đương với YEAR từ 2001 tới 2069. Và 70 tới 99 tương đương với YEAR từ 1970 tới 1999.

1.2.4- Khác nhau giữa kiểu dữ liệu Datetime và Timestamp trong MySQL

Kiể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

Kiểu dữ liệuMô tảLoạiĐộ dài
BLOB Đối tượng nhị phân lớn (Large binary object) chứa khối lượng dữ liệu lớn. Giá trị được xem như một chuỗi nhị phân. Bạn không cần thiết phải chỉ định độ dài khi tạo cột. TINYBLOB Chiều dài tối đa là 255 ký tự.
MEDIUMBLOB Chiều dài tối đa là 16777215 ký tự.
LONGBLOB Chiều dài tối đa là 4294967295 ký tự
TEXT Lưu trữ giá trị được coi như một chuỗi các ký tự có mã hóa (character set). TINYBLOB Chiều dài tối đa là 255 ký tự.
MEDIUMBLOB Chiều dài tối đa là 16777215 ký tự.
LONGBLOB Chiều dài tối đa là 4294967295 ký tự

TEXT

Lưu trữ giá trị được coi như một chuỗi các ký tự có mã hóa (character set).


CREATE TABLE My_Table (
     length ENUM('small', 'medium', 'large')
);

Chiều dài tối đa là 4294967295 ký tự.

1.3.4- Kiểu dữ liệu ENUM

  • Mộ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 SET

Mộ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

  • TODO Example:
  • 2- Phân biệt các câu lệnh DDL, DML và DCL
  • Các câu lệnh trong MySQL có thể được chia làm 3 loại:

DDL - Data Definition LanguageDDL & DCL. DDL & DCL.

DML - Data Manipulation Language

DCL - Data Control Language (DML) các câu lệnh được sử dụng để quản lý dữ liệu bên trong SCHEME. Ví dụ: (DML) các câu lệnh được sử dụng để quản lý dữ liệu bên trong SCHEME. Ví dụ:

  • 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ụ:
  • SELECT - Lấy dữ liệu từ một database
  • INSERT - Trèn dữ liệu vào một bảng
  • UPDATE - Cập nhập dữ liệu đang tồn tại trong bảng
  • DELETE - Xóa các bản ghi trên bảng.
  • MERGE - UPSERT Toán tử insert hoặc update

CALL - Gọi thủ tục trong DB

EXPLAIN PLAN - Giải thích đường dẫn truy cập dữ liệu

LOCK TABLE - Điều khiển sự đồng thời (control concurrency). (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ụ: (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ụ:

  • Với DML bạn có thể xem hướng dẫn chi tiết tại:
  • 2.2- DDL
  • Data 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ụ:
  • CREATE - Tạo các đối tượng trong databas
  • ALTER - Sửa đổi cấu trúc của database
  • DROP - Xóa các đối tượng trong database

TRUNCATE - Xóa hết các bản ghi trong bảng, bao gồm cả các không gian được phân bổ cho các bản ghi đã xóa

COMMENT - Thêm các chú thích vào từ điển dữ liệu (data dictionary).


-- Chú ý một bảng không nhất thiết phải có khóa chính.
-- Phải có dấu chấm phẩy cuối dòng lệnh.

CREATE TABLE <Table_Name>   (
  Column_Name_Id    DataType  [NOT NULL] [AUTO_INCREMENT] ,
  Column_name2       DataType  [NOT NULL] ,
  ......
  Column_nameN       DataType  [NOT NULL] ,
  Primary Key  (Column_Name_Id)
);

RENAME - Thay đổi tên của đối tượng.

  • 2.2.1- CREATE TABLE NOT NULL được sử dụng nếu bạn không muốn trường này null. Như vậy nếu người dùng cố gắng trèn vào một bản ghi với dữ liệu NULL. MySQL sẽ ném ra một lỗi.NOT NULL được sử dụng nếu bạn không muốn trường này null. Như vậy nếu người dùng cố gắng trèn vào một bản ghi với dữ liệu NULL. MySQL sẽ ném ra một lỗi.

  • Cú pháp: AUTO_INCREMENT nói với MySQL tự gán giá trị tăng dần cho trường ID.AUTO_INCREMENT nói với MySQL tự gán giá trị tăng dần cho trường ID.

  • Tại đây có một vài giải thích:PRIMARY KEY được sử dụng để định nghĩa cột này là một khóa chính. Bạn có thể sử dụng nhiều cột ngăn cách nhau bởi dấu phẩy để định nghĩa một khóa chính.PRIMARY KEY được sử dụng để định nghĩa cột này là một khóa chính. Bạn có thể sử dụng nhiều cột ngăn cách nhau bởi dấu phẩy để định nghĩa một khóa chính.

Thuộc tính NOT NULL được sử dụng nếu bạn không muốn trường này null. Như vậy nếu người dùng cố gắng trèn vào một bản ghi với dữ liệu NULL. MySQL sẽ ném ra một lỗi.


Create Table Members (
   Member_Id INT NOT NULL AUTO_INCREMENT,
   Full_Name VARCHAR(64) NOT NULL,
   Address VARCHAR(256),
   Birth_Day DATE NOT NULL,
   PRIMARY KEY (Member_Id)
);

Thuộc tính AUTO_INCREMENT nói với MySQL tự gán giá trị tăng dần cho trường ID.

Từ khóa PRIMARY KEY được sử dụng để định nghĩa cột này là một khóa chính. Bạn có thể sử dụng nhiều cột ngăn cách nhau bởi dấu phẩy để định nghĩa một khóa chính.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. 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.

Ví dụ:

COMMENT - Thêm các chú thích vào từ điển dữ liệu (data dictionary).


CREATE TABLE My_Table (
     length ENUM('small', 'medium', 'large')
);
0

Thuộc tính NOT NULL được sử dụng nếu bạn không muốn trường này null. Như vậy nếu người dùng cố gắng trèn vào một bản ghi với dữ liệu NULL. MySQL sẽ ném ra một lỗi.


CREATE TABLE My_Table (
     length ENUM('small', 'medium', 'large')
);
1

Thuộc tính AUTO_INCREMENT nói với MySQL tự gán giá trị tăng dần cho trường ID.


CREATE TABLE My_Table (
     length ENUM('small', 'medium', 'large')
);
2

Từ khóa PRIMARY KEY được sử dụng để định nghĩa cột này là một khóa chính. Bạn có thể sử dụng nhiều cột ngăn cách nhau bởi dấu phẩy để định nghĩa một khóa chính.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.

COMMENT - Thêm các chú thích vào từ điển dữ liệu (data dictionary).


CREATE TABLE My_Table (
     length ENUM('small', 'medium', 'large')
);
3

Thuộc tính NOT NULL được sử dụng nếu bạn không muốn trường này null. Như vậy nếu người dùng cố gắng trèn vào một bản ghi với dữ liệu NULL. MySQL sẽ ném ra một lỗi.


CREATE TABLE My_Table (
     length ENUM('small', 'medium', 'large')
);
4

Thuộc tính AUTO_INCREMENT nói với MySQL tự gán giá trị tăng dần cho trường ID.

COMMENT - Thêm các chú thích vào từ điển dữ liệu (data dictionary).


CREATE TABLE My_Table (
     length ENUM('small', 'medium', 'large')
);
5

Thuộc tính NOT NULL được sử dụng nếu bạn không muốn trường này null. Như vậy nếu người dùng cố gắng trèn vào một bản ghi với dữ liệu NULL. MySQL sẽ ném ra một lỗi.


CREATE TABLE My_Table (
     length ENUM('small', 'medium', 'large')
);
0

Thuộc tính AUTO_INCREMENT nói với MySQL tự gán giá trị tăng dần cho trường ID.

COMMENT - Thêm các chú thích vào từ điển dữ liệu (data dictionary).


CREATE TABLE My_Table (
     length ENUM('small', 'medium', 'large')
);
1

Thuộc tính NOT NULL được sử dụng nếu bạn không muốn trường này null. Như vậy nếu người dùng cố gắng trèn vào một bản ghi với dữ liệu NULL. MySQL sẽ ném ra một lỗi.


CREATE TABLE My_Table (
     length ENUM('small', 'medium', 'large')
);
2

Thuộc tính AUTO_INCREMENT nói với MySQL tự gán giá trị tăng dần cho trường ID.

Từ khóa PRIMARY KEY được sử dụng để định nghĩa cột này là một khóa chính. Bạn có thể sử dụng nhiều cột ngăn cách nhau bởi dấu phẩy để định nghĩa một khóa chính.

COMMENT - Thêm các chú thích vào từ điển dữ liệu (data dictionary).

RENAME - Thay đổi tên của đối tượng.

2.2.1- CREATE TABLE (DCL) là các lệnh điều khiển truy cập dữ liệu. Ví dụ: (DCL) là các lệnh điều khiển truy cập dữ liệu. Ví dụ:

  • Cú pháp:
  • Tại đây có một vài giải thích:

Thuộc tính NOT NULL được sử dụng nếu bạn không muốn trường này null. Như vậy nếu người dùng cố gắng trèn vào một bản ghi với dữ liệu NULL. MySQL sẽ ném ra một lỗi.

  • Thuộc tính AUTO_INCREMENT nói với MySQL tự gán giá trị tăng dần cho trường ID.

Từ khóa PRIMARY KEY được sử dụng để định nghĩa cột này là một khóa chính. Bạn có thể sử dụng nhiều cột ngăn cách nhau bởi dấu phẩy để định nghĩa một khóa chính.

  • Thuộc tính AUTO_INCREMENT nói với MySQL tự gán giá trị tăng dần cho trường ID.