婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > mysql8.0.19基礎(chǔ)數(shù)據(jù)類型詳解

mysql8.0.19基礎(chǔ)數(shù)據(jù)類型詳解

熱門(mén)標(biāo)簽:云南大數(shù)據(jù)外呼系統(tǒng) 機(jī)器人打電銷電話 博樂(lè)電銷機(jī)器人 怎么更改高德地圖標(biāo)注 400電話到哪辦理優(yōu)惠 電話機(jī)器人是電腦呼號(hào)嗎 鄭州網(wǎng)絡(luò)外呼系統(tǒng)價(jià)錢(qián) 上海市三維地圖標(biāo)注 南寧外呼系統(tǒng)招商

mysql基礎(chǔ)數(shù)據(jù)類型

mysql常用數(shù)據(jù)類型概覽

![1036857-20170801181433755-146301178](D:\筆記\mysql\復(fù)習(xí)\1036857-20170801181433755-146301178.png)1. 數(shù)字:
 整型:tinyinit int bigint
 小數(shù):
 float :在位數(shù)比較短的情況下不精準(zhǔn)
 double :在位數(shù)比較長(zhǎng)的情況下不精準(zhǔn)
 0.000001230123123123
 存成:0.000001230000

 decimal:(如果用小數(shù),則用推薦使用decimal)
 精準(zhǔn)
 內(nèi)部原理是以字符串形式去存
 
2. 字符串:
 char(10):簡(jiǎn)單粗暴,浪費(fèi)空間,存取速度快
 root存成root000000
 varchar:精準(zhǔn),節(jié)省空間,存取速度慢

 sql優(yōu)化:創(chuàng)建表時(shí),定長(zhǎng)的類型往前放,變長(zhǎng)的往后放
 比如性別 比如地址或描述信息

 >255個(gè)字符,超了就把文件路徑存放到數(shù)據(jù)庫(kù)中。
 比如圖片,視頻等找一個(gè)文件服務(wù)器,數(shù)據(jù)庫(kù)中只存路徑或url。

3. 時(shí)間類型:
 最常用:datetime
 
4. 枚舉類型與集合類型

數(shù)值類型

[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來(lái)直接上傳(img-HAIxWM9Z-1585063057990)(D:\筆記\mysql\復(fù)習(xí)\1036857-20170801181433755-146301178.png)]

1、整數(shù)類型

  • 整數(shù)類型:TINYINT,SMALLINT,MEDIUMINT,INT,BIGINT
  • 作用:存儲(chǔ)年齡,等級(jí),id,各種號(hào)碼等
整型類型測(cè)試
 默認(rèn)是有符號(hào)的
mysql> create table t1(money tinyint); #注意,創(chuàng)建表時(shí)最后一個(gè)字段后面不能有逗號(hào),錯(cuò)誤寫(xiě)法mysql> create table t1(money tinyint,);

mysql> insert into t1 values(11);
Query OK, 1 row affected (0.28 sec)

mysql> select * from t1;

mysql> insert into t1 values(-10);
Query OK, 1 row affected (0.11 sec)

mysql> select * from t1;

mysql> insert into t1 values(-200);
Query OK, 1 row affected, 1 warning (0.10 sec)

mysql> select * from t1;

設(shè)置了數(shù)據(jù)類型,會(huì)有一個(gè)約束效果,只能表示自己范圍內(nèi)的數(shù)

創(chuàng)建 無(wú)符號(hào)數(shù)值類型 的寫(xiě)法:
mysql> create table t2(id tinyint unsigned);

2、浮點(diǎn)型

  • 浮點(diǎn)類型:float double
  • 作用:存儲(chǔ)薪資、身高、溫度、體重、體質(zhì)參數(shù)等
測(cè)試
mysql> create table t3(id float(60,30)); # 60代表小數(shù)位+整數(shù)位總數(shù)
Query OK, 0 rows affected (1.70 sec) # 30表示小數(shù)位最高30位

mysql> create table t4(id double(60,30));
Query OK, 0 rows affected (0.88 sec)

mysql> create table t5(id decimal(60,30)); # decimal能夠存儲(chǔ)精確值的原因在于其內(nèi)部按照字符串存儲(chǔ)。
Query OK, 0 rows affected (0.96 sec)

mysql> insert into t3 values(1.1111111111111111111111);
Query OK, 1 row affected (0.13 sec)

mysql> insert into t4 values(1.1111111111111111111111);
Query OK, 1 row affected (0.22 sec)

mysql> insert into t5 values(1.1111111111111111111111);
Query OK, 1 row affected (0.09 sec)

mysql> select * from t3;
mysql> select * from t4;
mysql> select * from t5;
1.創(chuàng)建表 
create table t2(f1 float(5,2),f2 float,f3 double(5,2),f4 double);

