MySQL Workbench TEXT() 列参数

标签 mysql

我通常不使用 MySQL Workbench,我试图通过选择 TEXT() 创建一个包含文本列的表,但是我不确定应该在“()”之间输入什么值。如果我将其留空,则会出现错误:

给定的数据类型 文本() 包含错误,无法接受。而是保留以前的值。

我可以在括号内放一个数字,但我想知道它如何影响该列。

我在网上找不到任何答案。我知道它如何影响 DATETIME() 之类的东西,但不知道这种数据类型。

最佳答案

在 TEXT(M) 中,M 是可选长度。来自 the docs :

An optional length M can be given for this type. If this is done, MySQL creates the column as the smallest TEXT type large enough to hold values M characters long.

因此您可以使用它来指定您预计该字段的最大字符数。

如果您省略括号 - 只是 TEXT - 它将默认为 65,535。否则,如果您提供括号和值,它将默认为适当的文本类型(TINYTEXT、TEXT、MEDIUMTEXT、LONGTEXT)。

参见 here与 VARCHAR 进行比较。一个区别是您不能直接索引 TEXT 字段,它需要一个前缀。

关于MySQL Workbench TEXT() 列参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45269905/

相关文章:

php - 从 AppEngine 中的 Laravel PHP 连接时出现 SQL 错误 'No such file or directory'

mysql - 查询期间丢失与 mysql 的连接,mysql workbench

mysql - Amazon RDS 数据库连接奇怪的行为

mysql - SQL 连接 : Select rows with no match in second table

php - 如何选择一个特定的id值而不是最后一个mysql php

php - 用户已经有超过 'max_user_connections' 个事件连接

javascript - 知道在 php 循环中点击了哪一行

php - 来自数据库的数据与 htmlentities 相呼应,在希伯来语中给出了奇怪的迹象

php - 如何公开Apache服务器?

MYSQL 按时间上午/下午排序