mysql中的enum和set其实都是string类型的而且只能在指定的集合里取值,
不同的是set可以取多个值,enum只能取一个
CREATE TABLE `20121101_t` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(20) NOT NULL,
`cl` set('x','w','r') NOT NULL,
`c2` enum('f','d') NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB
insert into 20121101_t
values(null,'a.txt','r,w','d');
insert into 20121101_t
values(null,'b.txt','r,w','f');
比如给b.txt文件加上执行权限
update 20121101_t set cl = cl|1 where id =2
1是因为x权限出现在了第一个
再比如给b.txt文件去掉写权限
update 20121101_t set cl = cl&~2 where id =2
这时再看
select * from 20121101_t
1 a.txt w,r d
2 b.txt x,r f
可以仿照linux下chmod的用法,直接用数字表示权限
比如把b.txt变成只读
update 20121101_t set cl = 4 where id =2
比如要找到所有包含了读权限的文件
select * from 20121101_t where cl&4
或者
select * from 20121101_t where FIND_IN_SET('r',cl)>0
enum就相对简单了,比如把a.txt从文件夹变成文件
update 20121101_t set c2 = 'f' where id =1
分享到:
相关推荐
MySQL中的`SET`和`ENUM`是两种特殊的字符串数据类型,它们在数据库设计时用于存储有限的、预定义的选项。这篇文章将深入探讨这两种数据类型的特性、用途以及它们之间的区别。 首先,`SET`类型允许你存储一组离散的...
在Java的Hibernate框架中,如果你需要映射一个MySQL的`SET`类型字段,可以使用`@ElementCollection`和`@CollectionTable`注解。例如,假设我们有一个`User`类,其中有一个`interests`字段存储用户的兴趣: ```java @...
3. 字符串类型:MySQL 的字符串类型主要包括 CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM 和 SET。CHAR 和 VARCHAR 用于存储非二进制文本,其中 VARCHAR 更适合存储可变长度的字符串。BINARY 和 VARBINARY ...
在 Java 编程中,了解 Java 数据类型和 MySql 数据类型的对应关系非常重要。这是因为在 Java 应用程序中,我们经常需要与数据库进行交互,而 MySql 是一种常用的关系数据库管理系统。在本文中,我们将详细介绍 Java ...
MySQL数据库提供了一种枚举类型enum,它允许在列中存储预定义值集合中的一个值。本篇内容将详细介绍如何使用MySQL的enum类型,并通过实例测试来讲解其用法和潜在的问题。 首先,enum类型的定义是在创建表时指定的,...
MySQL 数据类型选择是数据库设计中非常重要的一步,因为不同的数据类型选择对数据库的性能和存储空间都有着很大的影响。在 MySQL 中,选择合适的数据类型可以提高查询效率、降低存储空间占用、提高数据的准确性和...
MySQL中的ENUM字段是一种特殊的数据类型,它允许你在字段中存储预定义的一组枚举值。ENUM类型在设计数据库时提供了一定的灵活性和规范性,因为它可以在创建表时设定允许的值列表。然而,正如标题和描述中所指出的,...
MySQL 支持的枚举和集合类型包括 ENUM 和 SET 等。 * 枚举类型:用于存储枚举值,例如 enum('male', 'female')。 * 集合类型:用于存储集合值,例如 set('a', 'b', 'c')。 MySQL 支持的数据类型非常丰富,涵盖了...
字符串类型包括 CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM 和 SET 等。二进制类型包括 BIT、BINARY、VARBINARY、TINYBLOB、BLOB、MEDIUMBLOB 和 LONGBLOB。 数值类型是 MySQL 中最基本的数据类型。它...
本文将详细介绍MySQL中的主要数据类型,并通过与Oracle数据类型的对比,帮助读者更好地理解和应用这些类型。 #### 二、MySQL数据类型详解 MySQL的数据类型大致可以分为四类:数值类型、字符串类型、日期/时间类型...
17. **SET**: SET类型与ENUM类似,但允许从一组预定义的值中选择0个、1个或多个,如兴趣爱好等多选属性。 选择合适的数据类型对于优化数据库性能、节省存储空间以及确保数据准确性至关重要。在设计数据库时,应根据...
本文档主要介绍 MySQL 数据库服务的概述、构建 MySQL 服务、数据库基本管理和 MySQL 数据类型。下面是详细的知识点: 数据库服务概述 数据库服务是指提供数据库管理和数据存储服务的系统。MySQL 是一种关系型...
Mysql支持enum和set类型,而SQLserver不支持这些类型。Mysql的递增语句是AUTO_INCREMENT,而SQLserver是identity(1,1)。在Mysql中,不允许在表创建语句中使用双括号,而SQLserver中可以使用双括号。 存储引擎 ...
在数据类型方面,MySQL 4.1.0增加了对新型数据类型的支援,例如BINARY和VARBINARY,用于存储二进制数据,以及 ENUM 和 SET 类型,它们允许用户在列中存储预定义的值集合。这些新类型使得数据存储更加灵活,适应不同...
MySQL 提供了两种枚举类型,包括 ENUM 和 SET。 * ENUM:占用 1 或 2 字节,用于存储字符属性,只能选择其中一个。 * SET:占用 1 到 8 字节,用于存储字符属性,能够选择多个字符的联合。 了解 MySQL 数据类型...
DATE和TIMESTAMP类型 7.3.6.3 TIME类型 7.3.6.4 YEAR类型 7.3.7 字符串类型 7.3.7.1 CHAR和VARCHAR类型 7.3.7.2 BLOB和TEXT类型 7.3.7.3 ENUM类型 7.3.7.4 SET类型 7.3.8 为...
MySQL 提供了 ENUM 和 SET 两种枚举类型。 * ENUM:占用 1 或 2 字节的存储空间,可以存储最多 65535 个不同的值。 * SET:占用最多 8 字节的存储空间,可以存储最多 64 个不同的值。 了解 MySQL 的数据类型可以...
TEXT类型用于存储大量文本,ENUM和SET则分别用于存储预定义的枚举值和集合值。 **二进制类型**包括 BINARY、VARBINARY、BIT、TINYBLOB、BLOB、MEDIUMBLOB 和 LONGBLOB,这些类型用于存储二进制数据,如图片或音频...
10.2. MySQL中的字符集和校对 10.3. 确定默认字符集和校对 10.3.1. 服务器字符集和校对 10.3.2. 数据库字符集和校对 10.3.3. 表字符集和校对 10.3.4. 列字符集和校对 10.3.5. 字符集和校对分配示例 10.3.6. 连接字符...