float(5,2) 			保留兩位小數(shù) 并且四舍五入
double(5,2)
2.寫(xiě)入數(shù)據(jù)		
insert into t2 values(5.2336,5.2336,5.336,5.2336);
3.查看表中數(shù)據(jù) 	
select * from t2;
4.指定寫(xiě)入數(shù)據(jù)
insert into t2(f2,f4) values(5.1783682169875975,5.1783682169875975);

insert into 表名(字段1,字段3) values (值1,值3);

1.創(chuàng)建t3表
create table t3(f1 float,d1 double,d2 decimal(30,20),d3 decimal);
2.查看表結(jié)構(gòu)
desc t3;
3.寫(xiě)入數(shù)據(jù) 	
insert into t3 values(5.1783682169875975179,5.1783682169875975179,5.1783682169875975179,5.1783682169875975179);

int--------不約束長(zhǎng)度,最多表示10位數(shù)

float(m,n)				m-----一共多少位 		 n-----小數(shù)部分多少位 

日期類型

  • 類型:DATE,TIME,DATETIME ,IMESTAMP,YEAR
  • 作用:存儲(chǔ)用戶注冊(cè)時(shí)間,文章發(fā)布時(shí)間,員工入職時(shí)間,出生時(shí)間,過(guò)期時(shí)間等
mysql> create table t6(d1 year ,d2 date,d3 datetime);
Query OK, 0 rows affected (1.75 sec)

mysql> insert into t6 values(now(),now(),now());
Query OK, 1 row affected, 1 warning (0.12 sec)

mysql> select * from t6;

字符串類型

char和varchar性能對(duì)比:
    以char(5)和varchar(5)來(lái)比較,加入我要存三個(gè)人名:sb,ssb1,ssbb2
    char:
      優(yōu)點(diǎn):簡(jiǎn)單粗暴,不管你是多長(zhǎng)的數(shù)據(jù),我就按照規(guī)定的長(zhǎng)度來(lái)存,5個(gè)5個(gè)的存,三個(gè)人名就會(huì)類似這種存儲(chǔ):sb ssb1 ssbb2,中間是空格補(bǔ)全,取數(shù)據(jù)的時(shí)候5個(gè)5個(gè)的取,簡(jiǎn)單粗暴速度快
      缺點(diǎn):貌似浪費(fèi)空間,并且我們將來(lái)存儲(chǔ)的數(shù)據(jù)的長(zhǎng)度可能會(huì)參差不齊

    varchar:
      varchar類型不定長(zhǎng)存儲(chǔ)數(shù)據(jù),更為精簡(jiǎn)和節(jié)省空間
      例如存上面三個(gè)人名的時(shí)候類似于是這樣的:sbssb1ssbb2,連著的,如果這樣存,請(qǐng)問(wèn)這三個(gè)人名你還怎么取出來(lái),你知道取多長(zhǎng)能取出第一個(gè)嗎? 
 
      varchar在存數(shù)據(jù)的時(shí)候,會(huì)在每個(gè)數(shù)據(jù)前面加上一個(gè)頭,這個(gè)頭是1-2個(gè)bytes的數(shù)據(jù),這個(gè)數(shù)據(jù)指的是后面跟著的這個(gè)數(shù)據(jù)的長(zhǎng)度,1bytes能表示2**8=256,兩個(gè)bytes表示2**16=65536,能表示0-65535的數(shù)字,所以varchar在存儲(chǔ)的時(shí)候是這樣的:1bytes+sb+1bytes+ssb1+1bytes+ssbb2,所以存的時(shí)候會(huì)比較麻煩,導(dǎo)致效率比char慢,取的時(shí)候也慢,先拿長(zhǎng)度,再取數(shù)據(jù)。

      優(yōu)點(diǎn):節(jié)省了一些硬盤(pán)空間,一個(gè)acsii碼的字符用一個(gè)bytes長(zhǎng)度就能表示,但是也并不一定比char省,看一下官網(wǎng)給出的一個(gè)表格對(duì)比數(shù)據(jù),當(dāng)你存的數(shù)據(jù)正好是你規(guī)定的字段長(zhǎng)度的時(shí)候,varchar反而占用的空間比char要多。

Value	CHAR(4)	Storage Required	VARCHAR(4)	Storage Required
''	' '	4 bytes	''	1 byte
'ab'	'ab '	4 bytes	'ab'	3 bytes
'abcd'	'abcd'	4 bytes	'abcd'	5 bytes
'abcdefgh'	'abcd'	4 bytes	'abcd'	5 bytes
        
      缺點(diǎn):存取速度都慢
      
    對(duì)于InnoDB數(shù)據(jù)表,內(nèi)部的行存儲(chǔ)格式?jīng)]有區(qū)分固定長(zhǎng)度和可變長(zhǎng)度列(所有數(shù)據(jù)行都使用指向數(shù)據(jù)列值的頭指針),因此在本質(zhì)上,使用固定長(zhǎng)度的CHAR列不一定比使用可變長(zhǎng)度VARCHAR列性能要好。因而,主要的性能因素是數(shù)據(jù)行使用的存儲(chǔ)總量。由于CHAR平均占用的空間多于VARCHAR,因此使用VARCHAR來(lái)最小化需要處理的數(shù)據(jù)行的存儲(chǔ)總量和磁盤(pán)I/O是比較好的。
