确保效率:在SQL中的字符串类型之间选择
#初学者 #sql #database #mysql

保证效率,新SA比《行尸走肉》更成功,来学习如何在SQL银行上保存琴弦。

包含

1.

继续我们的rie,我们现在已经接近了数字值,现在该深入到字符串了。在本文中,我们还将探讨VARCHAR和Koud1类型之间的差异,除了对CHARSETCOLLATE的概念提供详细的理解,您肯定在数据库中发现了这些概念,但也许仍然没有明确的了解。您的目的。

2. CHAR

MySQL中的慈善类型用于存储固定长度字符串。

如果char字符串的值小于指定的长度,则在字符串末端自动添加空白,以填充其余空间。这些空白的空间将包括在内。

当您需要存储固定长度的字符串或对字符串大小有特定要求时,慈善数据的类型主要使用。比较和列中的比较和研究比varchas中的char更为严格,因为无需考虑可变大小。

3. Varchar

varchar类型类型存储可变长度的字符串,这意味着存储中占据的大小取决于实际的字符串长度。例如,如果您定义了varchar列(255)并插入只有10个字符的字符串,则它将仅占用存储这10个字符所需的空间数量。

如果大多数存储的字符串具有可变的长度,则

varchar数据类型在存储方面可能更有效。这是因为分配存储字符串的空间与实际的字符串长度成正比,而不是指定的母亲长度。

varchar数据类型需要额外的存储空间来记录实际的字符串长度。此额外空间范围从1到2个字节,具体取决于Varchar列指定的最大尺寸。

4. Charset E整理

CREATE TABLE strings (
    fixed100 CHAR(100), -- 100 bytes "Aaron     ..."
    var100 VARCHAR(100) -- 5 bytes + 1 Byte "Aaron"
);

SHOW CREATE TABLE strings;

CREATE TABLE `strings` (
  `fixed100` char(100) DEFAULT NULL,
  `var100` varchar(100) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci

SELECT * FROM information_schema.CHARACTER_SETS ORDER BY CHARACTER_SET_NAME;

Image description

charset(UTF8MB4)

charset utf8mb4 是MySQL中的一种配置,该配置定义了用于将数据存储在文本列中的字符集。在这种情况下, utf8mb4 是指支持utf-8编码的多型字符集。

  • utf8 :指的是UTF-8字符集,这是一种普遍接受的模式,可以代表Varia羊毛和脚本中特征的特征。 UTF-8能够代表广泛的字符,并且在现代系统中广泛使用。
  • mb4 :“多键4”缩写,表明字符集支持4个字节。这允许表示需要2个字节以上的字符,例如表情符号和不同语言的特殊字符。

整理(UTF8MB4_0900_AI_CI)

副板条用于在比较操作和文本分类中定义字符的分类顺序。在整理 utf8mb4_0900_ai_ci 的特定情况下,它是定义分类顺序的一系列配置。这些定义如下:

  • utf8mb4 :一组支持多键字符的UTF-8编码的字符。 UTF-8是字符表示的普遍接受标准,并支持各种不同语言的各种字符。
  • 0900 :是字符集的范围的指标。在这种情况下, 0900 是指角色集的9.0.0 utf8mb4 。 MySQL的最新版本可以引入现有字符集的更新和改进。
  • ai :“口音不敏感”的缩写(口音不敏感)。这意味着在不考虑重音的情况下执行字符的比较。例如,字母“â°”和“ a”将被视为相等。
  • ci :“不敏感的情况”的缩写(对Maião和Mints不敏感)。这意味着对字符的比较是执行的,而无需考虑最大和薄荷之间的差异。例如,字母“ a”和“ a”将被视为平等。

5.找到£o funoqian19

在本文中,我们探讨了MySQL中VARCHAR和Koud1的类型之间的差异。我们了解到CHAR是固定尺寸的理想选择,而VARCHAR更适合于可变尺寸。此外,我们了解CHARSETCOLLATE的作用,允许您自定义文本顺序。

有了这些知识,我们可以在将桌子投射到MySQL中时做出更正确的决定,从而确保应用程序的理想效率和性能。字符串类型的智能选择和Charset/Colalate配置对于优化且成功的数据库至关重要。