Home >Database >Mysql Tutorial >mysql常用数据类型详细说明及实例说明(学习笔记一)_MySQL

mysql常用数据类型详细说明及实例说明(学习笔记一)_MySQL

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-01 13:32:031039browse

bitsCN.com

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

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个字符,利用率

 

Varchar(M) 小于M个,最大有65535字节(ascii时),如果实存n个字符,n

证明以上差异实例:

创建表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类型的数据不能设置默认值

 

修改列数据属性

ALTER TABLE `t1` CHANGE `id` `id` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT

alter table 表名 change 字段名 字段列声明(包括字段名)

其中unsigned 必须放在类型之后

 

bitsCN.com
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn