mysql 數據類型,字符集

數據類型

 

1,數值類型
2,字符串類型
3,日期和時間
4,ENUM和SET
5,幾何數據類型mysql

 
數據類型選項

unsigned   無負值
zerofill        數值顯示有影響,會前置0來填充不足位數的數據。對值無影響,只是在輸出是進行了格式化輸出
auto_increment      自動遞增
serial default value==聲明auto_increment not null
 
tinyint    -128----127
smallint    -32768----32767
mediumint    -8388608-----8388607
int(integer)  -2147483648----2147483647
bigint                 -9223372036854775808----9223372036854775807
浮點數
float       4字節        正負1.175494351E-38-----正負3.402823466E+38
double   8字節        正負2.2250738585072014E-308---正負1.7976931348623157E+308
定點數
DEC
DECIMAL
BIT

 
 
字符型

char            0-255
varchar       0-65535
 
tinyblob      0-255
blob             0-65535
mediumblob  0-167772150
longblob         0-4294967295
 
tinytext           0-255
text                  0-65535
mediumtext    0-167772150
longtext           0-4294967295
二進制字符,只能是二進制的字符
varbinary          0-M
binary               0-M
 
 
時間類型

datetime    佔8個字節    能夠顯示日期同時顯示時間  yyyy-mm-dd hh:mm:ss
顯示範圍  1000-01-01 00:00:00----9999-12-31 23:59:59
可用格式
2011-01-01 00:01:10
2011/01/01 00+01+10
20110101000110
11/01/01/  00@01@10
mysql5.5版本以前日期類型沒法精確到微秒級別
 
date               佔3個字節   顯示日期
顯示範圍   1000-01-01----9999-12-31 
 
 
timestamp     佔用4個字節       1970 10 10 80001----2038-01-19 03:14:07
timestamp 和datetime顯示結果同樣
可是顯示範圍不一樣,其次建表時timestamp格式能夠設置默認值,datetime不行
更新表時能夠設置timestamp類型的列自動更新爲當前時間
 
 
 
time                -838:59:59 ----838:59:59
year               1901----2155   可使用year(2)和year(4)
 
與時間相關的函數

now   current_timestamp    sysdate
 
1,now和current_timestamp是一樣的
2,sysdate函數返回執行當前函數時的時間,而now返回的事執行sql語句時的時間
 
時間加減
若是出現目標年份是閏月,會自動加減1天
date_add(date,interval   expr  unit)
date_sub(date,interval   expr  unit)
 
date_add(now(),interval 1  day)
unit  能夠是以下數據
year
month
day
week
hour
minute
second
microsecond
 
date_format()函數,其做用是按用戶需求格式化打印日期,若是查詢條件使用建議使用時間索引。
 
 
 
 
select  date_format(now() ,'%Y%m%d') as datetime ;
 

 字符集

mysql字符集在選擇字符集是
_ci   大小寫不敏感
_cs   大小寫敏感
_bin  二進制
 
字符集(Charset) :是一個系統支持的全部抽象字符的集合。字符是各類文字和符號的總稱,包括各國家文字、標點符號、圖形符號、數字等。
 
常見字符集名稱:ASCII字符集、GB2312字符集、BIG5字符集、GB18030字符集、Unicode字符集等。計算機要準確的處理各類字符集文字,須要進行字符編碼,以便計算機可以識別和存儲各類文字。
 
字符編碼(Character Encoding) :是一套法則,使用該法則可以對天然語言的字符的一個集合(如字母表或音節表),與其餘東西的一個集合(如號碼或電脈衝)進行配對。即在符號集合與數字系統之間創建對應關係,它是信息處理的一項基本技術。一般人們用符號集合(通常狀況下就是文字)來表達信息。而以計算機爲基礎的信息處理系統則是利用元件(硬件)不一樣狀態的組合來存儲和處理信息的。元件不一樣狀態的組合能表明數字系統的數字,所以字符編碼就是將符號轉換爲計算機能夠接受的數字系統的數,稱爲數字代碼。
 
 
Unicode 統一碼 萬國碼 單一碼 標準萬國碼 )是業界的一種標準,它可使電腦得以體現世界上數十種文字的系統。
能夠這樣理解:Unicode是字符集,UTF-32/ UTF-16/ UTF-8是三種字符編碼方案。
相關文章
相關標籤/搜索