与MSSQL对比学习MYSQL的心得(二)--显示宽度
我们先来看看整数型数据类型的宽度范围
创建一个表
CREATE TABLE tb_emp( id BIGINT(1))
id字段的数据类型为BIGINT(1),注意到后面的数字1,这表示的是该数据类型指定的显示宽度,指定能够显示的数值中数字的个数。
例如,假设声明一个INT类型的字段 YEAR INT(4)
该声明指明,在year字段中的数据一般只显示4位数字的宽度。
在SQLSERVER里是会报错的
CREATE TABLE abc
(id INT(11))
消息 2716,级别 16,状态 1,第 1 行
第 1 个列、参数或变量: 不能对数据类型 int 指定列宽。
显示宽度和数据类型的取值范围是无关的。显示宽度只是指明MYSQL最大可能显示的数字个数,数值的位数小于指定的宽度时会有空格填充
如果插入了大于显示宽度的值,只要该值不超过该类型整数的取值范围,数值依然可以插入,而且能显示出来。
例如,向year字段插入一个数值19999,当使用select查询的时候,MYSQL显示的将是完整带有5位数字的19999,而不是4位数字的值
如果不指定显示宽度,则MYSQL为每一种类型指定默认的宽度值
tips:显示宽度只用于显示,并不能限制取值范围和占用空间,例如:INT(3)会占用4个字节的存储空间,并且允许的最大值也不会是999,而是INT整型所允许的最大值。
相关推荐
-
mysql 存在该记录则更新,不存在则插入记录的sql
复制代码 代码如下: INSERT table (auto_id, auto_name) values (1, 'yourname') ON DUPLICATE KEY UPDATE auto_name='yourname' ON DUPLICATE KEY UPDATE的使用 如果您指定了ON DUPLICATE KEY UPDATE,并且插入行后会导致在一个UNIQUE索引或PRIMARY KEY中出现重复值,则执行旧行UPDATE.例如,如果列a被定义为UNIQUE,并且包含值1,则以下两
-
与MSSQL对比学习MYSQL的心得(八)--插入 更新 删除
同样的,只会讲解跟SQLSERVER不同的地方 插入 将多行查询结果插入到表中 语法 INSERT INTO table_name1(column_list1) SELECT (column_list2) FROM table_name2 WHERE (condition) INSERT INTO SELECT 在SQLSERVER里也是支持的 table_name1指定待插入数据的表:column_list1指定待插入表中要插入数据的哪些列:table_name2指定插入数据是从 哪个表中查询
-
与MSSQL对比学习MYSQL的心得(三)--查看字段的长度
SQLSERVER 复制代码 代码如下: USE [sss]GOSELECT LEN([NAME]) FROM [dbo].[aa] MYSQL 复制代码 代码如下: CREATE TABLE tmp13(vb VARBINARY(10))INSERT INTO tmp13 (vb) VALUES(12)SELECT LENGTH(vb) FROM tmp13INSERT INTO tmp13 (vb) VALUES(1212)
-
MySQL 在触发器里中断记录的插入或更新?
下面是一种实现的方法.思路就是想办法在触发器中利用一个出错的语句来中断代码的执行. mysql> create table t_control(id int primary key); Query OK, 0 rows affected (0.11 sec) mysql> insert into t_control values (1); Query OK, 1 row affected (0.05 sec) mysql> create table t_bluerosehero(id i
-
与MSSQL对比学习MYSQL的心得(一)--基本语法
这一期主要是学习MYSQL的基本语法,陆续还会有续期的文章,敬请期待 语法的差异 我这里主要说语法的不同 1.默认约束 区别:mysql里面DEFAULT关键字后面是不用加括号的 复制代码 代码如下: --sqlserverCREATE TABLE emp(id INT DEFAULT(12))--mysqlCREATE TABLE emp(id INT DEFAULT 12) 2.设置自增列 区别很大,不过好像mysql的自增列不能设置步长的 MYSQL的自增列一定也要是主键列,不是主键列会报
-
与MSSQL对比学习MYSQL的心得(七)--查询
比较出大家的异同点,从而加深记忆 这一篇<与MSSQL对比学习MYSQL的心得(七)>也是一样,相同的地方略略带过,不同的地方我会给出例子,谢谢大家的支持o(∩_∩)o 这一节主要介绍MYSQL里的基本查询(MYSQL官方参考手册) MySQL中select的基本语法形式: select 属性列表 from 表名和视图列表 [where 条件表达式] [group by 属性名[having 条件表达式]] [order by 属性名[asc|desc]] [limit <offset&
-
与MSSQL对比学习MYSQL的心得(六)--函数
数学函数 1.求余函数MOD(X,Y) MOD(X,Y)返回x被y除后的余数,MOD()对于带有小数部分的数值也起作用,他返回除法运算后的精确余数 SELECT MOD(31,8) 2.四舍五入函数TRUNCATE(X,Y) TRUNCATE(X,Y)返回被舍去至小数点后y位的数字x.若y的值为0,则结果不带有小数点或不带有小数部分. 若y设为负数,则截去(归零)x小数点左边起第y位开始后面所有低位的值. SELECT TRUNCATE(1.32,1) TRUNCATE(1.32,1)保留小数点
-
与MSSQL对比学习MYSQL的心得(五)--运算符
安全等于运算符(<=>) 这个操作符和=操作符执行相同的比较操作,不过<=>可以用来判断NULL值. 在两个操作数均为NULL时,其返回值为1而不为NULL: 而当一个操作数为NULL时,其返回值为0而不为NULL. 下面分别是 SELECT NULL <=>1 SELECT 1<=>0 SELECT NULL <=>NULL 的执行结果 在两个操作数均为NULL时,其返回值为1而不为NULL: LEAST运算符 语法格式为:LEAST(值
-
与MSSQL对比学习MYSQL的心得(四)--BLOB数据类型
MYSQL里的BLOB数据类型 BLOB是一个二进制大对象,用来存储可变数量的数据.BLOB类型分为4种:TinyBlob.Blob.MediumBlob.LongBlob, 这几个类型之间的唯一区别是在存储文件的最大大小上不同. MySQL的四种BLOB类型 类型 大小(单位:字节) TinyBlob 最大 255Blob 最大 65KMediumBlob
-
mysql如果数据不存在,则插入新数据,否则更新的实现方法
//如果不存在,则插入新数据 $sql = "INSERT INTO {$ecs->table('cat_lang')} (cat_id,lang_id,cat_name,keywords,cat_desc) VALUES({$cat_id},{$k},'{$val['cat_name']}','{$val['keywords']}','{$val['cat_desc']}') ON DUPLICATE KEY UPDATE cat_name='{$val['cat_name']}',ca
-
mysql 记录不存在时插入 记录存在则更新的实现方法
mysql 记录不存在时插入在 MySQL 中,插入(insert)一条记录很简单,但是一些特殊应用,在插入记录前,需要检查这条记录是否已经存在,只有当记录不存在时才执行插入操作,本文介绍的就是这个问题的解决方案. 问题:我创建了一个表来存放客户信息,我知道可以用 insert 语句插入信息到表中,但是怎么样才能保证不会插入重复的记录呢? 答案:可以通过使用 EXISTS 条件句防止插入重复记录. 示例一:插入多条记录 假设有一个主键为 client_id 的 clients 表,可以使用下面的
随机推荐
- utf8和unicode编码究竟是什么关系?有何区别?
- Three.js入门之hello world以及如何绘制线
- 探讨:使用httpClient在客户端与服务器端传输对象参数的详解
- firefox下javascript实现高亮关键词的方法
- 用PHP函数解决SQL injection
- freemarker 数字格式化深入理解
- date.parse在IE和FF中的区别
- 简单实现jsp分页
- 服务器完美设置,支持asp php cgi jsp asp.net mysql!
- Powershell小技巧之捕获脚本内部的异常
- 1980病毒完整解决方案
- jQuery插件HighCharts实现的2D堆条状图效果示例【附demo源码下载】
- 解决Android 沉浸式状态栏和华为虚拟按键冲突问题
- Java责任链设计模式
- javascript iframe中打开文件,并检测iframe存在否
- Android多点触控实现图片自由缩放
- python中lambda()的用法
- 利用js给datalist或select动态添加option选项的方法
- Java编程数组中最大子矩阵简便解法实现代码
- Java设计模式之监听器模式实例详解