达梦数据库这样一张表怎么建?

达梦数据库这样一张表怎么建?,第1张

分类: 电脑/网络 >>程序设计 >>其他编程语言

问题描述:

这样一张表:

字段19个,其中 Clob 6个,varchar(2000) 10个。

数据库页面大小是默认的16K,资料上说这种情况

下,一行数据的所有字段的长度累加不能大于8000,

那该怎么建?

达梦对表中使用 Clob 类型有没有其它要求?

解析:

建表没有问题,因为VARCHAR类型不管多大都不会分配实际空间的,而如果使用CHAR的话则会分配实际的空间

在插入的数据时候,如果一行中VARCHAR那几个字段总长度加起来超过8000的话会报错

clob字段的数据是另外存储的,使用没有什么特别的要求,用法是clob(长度),最大长度为2G-1字节,定义长度指明了在clob字段中可以接受的最大字节长度.如不定义长度,缺省为2G-1

CREATE TABLE 语句的主要语法及使用说明如下:

CREATE TABLE:用于创建给定名称的表,必须拥有表CREATE的权限。

<表名>:指定要创建表的名称,在 CREATE TABLE 之后给出,必须符合标识符命名规则。表名称被指定为 db_name.tbl_name,以便在特定的数据库中创建表。无论是否有当前数据库,都可以通过这种方式创建。在当前数据库中创建表时,可以省略 db-name。如果使用加引号的识别名,则应对数据库和表名称分别加引号。例如,'mydb'.'mytbl' 是合法的,但 'mydb.mytbl' 不合法。

<表定义选项>:表创建定义,由列名(col_name)、列的定义(column_definition)以及可能的空值说明、完整性约束或表索引组成。

默认的情况是,表被创建到当前的数据库中。若表已存在、没有当前数据库或者数据库不存在,则会出现错误。

mysql>USE test_db

Database changed

mysql>CREATE TABLE tb_emp1

->(

->id INT(11),

->name VARCHAR(25),

->deptId INT(11),

->salary FLOAT

->)

Query OK, 0 rows affected (0.37 sec)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6802505.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-28
下一篇 2023-03-28

发表评论

登录后才能评论

评论列表(0条)

保存