国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【MySQL】MySQL數(shù)據(jù)類型

這篇具有很好參考價(jià)值的文章主要介紹了【MySQL】MySQL數(shù)據(jù)類型。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

【MySQL】MySQL數(shù)據(jù)類型,MySQL,mysql,adb,android

數(shù)值類型

【MySQL】MySQL數(shù)據(jù)類型,MySQL,mysql,adb,android

注: mysql不區(qū)分大小寫

當(dāng)定義數(shù)據(jù)類型后 ,插入的 數(shù)據(jù)需要遵循數(shù)據(jù)類型的約束。

創(chuàng)建一個(gè)有符號(hào)的數(shù)據(jù)類型 :

create table t1 (num int );

創(chuàng)建一個(gè)無(wú)符號(hào)的數(shù)據(jù)類型:

create table t2 (num int unsigned);

在添加數(shù)據(jù)時(shí),如果超出數(shù)據(jù)類型所允許的范圍,mysql服務(wù)會(huì)攔截命令語(yǔ)句。

bit 類型

bit[(M)] : 位字段類型。M表示每個(gè)值的位數(shù),范圍從1到64。如果M被忽略,默認(rèn)為1。

create table tt4 ( id int, a bit(8));
insert into tt4 values(10, 10);

查看表,我們發(fā)現(xiàn),a的數(shù)據(jù)10沒有出現(xiàn)。
【MySQL】MySQL數(shù)據(jù)類型,MySQL,mysql,adb,android

再次插入,

insert into tt4 values(65,65);

查看
【MySQL】MySQL數(shù)據(jù)類型,MySQL,mysql,adb,android
發(fā)現(xiàn)a位置的65 變?yōu)榱?‘A’,我們可知:
bit字段在顯示時(shí),是按照ASCII碼對(duì)應(yīng)的值顯示

同時(shí),bit類型插入數(shù)值時(shí)也受其本身大小約束。

小數(shù)類型

float

float[(m, d)] [unsigned] : M指定顯示長(zhǎng)度,d指定小數(shù)位數(shù),占用空間4個(gè)字節(jié)

小數(shù):float(4,2)表示的范圍是-99.99 ~ 99.99,MySQL在保存值時(shí)會(huì)進(jìn)行四舍五入。

操作:

 create table t2(id int,num float(4,2));
 insert into t2 values(1,99.99);
 insert into t2(id,num) values(2,-99.99);
 insert into t2 values(2,99.994);

查看:
【MySQL】MySQL數(shù)據(jù)類型,MySQL,mysql,adb,android
插入99.996 等數(shù)字時(shí),ERROR 1264 (22003): Out of range value ,mysql會(huì)約束你。

decimal

decimal(m, d) [unsigned] : 定點(diǎn)數(shù)m指定長(zhǎng)度,d表示小數(shù)點(diǎn)的位數(shù)

deciaml 和float 很像,但是有區(qū)別,它們的精度不一樣。

decimal的精度更準(zhǔn)確,因此如果我們希望某個(gè)數(shù)據(jù)表示高精度,選擇decimal

字符串類型

char

char(L): 固定長(zhǎng)度字符串,L是可以存儲(chǔ)的長(zhǎng)度,單位為字符,最大長(zhǎng)度值可以為255

注意: char的單位是字符,不是字節(jié),一個(gè)字符可以表示任意一個(gè)在字符集里的字符,
一個(gè)漢字和一個(gè)英文字母都表示為一個(gè)字符

char(2) 表示可以存放兩個(gè)字符。

varchar

varchar(L): 可變長(zhǎng)度字符串,L表示字符長(zhǎng)度,最大長(zhǎng)度65535個(gè)字節(jié)

varchar的L表示的是字節(jié)數(shù)。所以,varchar的最大長(zhǎng)度和編碼字符集有關(guān)系。

  1. varchar長(zhǎng)度可以指定為0到65535之間的值,但是有1 - 3 個(gè)字節(jié)用于記錄數(shù)據(jù)大小,所以說(shuō)有效字節(jié)數(shù)是65532。
  2. 當(dāng)我們的表的編碼是utf8時(shí),varchar(n)的參數(shù)n最大值是65532/3=21844[因?yàn)閡tf中,一個(gè)字符占用3個(gè)字節(jié)],如果編碼是gbk,varchar(n)的參數(shù)n最大是65532/2=32766(因?yàn)間bk中,一個(gè)字符占用2字節(jié)

但是,我們看報(bào)錯(cuò):
【MySQL】MySQL數(shù)據(jù)類型,MySQL,mysql,adb,android
row size too large,說(shuō)明65535字節(jié)是表一行的最大長(zhǎng)度,因此受表中定義的其它數(shù)據(jù)影響,達(dá)不到其最大長(zhǎng)度。

varchar 的可變體現(xiàn)在,當(dāng)設(shè)置了L長(zhǎng)度后,插入的數(shù)據(jù)占據(jù)內(nèi)存的大小等于數(shù)據(jù)的實(shí)際大小而不是你設(shè)置的規(guī)定的L,而char插入的大小就是設(shè)置的大小;

【MySQL】MySQL數(shù)據(jù)類型,MySQL,mysql,adb,android

日期和時(shí)間類型

date :日期 ‘yyyy-mm-dd’ ,占用三字節(jié)
datetime 時(shí)間日期格式 'yyyy-mm-dd HH:ii:ss’表示范圍從 1000 到 9999 ,占用八字節(jié)
timestamp :時(shí)間戳,從1970年開始的 yyyy-mm-dd HH:ii:ss格式和 datetime 完全一致,占用 四字節(jié)

data 和datatime 都是固定的。
添加數(shù)據(jù)時(shí),時(shí)間戳(timestamp)自動(dòng)添加當(dāng)前時(shí)間,修改數(shù)據(jù)時(shí),時(shí)間戳也會(huì)自動(dòng)修改為當(dāng)前時(shí)間。

enum和set
enum:枚舉,“單選”類型;

enum(‘選項(xiàng)1’,‘選項(xiàng)2’,‘選項(xiàng)3’,…);

該設(shè)定只是提供了若干個(gè)選項(xiàng)的值,最終一個(gè)單元格中,實(shí)際只存儲(chǔ)了其中一個(gè)值;而且出于效率考慮,這些值實(shí)際存儲(chǔ)的是“數(shù)字”, 值依次對(duì)應(yīng)如下數(shù)字:1,2,3,…

set:集合,“多選”類型;

set(‘選項(xiàng)值1’,‘選項(xiàng)值2’,‘選項(xiàng)值3’, …);

create table t5(
    -> name varchar(20),
    -> sex enum('男','女'),
    -> hobby set('學(xué)習(xí)','游戲','爬山','代碼','戀愛')
    -> );

創(chuàng)建表結(jié)構(gòu),
正常插入 :

insert into t5 values('張三','男','學(xué)習(xí)');
insert into t5 values('李四','女','游戲');
insert into t5 values('王五','男','游戲,爬山');

【MySQL】MySQL數(shù)據(jù)類型,MySQL,mysql,adb,android

數(shù)字插入:

insert into t5 values('趙六',2,0);
insert into t5 values('趙六',2,1);
insert into t5 values('趙六',2,2);
insert into t5 values('趙六',1,4);
insert into t5 values('趙六',1,7);
insert into t5 values('趙六',1,31);

【MySQL】MySQL數(shù)據(jù)類型,MySQL,mysql,adb,android

可知,enum的下標(biāo)從1開始,一一對(duì)應(yīng)。
set的數(shù)字表示的是一個(gè)位圖結(jié)構(gòu),當(dāng)為0時(shí),插入為空,當(dāng)為31時(shí),二進(jìn)制表示為11111,所以選的是位圖的前五個(gè)選項(xiàng)。

集合查詢使用find_ in_ set函數(shù):

查上表中愛好有學(xué)習(xí)的人的信息:

select * from t5 where find_in_set('學(xué)習(xí)',hobby);

【MySQL】MySQL數(shù)據(jù)類型,MySQL,mysql,adb,android
查表中愛好只有學(xué)習(xí)的人:

select * from t5 where hobby='學(xué)習(xí)';

【MySQL】MySQL數(shù)據(jù)類型,MySQL,mysql,adb,android文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-764972.html

