附:原文链接http://www.cnblogs.com/kwishly/archive/2012/04/19/2457450.html
unsigned 既为非负数,用此类型可以增加数据长度!
例如如果 tinyint最大是127,那 tinyint unsigned 最大 就可以到 127 * 2
unsigned 属性只针对整型,而binary属性只用于char 和varchar。
tinyint非常小的整数
smallint较小整数
mediumint中等大小整数
int标准整数
bigint较大整数
float单精度浮点数
double双精度浮点数
decimal一个串的浮点数
tinyint[(m)]
有符号值:-128 到127(- 27 到27 - 1)
无符号值:0到255(0 到28 - 1) 1个字节
smallint[(m)]
有符号值:-32768 到32767(- 215 到215 - 1)
无符号值:0到65535(0 到21 6 - 1) 2个字节
mediumint[(m)]
有符号值:-8388608 到8388607(- 22 3 到22 3 - 1 )
无符号值:0到16777215(0 到22 4 - 1) 3个字节
int[(m)]
有符号值:-2147683648 到2147683647(- 231 到231- 1)
无符号值:0到4294967295(0 到232 - 1) 4个字节
bigint[(m)]
有符号值:-9223372036854775808 到9223373036854775807(- 263到263-1)
无符号值:0到18446744073709551615(0到264 – 1) 8个字节
float[(m, d)]
最小非零值:±1.175494351e - 38
double[(m,d)]
最小非零值:±2.2250738585072014e - 308
decimal (m, d)
可变;其值的范围依赖于m 和d
tinyint[(m)]1字节
smallint[(m)]2字节
mediumint[(m)]3字节
int[(m)]4字节
bigint[(m)]8字节
float[(m, d)]4字节
double[(m, d)]8字节
decimal (m, d)m字节(mysql < 3.23),m+2字节(mysql > 3.23 )
mysql提供了五种整型: tinyint、smallint、mediumint、int和bigint。int为integer的缩写。这些类型在可表示的取值范围上是不同的。 整数列可定义为unsigned从而禁用负值;这使列的取值范围为0以上。各种类型的存储量需求也是不同的。取值范围较大的类型所需的存储量较大。
mysql 提供三种浮点类型: float、double和decimal。与整型不同,浮点类型不能是unsigned的,其取值范围也与整型不同,这种不同不仅在于这些类型有最大 值,而且还有最小非零值。最小值提供了相应类型精度的一种度量,这对于记录科学数据来说是非常重要的(当然,也有负的最大和最小值)。
分享到:
相关推荐
MySQL中的`unsigned`关键字是用来声明一个整数类型的字段不接受负数,仅允许存储非负数值。这个特性是MySQL特有的,非标准SQL所支持。使用`unsigned`的主要优点有两个: 1. **约束数值范围**:它能确保字段中的数据...
别名可以使用`as`关键字,如字段别名`selsect id as 序号`,表别名`select s.id from students as s`。去除重复行用`distinct`,如`select distinct gender from students;`。 这只是MySQL笔记的部分内容,实际上...
- 禁止使用MySQL保留关键字作为字段名。 - 每张表必备字段包括:`id`, `gmt_create`, `gmt_modified`。 - 用于表示是否的概念字段,应使用`is_xxx`命名方式,并使用`unsigned tinyint`类型。 - 小数类型应使用`...
通过将 SQL 关键字、表名、列名等元素添加到 `Query` 对象中,可以轻松地构造出所需的 SQL 语句。 ##### 2.3 结果集 在执行查询后,结果会被封装成 `Result` 类型的对象返回。这个对象提供了多种方法来获取查询...
* 无符号和有符号:在定义字段类型时,默认状态下是有符号的,可以使用unsigned关键字指定无符号类型。 * char和varchar类型:char类型表示固定长度字符串,varchar类型表示可变长度字符串,各有其优缺点。 * text...
若要定义无符号字段,需添加 `UNSIGNED` 关键字。 - 插入的整数值超出范围时,MySQL会插入该类型的边界值。 - 若未指定整型字段的具体长度,MySQL会为其分配一个默认长度。 - **小数型**: 例如 `DECIMAL`, `FLOAT`...
- `UNSIGNED`:表示该字段为无符号类型,不包含负数。 - `ZEROFILL`:零填充功能,当数据长度不足时使用前导零进行填充。 - `NOT NULL`:非空约束,意味着该字段必须赋值。 - `DEFAULT`:设置字段的默认值。 - ...
无符号(unsigned)和有符号(signed)是整数类型的一个关键属性。无符号类型只能存储正整数,其范围比有符号类型大一倍。例如,一个有符号的INT类型可以存储-2^31到2^31-1的整数,而无符号的INT类型则能存储0到2^32...
- 使用特殊字符命名:如需使用关键字作为数据库名称,需要使用反引号 (`) 包围名称,如 `create database `database`;` - **选择数据库**:使用 `use 数据库名称;` 选择一个已存在的数据库作为当前工作数据库。 ##...
4. **创建表结构**:使用 `CREATE TABLE` 创建新表,例如 `CREATE TABLE test (id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, username VARCHAR(15) NOT NULL);` 这里定义了一个包含自动递增主键的表。`...
5. **限制查询范围**:尽可能缩小查询范围,例如使用LIMIT等关键字减少返回结果的数量,以减轻服务器负担。 6. **合理设计表结构**:在设计数据库表结构时,充分考虑查询需求,合理安排索引字段,以提高查询效率。 ...
INSERT INTO `news` VALUES ('1', '标题', '关键字', '作者', '20180602', '内容已经修改'); INSERT INTO `news` VALUES ('2', '测试2', '测试', '陈为', '1527937766', '陈为自己来测试'); INSERT INTO `news` ...
- Unsigned:无符号整数,不允许负值 - ZeroFill:如果数值不足位宽,用0填充 - 自增(AUTO_INCREMENT):自动增加,通常用于主键 - Index:创建索引,提高查询速度 - Null/NOT NULL:允许或不允许为空 - 默认值...
1. **大小写不敏感**:MySQL在处理SQL语句时,关键字和表名、数据库名等是不区分大小写的,但为了代码的可读性,通常推荐使用大写字母表示关键字,小写字母表示自定义的表名和列名。 2. **基础语句**:MySQL的基础...
`IF NOT EXISTS`关键字确保如果数据库已经存在,则不会重复创建,从而避免错误发生。同时,通过指定`DEFAULT CHARSET=utf8mb4`来支持更广泛的Unicode字符集。 2. **查看数据库**: ```sql SHOW DATABASES; ``` ...
- 模糊查询使用LIKE关键字配合通配符(%表示任意字符出现任意次数,_表示任意单个字符)进行不精确匹配。 9. MySQL的配置和优化 - MySQL的性能可以通过配置my.ini文件进行优化,例如调整最大连接数、连接错误限制...
创建唯一索引的方法与主键索引类似,只是关键字为UNIQUE。 ```sql CREATE TABLE ddd ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(32) UNIQUE ); ``` - **全文索引**:主要用于全文搜索场景,尤其是在...
模糊查询使用`like`关键字,`%`匹配多个字符,`_`匹配单个字符。正则表达式匹配则使用`regexp`。 存储过程和函数是MySQL中增强数据库功能的重要工具,它们允许我们封装复杂的SQL逻辑并重复使用。存储过程可以接受...
4. 经常需要将一列设置为“BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE”属性,这是自增主键的常见设定,可以使用“SERIAL”关键字简化这个定义。 5. 自连接是指一张表与其自身进行连接进行的查询,需要对表...