MySQL中的VARYING類型有兩種,VARYINGCHAR和VARYINGBINARY。它們是可變長度的字符串類型,其長度根據字符串中的實際字符數目而變化。
CREATE TABLE test (
name VARCHAR(20) VARYINGCHAR,
data VARBINARY(50) VARYINGBINARY
);
VARYINGCHAR類型的數據將使用1到2個字節存儲每個字符,因此可以存儲任意長度的字符串,其最大長度為65535個字符。對于VARYINGBINARY類型,將使用1個字節存儲每個字節,因此其最大長度為65535個字節。
與VARCHAR類型不同,VARYING類型在存儲之前不需要截斷。如果要存儲的字符串長度大于字段定義,VARYING類型將按需分配更多的空間以容納更多的字符。
以下是在MySQL中創建并使用VARYING類型的示例:
CREATE TABLE example (
name VARCHAR(20) VARYINGCHAR,
data VARBINARY(50) VARYINGBINARY
);
INSERT INTO example (name, data) VALUES ('Hello World!', '7b22737472696e67223a2022576f726c6421227d') ;
SELECT * FROM example;
在此示例中,我們創建了一個名為“example”的表,并向其插入了一個包含字符串和二進制數據的行。最后,我們使用SELECT語句檢索表中所有行。