原文链接:https://blog.csdn.net/qq_34530405/article/details/81738907

本文记录MySql数据库中enum类型数据的使用细节和注意事项。

首先在数据库中创建一个测试表,创建语句:

create table tblTest (

testID int(4) not null primary key auto_increment,

enumValue enum('我', '你', '他')

);

关键的插入测试,主要是验证插入时的注意事项和方法,以及对应的插入结果。

插入语句

insert into tblTest(enumValue) values ('我'), ('你'), ('他'), ('1'), ('2'), ('3'), ('0');

注意:这里的几个插入都是有效的,下面是具体的测试结果截图:

注意:值0是可以插入的值,他的插入结果应该是一个空值,但不是null。

还有一种插入的方式是使用数值来实现:
insert into tblTest(enumValue) values (1), (2), (3);

这种方式是可以的插入方式,但是需要注意的是:

insert into tblTest(enumValue) values (0);

这个插入式不成功的。真心有点糊涂啊。

下面测试错误插入值,这些值的插入式不成功的

总结一下测试结果:

MySql中枚举类型数据的插入都是以文本类型或数值插入的,可以使具体的对应值和对应的数值的文本或者对应的数值。

其中需要注意数值插入时文本和数值(例:’1‘和1)插入结果是相同的,另外一点就是’0‘是可以插入的,而0是不可以的。(不是很明白啊?)

另外,对应的具体指必须是完整的,即加入有枚举值“它们”,使用值’它‘是无法成功插入的。文中没有体现这一点。

还有就是’0‘值是可以插入的值,但是插入的结果是一个空值,而且这个空值不是null。

原文链接:https://blog.csdn.net/woshinannan741/article/details/50519339

枚举类型,enum
一般来说就是单选,在定义枚举的时候列出所有的可能性;
代码如下

create table type_enum(
gender enum('male','remale','serect'),
);
insert into type_enum values ('remale');

在处理时,类似字符串型进行操作!

意义在于:

1, 限定值的可能性!

2, 速度快,比普通的字符串速度快!

原因是枚举型 是利用 整数进行管理的,能够2个字节进行管理!

每个值,都是一个整数标识,从第一个选项开始为1,逐一递增!

管理时整数的形式,速度比字符串快!

一共有2 个字节,0-65535,因此可以有 65535个选项可以使用!

mysql字符串类型(枚举类型)的更多相关文章

  1. MySQL字符串转日期类型

    MySQL字符串转日期类型 select str_to_date('2014-08-20 00:00:00', '%Y-%m-%d %H:%i:%s'); >2014-08-20 00:00:0 ...

  2. C# 字符串转枚举类型

    Enum.Parse(typeof(枚举类型), 字符串类型) 如:在Unity中, Enum.Parse(typeof(SystemLanguage), "Chinese")

  3. mysql 字符串按照数字类型排序

    一个varchar,char的字段 存放 1+,12- ,11等字符串将字段*1或者+0可以将MySQL字符串字段按数值排序 order by 字段名称+0 desc/asc的形式进行排序 order ...

  4. 自定义数据类型 C++ 结构体类型 共同体类型 枚举类型 类类型{}

    一.结构体类型 结构体类型,共用体类型,枚举类型,类类型等统称为自定义类型(user-defined-type,UDT). 结构体相当于其他高级语言中的记录(record);例如: struct St ...

  5. mysql:字符串转换为日期类型

    函数:DATE_FORMAT http://www.w3school.com.cn/sql/func_date_format.asp

  6. Mysql 字符串转数字类型

    使用场景: 在数据库中进行数字比较,但是数字的存储格式是varchar的时候可以使用以下方法进行转换,然后进行比较 方法一:SELECT CAST('123' AS SIGNED); 方法二:SELE ...

  7. 【C#进阶系列】15 枚举类型和位标志

    实际上本章就只讲枚举类型,因为位标志本来就可以当做一个特殊的枚举类型. 关于枚举类型 枚举类型是一种消灭魔法数字的好方法,使程序更容易编写,阅读和维护. 枚举类型是值类型,然而有别于其它值类型,枚举类 ...

  8. C#之枚举类型

    参考: http://www.cnblogs.com/an-wl/archive/2011/04/14/2015815.html 惯例先上MSDN: https://msdn.microsoft.co ...

  9. 重温CLR(十一) 枚举类型、位标志和数组

    枚举类型 枚举类型(enumerated types)定义了一组"符号名称/值"配对.例如,以下Color类型定义了一组符号,每个符号都标识一种颜色: internal enum ...

  10. C++枚举类型教案

    一.枚举类型的应用场景 只需要将需要的变量值一一列举出来,便构成一个枚举类型. 二.枚举类型的定义 ·定义方式: enum 枚举类型名字{枚举常量表}: ·关键字enum:说明接下来定义的是一个枚举类 ...

随机推荐

  1. Java并发(4)

    java中的线程安全是什么: 就是线程同步的意思,就是当一个程序对一个线程安全的方法或者语句进行访问的时候,其他的不能再对他进行操作了,必须等到这次访问结束以后才能对这个线程安全的方法进行访问 什么叫 ...

  2. Mybatis配置-简单的使用

    导包 基本配置 配置mybatis.config.xml文档 <?xml version="1.0" encoding="UTF-8" ?> < ...

  3. Mybaties 的缓存

    1.mybaties 默认会话是一级缓存,没有开启二级缓存.开启方式在mapper文件中设置<cache /> 2.<cache eviction="LRU" f ...

  4. 写给程序员的机器学习入门 (五) - 递归模型 RNN,LSTM 与 GRU

    递归模型的应用场景 在前面的文章中我们看到的多层线性模型能处理的输入数量是固定的,如果一个模型能接收两个输入那么你就不能给它传一个或者三个.而有时候我们需要根据数量不一定的输入来预测输出,例如文本就是 ...

  5. 全网首发,腾讯T3-3整理Netty学习方案(体系图+项目+学习文档)

    前言: 想要学好一门技术,最起码要对他有一定的了解,起码听说过相应的底层原理的东西吧,最起码你要有一点能和别人交流的内容吧,下面是我精简的一点内容,希望对于大家了解netty能有一点帮助 Netty是 ...

  6. Java IO(十六)InputStreamReader 和 InputStreamWriter

    Java IO(十六)InputStreamReader 和 InputStreamWriter 一.介绍 InputStreamReader 和 OutputStreamWriter 是字节流通向字 ...

  7. Java中的自动装箱拆箱

    Java中的自动装箱拆箱 一.自动装箱与自动拆箱 自动装箱就是将基本数据类型转换为包装类类型,自动拆箱就是将包装类类型转换为基本数据类型. 1 // 自动装箱 2 Integer total = 90 ...

  8. QueryRunner的添加与查询操作

    Apache-DBUtils实现CRUD操作,commmons-dbutils是Apache组织提供的开源JDBC工具类, 封装了针对于数据库的增删改查操作,Class QueryRunner Tes ...

  9. 继承性与super的使用练习

    练习1: Account: package com.aff.sup; public class Account { private int id;// 账号 private double balanc ...

  10. js异步原理

    javascript引擎 javascript引擎执行时单线程的,如果有一个任务被阻塞,整个浏览器就会处于假死状态 那么遇到这种情况,又在单线程的情况下,不能像java之类的语言创建多几个线程来处理, ...