程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> Mysql常用數據類型詳細說明及實例說明(學習筆記一)

Mysql常用數據類型詳細說明及實例說明(學習筆記一)

編輯:MySQL綜合教程

1.Mysql 在

Net start mysql[

Net stop mysql[

Quit[

\c[

Select version(),current_date()

Mysql 

Now()

User() 用戶

select sin( pi()/6),100/3;

 

提示符

含義

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

 

列聲明中可選屬性 unsigned ,zerofill

Tinyint

只有當給

比如定義了

小數型:

浮點型

Float(M,D)  M

比如

-9999.99-9999.99

688.896

1,3,7,9

2,4,6,8,5

定點型:

Decimal(M,D)

插入時數據與存入的數據差異小

字符型:

Char(M) M而非字節大小一個漢字字節而它仍是一個字符(插入的數據小於規定長度時用空格補齊 取出時去掉尾部空格,如果插入的數據尾部就是帶有空格的,則一存一取後尾部空格會丟失,小於

 

Varchar(M) 

證明以上差異實例:

創建表

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;

會發現

 對於日期型的數據,默認為   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 

alter table 表名  modify column 字段名 屬性聲明 ...

 where與having

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved