日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

MySQL学习笔记_2_MySQL创建数据表(上)

發(fā)布時間:2025/3/17 数据库 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MySQL学习笔记_2_MySQL创建数据表(上) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

MySQL創(chuàng)建數(shù)據(jù)表(上)

一、創(chuàng)建數(shù)據(jù)表的SQL語句模型【弱類型】

CREATETABLE [IF NOT EXISTS] 表名稱(

字段名1列的類型[屬性][索引],

字段名2 列的類型[屬性][索引],

字段名n列的類型[屬性][索引],

[表屬性][表字符集]

【表名稱,字段名需要自己來命名】

SQL語句并不區(qū)分大小寫,但是一個文件名:在Windows下不區(qū)分大小寫,但是在 Linux/UNIX下是區(qū)分大小寫的】

【命名規(guī)則: 1、有意義(英文,英文組合或英文縮寫)

2、自己定的名稱最好小寫。

3SQL語句最好大寫。】


1 CREATETABLE users(

idINT,

nameCHAR(32)

);

2 SHOWTABLES;

3 DESCusers;

4 SELECT* FROM users;


二、數(shù)據(jù)值與列類型

都以空間大小來細分,能夠存下即可!


1、數(shù)值型

整型(整數(shù)):

非常小整數(shù)型 1字節(jié) -128127 0255(無符號) TINYINIT

較小整數(shù)型 2字節(jié) -3276832767 SMALLINIT

中等大小整數(shù)型 3字節(jié) 016777215 MEDIUMIINT

標準整數(shù)型 4字節(jié) -21474836482147483647 INT

大整數(shù)型 8字節(jié) BIGINT

【可以添加屬性:UNSIGNED

浮點型(小數(shù)):

FLOATMN 4字節(jié) 【長度M,保留小數(shù)點后N位】

DOUBLEMN 8字節(jié) 【五舍六入】

DECIMALMN M+2字節(jié) 【定點數(shù),以字符串形式存儲數(shù)據(jù), 更精確的保存數(shù)據(jù),但是效率會有所折扣。】【四舍五入】

【浮點數(shù)會存在誤差,因此在對數(shù)字敏感的時候,需要用定點數(shù)來存儲!】

3、字符型

MySQL支持以單引號與雙引號表示字符串類型。

如“MySQL”'MySQL'相同

char(M) 最大255 固定長度字符串

varchar(M) 最大255 可變長度字符串

char(4) varchar(4)// 永遠比字符多一個字節(jié)

'' 4 '' 1字節(jié)

'a' 4 'a' 2字節(jié)

'abcd' 4 'abcd' 5字節(jié)

'abcdefg' 4 'abcdefgh' 5字節(jié)


char類型會截取尾部的空格;

示例: CREATETABLE IF NOT EXISTS tab(v varchar(4),c char(4));

INSERTINTO tab(v,c) VALUES(“ab ”,”ab ”);

SELECTCONCAT(v,”#”),CONCAT(c,”#”) FROM tab;


最佳實踐:

固定長度,推薦使用char類型(可能會浪費一定空間)。

可變長度,推薦使用varchar類型(可能會付出一些性能損耗)


text 文本數(shù)據(jù):文章,日志 長度:2^16-1

MEDIUMTEXT

LONGTEXT


blob 二進制數(shù)據(jù):照片,電影 長度:2^16-1

MEDIUMBLOB

LONGBLOB

【雖然沒法通過SQL語句將照片,電影,壓縮包等二進制文件插入到數(shù)據(jù)庫中, 但是我們可以通過C++/Java等編程語言將二進制文件讀成二進制數(shù)據(jù)流,然 后保存到數(shù)據(jù)庫中】

ENUM 枚舉 12字節(jié)

ENUM(“one”,”two”,”three”,”four”)~65535

一次只能有一個值


SET集合 12348字節(jié)

SET(“one”,”two”,”three”,”four”)~64

一次可以有多個值,用“,”隔開。

4、日期型

DATE YYYY-MM-DD //如果位數(shù)充足,可以不用加‘-’

TIME hh:mm:ss //位數(shù)充足,可以忽略‘:’,位數(shù)不足,從后面截取

DATETIME YYYY-MM-DDhh:mm:ss

TIMESTAMP YYYYMMDDhhmmss //位數(shù)不足時,不可忽略前導(dǎo)0

YEAR YYYY


【創(chuàng)建數(shù)據(jù)表時,最好不要使用這些時間值,最好使用C++/Java等編程語言中的整數(shù)來保存 時間,這樣更方便計算,如C++中的intPHP中時間戳1970-1-10:0:0


總結(jié)

以上是生活随笔為你收集整理的MySQL学习笔记_2_MySQL创建数据表(上)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。