Mysql常用数据类型详细说明及实例说明(学习笔记一)
1.Mysql 在windows下
Net start mysql[启动]
Net stop mysql[停止]
Quit[退出mysql命令行]
\c[取消输入的命令]
Select version(),current_date()
Mysql 版本号,现在的日期(年月日如2013-7-15)
Now()现在时间(年月日时分秒如 2013-07-15 08:29:56)
User() 用户
2.当简单的计算器
select sin( pi()/6),100/3;

3.不必全在一个行内给出一个命令,较长的命令可以输入到多个行中。Mysql 通过寻找终止分号而不是输入行的结束来决定语句在哪结束。
Mysql状态
|
提示符 |
含义 |
|
Mysql> |
准备好接受新命令 |
|
-> |
等待多行命令的下一行 |
|
‘> |
等待下一行,等待以单引号(“’”)开始的字符串的结束 |
|
“ |
等待下一行,等待以双引号(“’”)开始的字符串的结束 |
|
` |
等待下一行,等待以反斜点(“`”)开始的字符串的结束 |
|
/* |
等待下一行,等待以/*开始的注释的结束 |

注意:当输入’, “, `时若不输入与之对应的结束符则无法输入新的命令
4.Mysql常用列类型
①串数据数据类型
|
数据类型 |
说明 |
|
char |
1-255个字符的定长串。他的长度必须在创建时指定否则Mysql假定为char(1) |
|
varchar |
长度可变,整体体最大长度是65,532字节如果创建时指定为varchar(n),则可存储0-n个字符的变长串(n<=65535)字符集而定 |
|
tinytext |
与text相同,最大长度为255字节 |
|
mediumtext |
与text相同,但最大16k |
|
text |
最大长度为64k的变长文本 |
|
longtext |
与text相同,但最大长度为4GB |
|
enum |
接受最多64k个串组成的一个预定义集合的某个串 |
|
set |
接受最多64k个串组成的一个预定义集合的0个或多个串 |
数值数据类型
|
数据类型 |
说明 |
|
tinyint |
整数值,支持-128-127(如果unsigned,为0-255)的数 1字节 |
|
smallint |
整数值,支持-32768-32767(unsigned,0-65535) 2字节 |
|
mediumint |
-8388608-8388607(undesigned 0-) 3字节 223 -223-223-1 |
|
int |
231 4字节 |
|
bigint |
8字节 |
|
float |
单精度浮点值 |
|
double |
双精度浮点值 |
|
boolean |
布尔 |
|
decimal |
精度可变的浮点值 |
|
peal |
4字节的浮点值 |
|
bit |
为字段,1-64位.(mysql5之前功能上等于tinyint) |
日期和时间数据类型
|
数据类型 |
说明 |
|
DATE |
表示1000-01-01至9999-12-31的日期,格式(YYYY-MM-DD) |
|
DATETIME |
DATE和TIME的组合 |
|
TIMESTAMP |
功能上同DATETIME(但范围较小) |
|
TIME |
格式 HH:MM:SS |
|
YEAR |
用2位数字表示,范围是70(1970)-69(2069),4位表示,1901-2155 |
二进制数据
|
数据类型 |
说明 |
|
TINYBLOB |
Blob最大长度为255字节 |
|
BLOB |
64kb |
|
MEDIUMBLOB |
16MB |
|
LONGBLOB |
4GB |
5.相关数据类型说明补充
列声明中可选属性 unsigned ,zerofill
Tinyint时默认tinyint(4)
只有当给zerofill时括号里给定长度才有意义
比如定义了zerofill tinyint(5) 插入1时则插入的是00001
小数型:
浮点型(不太标准),定点型(4或8个字节较复杂)
Float(M,D) M不算.的总位数,D小数点后的位数
比如float(6,4)范围是
-9999.99-9999.99
688.896插入进去是688.90
1,3,7,9舍去
2,4,6,8,5进位
定点型:
Decimal(M,D)
插入时数据与存入的数据差异小
字符型:
Char(M) M均代表可容纳的字符长度而非字节大小一个汉字z占3个字节而它仍是一个字符(据编码而定),插入的数据小于规定长度时用空格补齐 取出时去掉尾部空格,如果插入的数据尾部就是带有空格的,则一存一取后尾部空格会丢失,小于M时也占M个字符,利用率<=100%;
Varchar(M) 小于M个,最大有65535字节(ascii时),如果实存n个字符,n<=M,它必须还得用1-2个字节来记录实际存多少,取时取多少,尾部有空格也不会丢失,利用率=n/(n+1~2字节)<100%,小于255记录时用一个字节,大于时用2个字节
证明以上差异实例:
创建表t2
CREATE TABLE `t2` (
`id` int(10) unsigned NOT NULL auto_increment,
`name` char(7) NOT NULL,
`pass` varchar(8) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
插入尾部带空格的数据
insert into t2(name,pass)
value('hk ','hk ');
取出数据
select concat(name,'!'),concat(pass,'!') from t2;
会发现

Char与varchar区别
1.Char :1-255定长串 Varchar:0-65535
2.实占空间与利用效率不一样
3.对尾部空格的处理
Char(可以不给长度默认1),varchar在表创建时都必须给定长度,tinytext类型的不能给定长度,text可以不给可以给定长度,text类型的数据不能设置默认值
对于日期型的数据,默认为 CURRENT_TIMESTAMP等自动填充的值时,为保证修改某条相关的信息时这条里的时间也随着修改,长加on update 改变的因素
比如创建一个时间型字段
列声明为:
·stamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP
修改列数据属性
法一:
ALTER TABLE `t1` CHANGE `id` `id` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT
alter table 表名 change 字段名 字段列声明(包括字段名)
其中unsigned 必须放在类型之后
法二:
alter table 表名 modify column 字段名 属性声明 ...
where与having
数据在表中,表在硬盘或内存中以文件形式存在
where针对表文件发挥作用
查询出的结果也可以看做一张表,其文件一般临时存在缓冲区,
having就是针对查询结果(也可以是原表)发挥作用
Mysql常用数据类型详细说明及实例说明(学习笔记一)的更多相关文章
- MySQL数据库3 - MySQL常用数据类型
一. MySql常用数据类型 数据类型:整数(tinyint smailint int bigint) 定点数 decimal(p,s) ------ 小数点位置固定的 ---> 数 ...
- Mysql常用数据类型
Mysql常用数据类型 数字: 字符串: 时间:
- Mysql常用数据类型归纳总结1
一直在用Mysql数据库,Mysql的数据类型也最常打交道的.但关于Mysql的一些常用数据类型了解程度仅限于一知半解,仅仅能满足满足于平时一些最简单的操作.而Mysql常用数据类型的定义以及规范理解 ...
- 《C#并发编程经典实例》学习笔记—2.7 避免上下文延续
避免上下文延续 在默认情况下,一个 async 方法在被 await 调用后恢复运行时,会在原来的上下文中运行. 为了避免在上下文中恢复运行,可让 await 调用 ConfigureAwait 方法 ...
- 《C#并发编程经典实例》学习笔记—3.1 数据的并行处理
问题 有一批数据,需要对每个元素进行相同的操作.该操作是计算密集型的,需要耗费一定的时间. 解决方案 常见的操作可以粗略分为 计算密集型操作 和 IO密集型操作.计算密集型操作主要是依赖于CPU计算, ...
- Mysql常用命令 详细整理版
Mysql常用命令 show databases; 显示数据库 create database name; 创建数据库 use databasename; 选择数据库 drop database na ...
- Mysql 常用数据类型 占用字节数 [转]
数据类型是定义列中可以存储什么数据以及该数据实际怎么存储的基本规则.Mysql的常用数据类型主要有: 串数据类型:最常用的数据类型,有两种基本的串类型:分别为定长串和不定长串.定长串结束长度固定的字符 ...
- MySQL常用数据类型 length 专题
MySQL-data_type数据类型 1.查看数据类型 mysql> help data type //通过help对数据进行查看,以及使用的方法 2.MySQL常见的数据类型 整数in ...
- MySql常用数据类型分析
整数类型 TINYINT.SMALLINT.MEDIUMINT.INT.BIGINT 分别使用8,16,24,32,64位存储空间,值得范围-2的(N-1)方到2的(N-1)方-1.根据需要存储的范围 ...
随机推荐
- uWSGI其三:uWSGI搭配Nginx使用
http://www.nowamagic.net/academy/detail/1330334 上一篇介绍了 uWSGI 来部署 Django 程序,但在在生产环境中单单只有 uWSGI 是不够的,N ...
- C# 数据回滚
public int GetExecteQuery(string strAddSql, string strUpdateSql, string strDelSql) { SqlConnection c ...
- css required,focus,valid和invalid介绍
本文章来给大家介绍在css3定义required,focus,valid和invalid样式的方法,此方法目前只支持ie9+及ff,gg浏览器哦.css3 提示只适用于高级浏览器:ChromeFire ...
- [转]iOS技巧之获取本机通讯录中的内容,解析通讯录源代码
一.在工程中添加AddressBook.framework和AddressBookUI.framework 二.获取通讯录 1.在infterface中定义数组并在init方法中初始化 ? 1 2 3 ...
- 没有终结点在侦听可以接受消息的*这通常是由于不正确的地址或者 SOAP操作导致的
引发原因:项目启动时,前端调用 wcf地址,引用的地址访问无法在 IIS Express找到导致该错误 解决方法,找出前端的web.config 查看引用的项目是什么地址开头,如 localho ...
- 解决wamp mysql数据库出现乱码的问题。
一般的乱码情况: 如果在控制台上出现這样的乱码,一般在phpmysqladmin上也会出现乱码,因为他们都一样 一个在控制台出现,一个在页面出现. 首先在mysql.exe上输出 mysql>S ...
- Android WebView与JavaScript交互操作(Demo)
应用场景: 为了使Android移动项目能够在较短的时间内完成开发,同时降低技术人员开发的成本投入,往往会采用Hybrid APP的开发模式.相关Hybrid APP(混合型应用)参看:http:// ...
- 使用ngin的静态文件下载
1,主配置文件nginx.xml #user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error. ...
- 重拾qt
最近公司又接了一个煤矿的项目,要写个小程序摘取数据,我是公司唯一c++程序员,本来搞ios搞好好的,现在又得重拾半年没摸得qt了.呵呵...呵呵呵. 这里只记录这次小程序的一些小的总结吧.. 1.中文 ...
- phonegap android3.5.1 Crosswalk
1. your phonegap platform for android update 3.5.1 cordova platform add android@3.5 2. download cros ...