MySQL支持多種數據類型,包括數字類型、字符串類型、日期和時間類型等。下面是主要數據類型的使用方法:
-
數值類型:
- TINYINT:1個字節有符號整數,范圍從-128到127(0不包括在內)。
- SMALLINT:2個字節有符號整數,范圍從-32,768到32,767。
- MEDIUMINT:3個字節有符號整數,范圍從-8,388,608到8,388,607。
- INT:4個字節有符號整數,范圍從-2,147,483,648到2,147,483,647。
- BIGINT:8個字節有符號整數,范圍從-9,223,372,036,854,775,808到9,223,372,036,854,775,807。
- TINYINT UNSIGNED:1個字節無符號整數,范圍從0到255。
- SMALLINT UNSIGNED:2個字節無符號整數,范圍從0到65,535。
- MEDIUMINT UNSIGNED:3個字節無符號整數,范圍從0到16,777,215。
- INT UNSIGNED:4個字節無符號整數,范圍從0到4,294,967,295。
- BIGINT UNSIGNED:8個字節無符號整數,范圍從0到18,446,744,073,709,551,615。
- FLOAT:單精度浮點數。
- DOUBLE:雙精度浮點數。
- DECIMAL:任意精度的有符號十進制數。
-
字符串類型:
- CHAR:固定長度的字符串。
- VARCHAR:可變長度的字符串,最大長度可達65,535個字符。
- TEXT:最大長度為65,535個字符的字符串,適用于大量文本數據。
- MEDIUMTEXT:最大長度為16,777,215個字符的字符串。
- LONGTEXT:最大長度為4,294,967,295個字符的字符串。
-
日期和時間類型:
- DATE:日期值,格式為’YYYY-MM-DD’。
- TIME:時間值,格式為’HH:MM:SS’。
- DATETIME:日期和時間值,格式為’YYYY-MM-DD HH:MM:SS’。
- TIMESTAMP:時間戳值,自’1970-01-01 00:00:01’ UTC至’2038-01-19 03:14:07’ UTC。
- YEAR:年份值,范圍從1901到2155。
以下是一些使用示例:
CREATE TABLE example (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50) NOT NULL,
age TINYINT UNSIGNED,
price DECIMAL(10, 2),
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
INSERT INTO example (name, age, price) VALUES ('John Doe', 25, 199.99);
SELECT * FROM example;
在這個示例中,我們創建了一個名為example
的表,其中包含一個自動遞增的主鍵id
,一個非空的name
字段(使用VARCHAR
類型),一個無符號的age
字段(使用TINYINT UNSIGNED
類型),一個price
字段(使用DECIMAL
類型),以及一個默認值為當前時間戳的created_at
字段(使用TIMESTAMP
類型)。然后,我們向表中插入一條記錄,并選擇所有記錄。