当前位置: 首页 > 知识库问答 >
问题:

JOOQ MySQL TEXT数据类型

孟开宇
2023-03-14

我试图用JOOQ生成这个简单的SQL,但由于某些原因,我无法完成。

CREATE TABLE T (
    F TEXT
);

我以为会是这样

dsl.createTable(name("T"))
   .column("F", MySQLDataType.TEXT);

不幸的是,MySQLDataType已被弃用(不要直接从客户端代码引用此类型。在初始化SQLDataType类之前引用此类型可能会导致死锁!)。所以我试过了

dsl.createTable(name("T"))
   .column(field("F TEXT"));

但是我得到了以下SQL,这是不合法的。

CREATE TABLE `T` (F text other null );

有什么提示吗?

共有1个答案

锺高翰
2023-03-14

正如文件所述

改为使用相应的SQLDataType。

您可以使用。列(“ColumnName”,SQLDataType.CLOB)用于MySQLTEXTdatatype。

从MySQL留档

四种TEXT(CLOB)类型是TINYTEXT、TEXT、MEDIUMTEXT和LONGTEXT。它们的区别仅在于它们可以保存的值的最大长度。

如果您使用SQLDataType。具有供应商特定长度的CLOB(LENGTH),您将导致TINYTEXTMEDIUMTEXTLONGTEXT

请注意,MySQL将CLOB称为TEXT

使用示例

SQLDataType.INTEGER.identity(true)        // INTEGER Primary key
SQLDataType.VARCHAR(4095).nullable(false) // VARCHAR(4095) NOT NULL
SQLDataType.CHAR(10)                      // CHAR(10)
SQLDataType.BLOB                          // BLOB
SQLDataType.CLOB)                         // TEXT, same as blob, but with character encoding associated
SQLDataType.CLOB(16777215)                // MEDIUMTEXT
SQLDataType.CLOB(4294967295)              // LONGTEXT

 类似资料:
  •   MLlib既支持保存在单台机器上的本地向量和矩阵,也支持备份在一个或多个RDD中的分布式矩阵。本地向量和本地矩阵是简单的数据模型,作为公共接口提供。底层的线性代数操作通过Breeze和jblas提供。 在MLlib中,用于有监督学习的训练样本称为标注点(labeled point)。 1 本地向量(Local vector)   一个本地向量拥有从0开始的integer类型的索引以及doubl

  • NumPy 数字类型是dtype(数据类型)对象的实例,每个对象具有唯一的特征。 这些类型可以是,np.float32等。 数据类型对象描述了对应于数组的固定内存块的解释,取决于以下方面: 数据类型(整数、浮点或者 Python 对象) 数据大小 字节序(小端或大端) 在结构化类型的情况下,字段的名称,每个字段的数据类型,和每个字段占用的内存块部分。 如果数据类型是子序列,它的形状和数据类型。 字

  • 数据类型 可以通过 (type x) 来获取 x 的类型. 来自 JavaScript 的数据类型 nil, 对应 null Number Boolean String RegExp cljs 当中正则的语法是 #"\\d" 对应 js 里 /\d/. \d 本来是字符类型, 在 js 环境中成了 String. ClojureScript 其他常用的类型 Keyword, :demo, 或者从

  • 一、存储种类和数据类型: SQLite将数据值的存储划分为以下几种存储类型: NULL: 表示该值为NULL值。 INTEGER: 无符号整型值。 REAL: 浮点值。 TEXT: 文本字符串,存储使用的编码方式为UTF-8、UTF-16BE、UTF-16LE。 BLOB: 存储Blob数据,该类型数据和输入数据完全相同。 由于SQLite采用的是动态数据类型,而其他传统的关系型数据库使用的是静态

  • Perl是一种松散类型的语言,在程序中使用时无需为数据指定类型。 Perl解释器将根据数据本身的上下文选择类型。 Perl有三种基本数据类型:标量,标量数组和标量散列,也称为关联数组。 以下是有关这些数据类型的一些细节。 Sr.No. 类型和描述 1 Scalar 标量是简单的变量。 它们前面有一个美元符号($)。 标量可以是数字,字符串或引用。 引用实际上是变量的地址,我们将在后面的章节中看到。

  • JavaScript 中的值都具有特定的类型。例如,字符串或数字。 在 JavaScript 中有 8 种基本的数据类型(译注:7 种原始类型和 1 种引用类型)。在这里,我们将对它们进行大体的介绍,在下一章中,我们将详细讨论它们。 我们可以将任何类型的值存入变量。例如,一个变量可以在前一刻是个字符串,下一刻就存储一个数字: // 没有错误 let message = "hello"; messa

  • 原文:Data types 另见:数据类型对象 数组类型和类型之间的转换 NumPy支持的数值类型比Python多得多。这一节会讲述所有可用的类型,以及如何改变数组的数据类型。 所支持的基本类型与C语言中的基本类型紧密相连: Numpy类型 C中的类型 描述 np.bool bool 以字节存储的布尔值(True 或 False) np.byte signed char 由平台定义 np.ubyt

  • 概述 null,undefined 和布尔值 数值 字符串 对象 函数 数组