適合使用char:
	身份證號(hào)、手機(jī)號(hào)碼、QQ號(hào)、username、password、銀行卡號(hào)
適合使用varchar:
	評(píng)論、朋友圈、微博
1.創(chuàng)建表
create table t6(c1 char(1),v1 varchar(1),c2 char(8),v2 varchar(8));

2.寫(xiě)入數(shù)據(jù)
insert into t6 values('alexq','alexq','alexq','alexq');
3.查詢表中數(shù)據(jù)
select * from t6;

枚舉和集合類型

enum:	單選行為------枚舉類型
	只允許從值集合中選取單個(gè)值,而不能一次取多個(gè)值
1.創(chuàng)建表
create table t8(id int, name char(18),gender enum('male','female'));
2.寫(xiě)入數(shù)據(jù)
insert into t8 values(1,'alex','不詳'); ---------不詳無(wú)法寫(xiě)入
3.查詢表中數(shù)據(jù)
select * from t8;
4.寫(xiě)入數(shù)據(jù)
insert into t8 values(1,'alex','male');-------------male可以寫(xiě)入
5.查詢表中數(shù)據(jù)
select * from t8;
2.寫(xiě)入數(shù)據(jù)
insert into t8 values(1,'alex','female');------------female可以寫(xiě)入
3.查詢表中數(shù)據(jù)
select * from t8;
set:	 
	多選行為
	可以**允許值集合中任意選擇1或多個(gè)元素進(jìn)行組合**。對(duì)超出范圍的內(nèi)容將不允許注入,而對(duì)重復(fù)的值將進(jìn)行自動(dòng)去重。
1.創(chuàng)建表
create table t9(id int,name char(18),hobby set('抽煙','喝酒','洗腳','按摩','燙頭'));
2.寫(xiě)入數(shù)據(jù)
insert into t9 values(1,'太白','燙頭,抽煙,喝酒,按摩‘);
3.查詢表中數(shù)據(jù)
select * from t8;
4.寫(xiě)入數(shù)據(jù)
insert into t9 values(1,'大壯','洗腳,洗腳,洗腳,按摩,按摩,打游戲‘);
5.查詢表中數(shù)據(jù)
select * from t8;

總結(jié)

到此這篇關(guān)于mysql8.0.19-基礎(chǔ)數(shù)據(jù)類型的文章就介紹到這了,更多相關(guān)mysql8.0.19-基礎(chǔ)數(shù)據(jù)類型內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • 基于PostgreSQL和mysql數(shù)據(jù)類型對(duì)比兼容
  • MySQL數(shù)據(jù)類型優(yōu)化原則
  • 詳解MySQL中的數(shù)據(jù)類型和schema優(yōu)化
  • MyBatis JdbcType 與Oracle、MySql數(shù)據(jù)類型對(duì)應(yīng)關(guān)系說(shuō)明
  • 深入分析MySQL數(shù)據(jù)類型 DECIMAL
  • mysql數(shù)據(jù)類型和字段屬性原理與用法詳解
  • MySQL入門(mén)(二) 數(shù)據(jù)庫(kù)數(shù)據(jù)類型詳解
  • 詳解MySQL數(shù)據(jù)類型DECIMAL(N,M)中N和M分別表示的含義
  • MySQL操作之JSON數(shù)據(jù)類型操作詳解
  • MySQL數(shù)據(jù)類型全解析

標(biāo)簽:澳門(mén) 定西 寧夏 杭州 益陽(yáng) 白銀 秦皇島 恩施

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《mysql8.0.19基礎(chǔ)數(shù)據(jù)類型詳解》,本文關(guān)鍵詞  mysql8.0.19,基礎(chǔ),數(shù)據(jù),類型,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《mysql8.0.19基礎(chǔ)數(shù)據(jù)類型詳解》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于mysql8.0.19基礎(chǔ)數(shù)據(jù)類型詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 灌阳县| 海门市| 黄大仙区| 曲水县| 浮梁县| 洞口县| 清河县| 麻城市| 洛川县| 永福县| 浙江省| 益阳市| 吴川市| 和田市| 苍南县| 宁国市| 乌拉特后旗| 木里| 通渭县| 错那县| 苍山县| 广州市| 吴堡县| 县级市| 通州区| 霞浦县| 来凤县| 祁连县| 乐清市| 如皋市| 策勒县| 兴隆县| 元阳县| 崇左市| 松江区| 施秉县| 永丰县| 南澳县| 高雄县| 楚雄市| 威信县|