Mysql資料庫 二) 詳細,對新手非常友好

2021-10-24 00:24:46 字數 3819 閱讀 4583

mysql支援多種資料型別,主要有數值型別、日期/時間型別和字串型別

數值資料型別:包括證書型別tinyint/smallint/mediumint/int/bigint,浮點小數資料型別float和double,定點小數型別decimal.

日期/時間型別:包括year、time、date、datetime和timestamp

字串型別:包括char/varchar/binary/varbinary/blobtext/enum和set

提供的整數型別有:tinyint/smallint/mediumint/int/bigint。整數型別的屬性字段可以新增auto_increment自增約束條件。

型別名稱

說明儲存需求

tinyint

很小的整數

乙個位元組

smallint

小的整數

2個位元組

mediumint

中等大小的整數

3個位元組

int普通大小的整數

4個位元組

bigint

大整數8個位元組

不同整數型別的取值範圍

資料型別

有符號無符號

執行成功後,使用desc檢視表的結構;

可以看到,系統將新增不同的預設顯示寬度。

mysql中使用浮點數和定點數來表示小數。浮點型別有四種:單精度浮點型別(float)和雙精度浮點型別(double).定點型別只有一種:decimal.浮點型別和定點型別都可以用(m,n)來表示,其中m為寬度,n為標度,是小數的位數。

型別名稱

說明儲存需求

float

單精度浮點數

4個位元組

double

雙精度浮點數

8個位元組

decimal(m,d),desc

壓縮的「嚴格」定點數

m+2個位元組

decimal型別不同於float和double,decimal實際以串存放的,decimal可能的最大取值範圍與double一樣,但其有效的取值範圍由m和d的值決定。

double型別的取值範圍如下:

1.建立一張表tb_e***:

向表中新增資料:

mysql中有多種表示日期的資料型別,主要有datetime、date、timestamp、time和year。例如,當只記錄年資訊的時候,用year型別,而沒有必要使用date.每乙個型別都有合法的取值範圍,當指定確定不合法的值系統將「零「值插入到資料庫中。

日期型別

儲存空間

日期格式

日期範圍

datetime

8 bytes

yyyy-mm-dd hh:mm:ss

1000-01-01 00:00:00 ~ 9999-12-31 23:59:59

timestamp

4 bytes

yyyy-mm-dd hh:mm:ss

1970-01-01 00:00:01 ~ 2038

date

3 bytes

yyyy-mm-dd

1000-01-01 ~ 9999-12-31

year

1 bytes

yyyy

1901 ~ 2155

year型別

mysql以yyyy格式檢索和顯示year值。範圍是1901到2155。

可以指定各種格式的year值:

四位字串,範圍為』1901』到』2155』。

四位數字,範圍為1901到2155。

兩位字串,範圍為』00』到』99』。'00』到』69』和』70』到』99』範圍的值被轉換為2000到2069和1970到1999範圍的year值。

兩位整數,範圍為1到99。1到69和70到99範圍的值被轉換為2001到2069和1970到1999範圍的year值。請注意兩位整數範圍與兩位字串範圍稍有不同,因為你不能直接將零指定為數字並將它解釋為2000。你必須將它指定為乙個字串』0』或』00』或它被解釋為0000。

函式返回的結果,其值適合year上下文,例如now()。

非法year值被轉換為0000。

格式說明:

'd hh:mm:ss.fraction』格式的字串。還可以使用下面任何一種「非嚴格」語法:『hh:mm:ss.fraction』、『hh:mm:ss』、『hh:mm』、『d hh:mm:ss』、『d hh:mm』、『d hh』或』ss』。這裡d表示日,可以取0到34之間的值。請注意mysql還不儲存分數。

『hhmmss』格式的沒有間割符的字串,假定是有意義的時間。例如,『101112』被理解為』10:11:12』,但』109712』是不合法的(它有乙個沒有意義的分鐘部分),將變為』00:00:00』。

hhmmss格式的數值,假定是有意義的時間。例如,101112被理解為』10:11:12』。下面格式也可以理解:ss、mmss、hhmmss、hhmmss.fraction。請注意mysql還不儲存分數。

函式返回的結果,其值適合time上下文,例如current_time。

超出time範圍但合法的值被裁為範圍最接近的端點。例如,』-850:00:00』和』850:00:00』被轉換為』-838:59:59』和』838:59:59』。

3 data型別

此型別的字段,儲存資料格式為:yyyy-mm-dd,它支援的範圍為』1000-01-01』到』9999-12-31』。

首先建立表:create tb_emp6;

mysql資料庫(一):詳細,對新手非常友好

Mysql資料庫詳細配置

注意是自己解壓mysql檔案的目錄下的bin檔案目錄下 mysqld 設定3306埠 port 3306 設定mysql的安裝目錄 basedir c mysql mysql 8.0.12 winx64 bin 設定mysql資料庫的資料的存放目錄 datadir c mysql mysql 8.0...

超詳細MySQL資料庫優化

資料庫優化一方面是找出系統的瓶頸,提高mysql資料庫的整體效能,而另一方面需要合理的結構設計和引數調整,以提高使用者的相應速度,同時還要盡可能的節約系統資源,以便讓系統提供更大的負荷.1.優化一覽圖 2.優化 筆者將優化分為了兩大類,軟優化和硬優化,軟優化一般是運算元據庫即可,而硬優化則是操作伺服...

mysql資料庫事務詳細剖析

在寫之前交代一下背景吧!做開發也好久了,沒怎麼整理過知識,現在剖析一下自己對資料庫事務的認識,以前用sqlserver,現在轉j a後又用mysql oracle。我這塊就主要解釋一下mysql資料庫事務。其實好多內容適用於各種標準資料庫!直接就進入正文了!不管是做啥都有理論知識,我在這塊也介紹一下...