到了這里,關(guān)于【MySQL】MySQL數(shù)據(jù)類型的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • MySQL-12.MySQL數(shù)據(jù)類型

    MySQL-12.MySQL數(shù)據(jù)類型

    常見數(shù)據(jù)類型的屬性,如下 2.1 類型介紹 整數(shù)類型一共有5種,包括TINYINT,SMALLINT,MEDIUMINT,INT(INTEGER)和BIGINT。 它們的區(qū)別如下表所示 2.2 可選屬性 整數(shù)類型的可選屬性有三個(gè) 2.2.1 M M :顯示寬度,M的取值范圍是(0,255)。例如,int(5):當(dāng)數(shù)據(jù)寬度小于5位的時(shí)候在數(shù)字前面需要用

    2024年01月15日
    瀏覽(17)
  • Mysql - Mysql的常用數(shù)據(jù)類型

    Mysql - Mysql的常用數(shù)據(jù)類型

    目錄 參考文檔:MySQL :: MySQL 5.7 參考手冊(cè) :: 11 種數(shù)據(jù)類型MySQL 數(shù)據(jù)類型 | 菜鳥教程 (runoob.com) Mysql的三大數(shù)據(jù)類型: 1、數(shù)值類型 2、字符串類型 3、日期和時(shí)間類型 一、數(shù)值類型 1、整數(shù)類型(精確值) - 整數(shù)、整數(shù)、小整數(shù)、小整數(shù)、小整數(shù)、整數(shù)、 MEDIUMINT, BIGINT

    2024年02月03日
    瀏覽(7)
  • 云原生數(shù)據(jù)倉(cāng)庫(kù)AnalyticDB Mysql(ADB分析型數(shù)據(jù)庫(kù))-DML語(yǔ)法之新增插入數(shù)據(jù)詳解

    ADB分析型數(shù)據(jù)庫(kù),是阿里云平臺(tái)上資源,原名叫云原生數(shù)據(jù)倉(cāng)庫(kù)AnalyticDB Mysql,俗稱ADB分析型數(shù)據(jù)庫(kù),那么ADB的語(yǔ)法與mysql關(guān)系型數(shù)據(jù)庫(kù)語(yǔ)法存在一定的差異。 本文為筆記,介紹ADB的DML語(yǔ)法的應(yīng)用。 1. INSERT INTO INSERT INTO用于向表中插入數(shù)據(jù),主鍵重復(fù)時(shí)會(huì)自動(dòng)忽略當(dāng)前寫入數(shù)據(jù)

    2024年02月15日
    瀏覽(18)
  • 【MySQL學(xué)習(xí)筆記】(四)MySQL數(shù)據(jù)類型

    【MySQL學(xué)習(xí)筆記】(四)MySQL數(shù)據(jù)類型

    數(shù)值測(cè)試 注:在MySQL中,如果輸入的數(shù)值不合法,會(huì)直接不允許插入。并不會(huì)像C/C++語(yǔ)言那樣發(fā)生截?cái)唷_@也說(shuō)明了,凡是MySQL有的數(shù)值,必定是合法的。 在MySQL中,整型可以指定是有符號(hào)的和無(wú)符號(hào)的,默認(rèn)是有符號(hào)的。 可以通過(guò) UNSIGNED 來(lái)說(shuō)明某個(gè)字段是無(wú)符號(hào)的無(wú)符號(hào)。

    2024年02月11日
    瀏覽(14)
  • 【MySQL】MySQL 數(shù)據(jù)類型,數(shù)值、日期和時(shí)間、字符串類型,創(chuàng)建數(shù)據(jù)表,刪除數(shù)據(jù)表

    【MySQL】MySQL 數(shù)據(jù)類型,數(shù)值、日期和時(shí)間、字符串類型,創(chuàng)建數(shù)據(jù)表,刪除數(shù)據(jù)表

    作者簡(jiǎn)介: 辭七七,目前大一,正在學(xué)習(xí)C/C++,Java,Python等 作者主頁(yè): 七七的個(gè)人主頁(yè) 文章收錄專欄: 七七的閑談 歡迎大家點(diǎn)贊 ?? 收藏 ? 加關(guān)注哦!???? MySQL 中定義數(shù)據(jù)字段的類型對(duì)你數(shù)據(jù)庫(kù)的優(yōu)化是非常重要的。 MySQL 支持多種類型,大致可以分為三類:數(shù)值、日

    2024年02月15日
    瀏覽(111)
  • 【MySQL】拿來(lái)即用 —— MySQL中的數(shù)據(jù)類型

    【MySQL】拿來(lái)即用 —— MySQL中的數(shù)據(jù)類型

    個(gè)人簡(jiǎn)介:Java領(lǐng)域新星創(chuàng)作者;阿里云技術(shù)博主、星級(jí)博主、專家博主;正在Java學(xué)習(xí)的路上摸爬滾打,記錄學(xué)習(xí)的過(guò)程~ 個(gè)人主頁(yè):.29.的博客 學(xué)習(xí)社區(qū):進(jìn)去逛一逛~ 類型 類型舉例 位類型 BIT 集合類型 SET 枚舉類型 ENUM 定點(diǎn)數(shù)類型 DECIMAL 浮點(diǎn)類型 FLOAT、DOUBLE 日期時(shí)間類型

    2024年02月11日
    瀏覽(20)
  • 【MySQL】數(shù)據(jù)庫(kù)數(shù)據(jù)類型

    【MySQL】數(shù)據(jù)庫(kù)數(shù)據(jù)類型

    看起來(lái)分為很多類型,例如數(shù)值類型,有一些看一眼就懂啦,所以不會(huì)全部介紹 進(jìn)入 test_db數(shù)據(jù)庫(kù)中,并創(chuàng)建表t1 ,其內(nèi)部包含 tinyint類型的num 輸入 desc t1; 查看t1表結(jié)構(gòu) tinyint類型為一個(gè)字節(jié),有符號(hào),所以 取值范圍為 -128 到 127 向t1 表中分別插入 -128 、128 、1 輸入 select * fr

    2024年02月08日
    瀏覽(39)
  • Mysql系列 - 第2天:詳解mysql數(shù)據(jù)類型(重點(diǎn))

    Mysql系列 - 第2天:詳解mysql數(shù)據(jù)類型(重點(diǎn))

    這是mysql系列第2篇文章。 環(huán)境:mysql5.7.25,cmd命令中進(jìn)行演示。 介紹mysql中常用的數(shù)據(jù)類型 mysql類型和java類型對(duì)應(yīng)關(guān)系 數(shù)據(jù)類型選擇的一些建議 主要包括以下五大類 整數(shù)類型 : bit 、 bool 、 tinyint 、 smallint 、 mediumint 、 int 、 bigint 浮點(diǎn)數(shù)類型 : float 、 double 、 decimal 字符

    2024年02月11日
    瀏覽(19)
  • mysql數(shù)據(jù)庫(kù)常見數(shù)據(jù)類型

    數(shù)據(jù)類型: MySQL支持所有標(biāo)準(zhǔn)SQL數(shù)值數(shù)據(jù)類型。 這些類型包括嚴(yán)格數(shù)值數(shù)據(jù)類型(INTEGER、SMALLINT、DECIMAL和NUMERIC),以及近似數(shù)值數(shù)據(jù)類型(FLOAT、REAL和DOUBLE PRECISION)。 INT是INTEGER的同義詞,DEC是DECIMAL的同義詞。 BIT數(shù)據(jù)類型保存位字段值,并且支持MyISAM、MEMORY、Inn

    2024年02月15日
    瀏覽(96)
  • 【MySQL】數(shù)據(jù)庫(kù)的數(shù)據(jù)類型

    【MySQL】數(shù)據(jù)庫(kù)的數(shù)據(jù)類型

    mysql 中的數(shù)據(jù)類型分類如下,其中紅色字體的為常用的類型: mysql 中表的建立屬性列: 列名稱 數(shù)據(jù)類型 ,例如 num int ,它與我們平時(shí)寫的語(yǔ)言數(shù)據(jù)類型是倒過(guò)來(lái)的! 接下來(lái)我們創(chuàng)建一個(gè)只有 tinyint 類型的表,然后分別插入 1 和 128,會(huì)發(fā)現(xiàn) 128 插入失敗,因?yàn)樵浇绮迦肓耍?/p>

    2024年02月04日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包