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

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

這篇具有很好參考價(jià)值的文章主要介紹了【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

目錄

前言:

一.DDL數(shù)據(jù)庫(kù)語(yǔ)句

1.1語(yǔ)句講解

1.2總結(jié)

二.DDL表語(yǔ)句

2.1語(yǔ)句講解

2.2總結(jié)

三.DDL字段語(yǔ)句

3.1語(yǔ)句講解

3.2總結(jié)

四.MySQL數(shù)據(jù)類型

五.結(jié)尾


前言:

? 在從零到一入門MySQL一篇中,我們對(duì)數(shù)據(jù)庫(kù)已經(jīng)有了一定的了解,接下來讓我們學(xué)習(xí)SQL語(yǔ)句吧!

? 如果你對(duì)數(shù)據(jù)庫(kù)的創(chuàng)建,查找,刪除;表的創(chuàng)建,字段的增刪不清楚,看完本篇,你一定有所收獲!

一.DDL數(shù)據(jù)庫(kù)語(yǔ)句

1.1語(yǔ)句講解

? DDL是數(shù)據(jù)定義語(yǔ)言,用來對(duì)數(shù)據(jù)庫(kù)、表、字段進(jìn)行操作。

show databases;

? 這句代碼是讓命令行窗口顯示服務(wù)器里一共有多少個(gè)數(shù)據(jù)庫(kù),請(qǐng)看下圖:

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

? MySQL系統(tǒng)軟件下載后,里面默認(rèn)有四個(gè)系統(tǒng)數(shù)據(jù)庫(kù)。

create database if not exists 數(shù)據(jù)庫(kù)名 default charset utf8mb4;

? 這句代碼是創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)的DDL語(yǔ)句。其中的if not exists 和 default charset utf8mb4是可以省略的。

? if not exists的作用是,如果存在test這個(gè)數(shù)據(jù)庫(kù),這句代碼什么都不執(zhí)行,不存在就創(chuàng)建test數(shù)據(jù)庫(kù)。

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

? 下滑線部分表示數(shù)據(jù)庫(kù)創(chuàng)建成功。

? 補(bǔ)充:數(shù)據(jù)庫(kù)中有些字符用3個(gè)字節(jié)不夠表示,utf8的大小是3個(gè)字節(jié),utf8mb4是4個(gè)字節(jié)大小。

use 數(shù)據(jù)庫(kù)名;

? 這句代碼的作用是指定使用數(shù)據(jù)庫(kù);

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

? 在一般情況下,對(duì)一個(gè)數(shù)據(jù)庫(kù)里的表、字段進(jìn)行多步操作后,已經(jīng)忘了自己所處的數(shù)據(jù)庫(kù),使用這句代碼:

select database();

? 這句代碼可以指出現(xiàn)在處在哪個(gè)數(shù)據(jù)庫(kù)。

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

drop database if exists 數(shù)據(jù)庫(kù)名;

? 這句代碼是刪除數(shù)據(jù)庫(kù)的代碼,if exists可以省略,意思是如果存在test數(shù)據(jù)庫(kù)就刪除,否則不執(zhí)行任何操作。

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

1.2總結(jié)

? DDL語(yǔ)句對(duì)數(shù)據(jù)庫(kù)的操作有如下:

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL


二.DDL表語(yǔ)句

2.1語(yǔ)句講解

? 數(shù)據(jù)庫(kù)的數(shù)據(jù)模型里,數(shù)據(jù)庫(kù)里包含表,所以在講表的知識(shí),先創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)先。

show tables;

? 查詢當(dāng)前使用數(shù)據(jù)庫(kù)里包含的所有。

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

? 由于是新建的數(shù)據(jù)庫(kù),所以是空表Empty。

create table employee(
id int comment '編號(hào)',
gender char(1) comment '性別',
age tinyint unsigned comment '年齡'
)comment '員工表';

? 這是創(chuàng)建表的代碼,我們來慢慢分析,別怕!

? 首先create table是創(chuàng)建表的意思,這個(gè)表名是employee。
? 接著id、gender、age是表格的字段名int、char(1)、tinyint是數(shù)據(jù)類型。
? 最后comment這一部分是注釋,可以省略。

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

? 每一個(gè)字段與另一個(gè)字段之間用逗號(hào)隔開,最后一個(gè)不加逗號(hào)。

desc 表名;

? 這句代碼可以顯示表的字段名,字段的數(shù)據(jù)類型。

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

? 但是看不到注釋,雖然我們知道id可能是編號(hào)的意思,但是什么編號(hào)就不知道了,普通人?門診號(hào)?還有一種查表的語(yǔ)句:

show create table 表名;

? 這句代碼的意思是,展示創(chuàng)建表時(shí)的語(yǔ)句。

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

alter table 表名 rename to 新表名;

? 這句代碼的意思是選擇原先的表名,成新的表名

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

drop table if exists 表名;

? 這句代碼是用來刪除指定表名的,if exists可以省略,它的意思同前面用到的地方意思是一樣的。

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

? 刪完之后,test數(shù)據(jù)庫(kù)里就沒有表了,所以再次顯示表的信息時(shí)為空。?

truncate table 表名;

? 這句代碼也是用來刪除表的,但它會(huì)重新創(chuàng)建一個(gè)相同類型的沒有數(shù)據(jù)的表,但表的結(jié)構(gòu)還在。

? 比如前面emp這個(gè)表不是使用drop而是使用truncate的話,那在show tables的時(shí)候,還能看到emp表。

2.2總結(jié)

? DDL語(yǔ)句對(duì)表的操作有如下:

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL


三.DDL字段語(yǔ)句

3.1語(yǔ)句講解

? 對(duì)表中的字段進(jìn)行操作,也是DDL語(yǔ)句有的屬性。接下來我們就來學(xué)習(xí)對(duì)字段的操作吧~

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

? 突然覺得這個(gè)表在創(chuàng)建的時(shí)候,沒有添加一個(gè)信息,想增加一個(gè)字段,可以這樣做:

alter table 表名 add 字段名 數(shù)據(jù)類型 [comment '注釋'];

? 比如想加一個(gè)表示薪資的字段:

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

? ?老板發(fā)現(xiàn)工資用int表示,工資給太高了,想給個(gè)小一點(diǎn)的整型表示,于是:

alter table 表名 modify 字段名 新數(shù)據(jù)類型;

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

? 這樣就可以改掉原先字段的數(shù)據(jù)類型了,老板很是開心~

? 后來老板發(fā)現(xiàn),這個(gè)薪資不能直接用數(shù)字表現(xiàn)出來,用等級(jí)的話隱蔽性會(huì)更好,這就需要更換整個(gè)字段。

alter table 表名 change 舊字段 新字段 新數(shù)據(jù)類型 [comment '注釋']; 

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

? 此時(shí),老板的想法達(dá)成了。

alter table emp drop 字段名;

? 這段代碼的意思是刪除指定表的字段名。?

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

3.2總結(jié)

? 以下是DDL語(yǔ)句對(duì)字段的操作:

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

? 講到這里,DDL語(yǔ)句的基本操作就講完啦!可能讀者很好奇tinyint、smallint、char(1)這些是什么,我們接下來看。

四.MySQL數(shù)據(jù)類型

? SQL里的數(shù)據(jù)類型和其它編程語(yǔ)言有點(diǎn)區(qū)別,但也有相似的地方,它分為三類,我們直接看圖吧。

【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

?整型

? 數(shù)值類型是其中的一種類型,tinyint的大小是一個(gè)字節(jié)的整型,相當(dāng)于C語(yǔ)言里的char類型。

? smallint相當(dāng)于C里的short,bigint相當(dāng)于C里的long long類型。特殊一點(diǎn)的是mediumint占三個(gè)字節(jié)大小

? 浮點(diǎn)類型和C是一樣的,有兩點(diǎn)特別的是:decimal和控制浮點(diǎn)數(shù)小數(shù)點(diǎn)保留位數(shù)的方式。

? 這里得引入兩個(gè)概念,精度和標(biāo)度。

  • 精度是浮點(diǎn)數(shù)總共有多少位數(shù),比如3.14的精度是3。
  • 標(biāo)度是浮點(diǎn)數(shù)有多少個(gè)小數(shù)位,6.1的標(biāo)度是1。

? 如何表示三位數(shù),一個(gè)小數(shù)位呢?首先總共有四個(gè)有效位,其次是一個(gè)小數(shù)位,是這樣表示的double(4,1)。


【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

? 在字符串類型里,有char和varchar,學(xué)過C語(yǔ)言的讀者會(huì)聯(lián)想到表示字符串用char arr[元素個(gè)數(shù)]數(shù)組表示。

? 在MySQL用char(元素個(gè)數(shù))表示定長(zhǎng)數(shù)組,varchar(元素個(gè)數(shù))表示可變數(shù)組。注意不是方括號(hào)

? blob是表示二進(jìn)制數(shù)據(jù)的數(shù)據(jù)類型,text是表示文本數(shù)據(jù)的數(shù)據(jù)類型;

? 二進(jìn)制數(shù)據(jù)類型的有軟件包、音頻呀這些。一般不會(huì)用數(shù)據(jù)庫(kù)存儲(chǔ)的。

? tinyblob一個(gè)字節(jié)、blob兩個(gè)字節(jié)、mediumblob三個(gè)字節(jié)、longblob四個(gè)字節(jié)、text一樣的,博主不贅述了。


【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL

? 表示日期時(shí)間的數(shù)據(jù)類型:

? date是表示年月日--- yyyy--mm--dd

? time是表示時(shí)分秒--- hh--mm--ss

? year是表示年--- yyyy

? datetime表示年月日,時(shí)分秒

? timestamp表示的也是年月日,時(shí)分秒,不同于datetime的是timestamp是時(shí)間戳,由于數(shù)值溢出的原因,在2038年會(huì)失效,也叫Unix千年臭蟲。


五.結(jié)尾

? 好啦,到這里就講完SQL語(yǔ)句里的DDL語(yǔ)言,還講了MySQL中的數(shù)據(jù)類型與其它編程語(yǔ)言有一定聯(lián)系,也有區(qū)別。

? 下面我們將會(huì)繼續(xù)學(xué)習(xí)SQL語(yǔ)句的另一個(gè)分類DML,點(diǎn)點(diǎn)關(guān)注不迷路~文章來源地址http://www.zghlxwxcb.cn/news/detail-474119.html

到了這里,關(guān)于【MySQL】不允許你不會(huì)SQL語(yǔ)句之DDL的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(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】不允許你不會(huì)使用組合查詢

    【MySQL】不允許你不會(huì)使用組合查詢

    ?? 博客主頁(yè):博主鏈接 ?? 本文由 M malloc 原創(chuàng),首發(fā)于 CSDN?? ?? 學(xué)習(xí)專欄推薦:LeetCode刷題集 ?? 歡迎點(diǎn)贊 ?? 收藏 ?留言 ?? 如有錯(cuò)誤敬請(qǐng)指正! ?? 未來很長(zhǎng),值得我們?nèi)Ρ几案篮玫纳? ??大家好呀,今天是我第N次寫MySQL,也是最近才學(xué)習(xí)MySQL,也想著記錄一

    2024年02月15日
    瀏覽(22)
  • 【MySQL】不允許你不會(huì)使用子查詢

    【MySQL】不允許你不會(huì)使用子查詢

    ?? 博客主頁(yè):博主鏈接 ?? 本文由 M malloc 原創(chuàng),首發(fā)于 CSDN?? ?? 學(xué)習(xí)專欄推薦:LeetCode刷題集! ?? 歡迎點(diǎn)贊 ?? 收藏 ?留言 ?? 如有錯(cuò)誤敬請(qǐng)指正! ?? 未來很長(zhǎng),值得我們?nèi)Ρ几案篮玫纳? ??大家好呀,今天是我第N次寫MySQL,也是最近才學(xué)習(xí)MySQL,也想著記錄

    2024年02月12日
    瀏覽(22)
  • 【MySQL】不允許你不會(huì)創(chuàng)建高級(jí)聯(lián)結(jié)

    【MySQL】不允許你不會(huì)創(chuàng)建高級(jí)聯(lián)結(jié)

    ?? 博客主頁(yè):博主鏈接 ?? 本文由 M malloc 原創(chuàng),首發(fā)于 CSDN?? ?? 學(xué)習(xí)專欄推薦:LeetCode刷題集! ?? 歡迎點(diǎn)贊 ?? 收藏 ?留言 ?? 如有錯(cuò)誤敬請(qǐng)指正! ?? 未來很長(zhǎng),值得我們?nèi)Ρ几案篮玫纳? ??大家好呀,今天是我第N次寫MySQL,也是最近才學(xué)習(xí)MySQL,也想著記錄

    2024年02月13日
    瀏覽(20)
  • 【MySQL】不允許你不會(huì)全文本搜索

    【MySQL】不允許你不會(huì)全文本搜索

    ?? 博客主頁(yè):博主鏈接 ?? 本文由 M malloc 原創(chuàng),首發(fā)于 CSDN?? ?? 學(xué)習(xí)專欄推薦:LeetCode刷題集 ?? 歡迎點(diǎn)贊 ?? 收藏 ?留言 ?? 如有錯(cuò)誤敬請(qǐng)指正! ?? 未來很長(zhǎng),值得我們?nèi)Ρ几案篮玫纳? ??大家好呀,今天是我第N次寫MySQL,也是最近才學(xué)習(xí)MySQL,也想著記錄一

    2024年02月16日
    瀏覽(26)
  • MySQL數(shù)據(jù)庫(kù)中的索引(含SQL語(yǔ)句)

    MySQL數(shù)據(jù)庫(kù)中的索引(含SQL語(yǔ)句)

    假設(shè)有一張表,表中有100萬條數(shù)據(jù),這100萬條數(shù)據(jù)在硬盤上是存儲(chǔ)在數(shù)據(jù)頁(yè)上的,一頁(yè)數(shù)據(jù)大小為16k。存儲(chǔ)100萬條數(shù)據(jù)那么就需要數(shù)據(jù)頁(yè),假設(shè)其中有一條數(shù)據(jù)是“id為7900”的,那么如果要查詢這條數(shù)據(jù),其中SQL是SELECT * FROM 表名 WHERE id = 7900。在執(zhí)行這條SQL語(yǔ)句的時(shí)候,MyS

    2024年02月02日
    瀏覽(43)
  • 數(shù)據(jù)庫(kù)應(yīng)用:MySQL數(shù)據(jù)庫(kù)SQL高級(jí)語(yǔ)句與操作

    數(shù)據(jù)庫(kù)應(yīng)用:MySQL數(shù)據(jù)庫(kù)SQL高級(jí)語(yǔ)句與操作

    目錄 一、理論 1.克隆表與清空表 2.SQL高級(jí)語(yǔ)句 3.SQL函數(shù) 4.SQL高級(jí)操作 5.MySQL中6種常見的約束 二、實(shí)驗(yàn) ?1.克隆表與清空表 2.SQL高級(jí)語(yǔ)句 3.SQL函數(shù) 4.SQL高級(jí)操作 5.主鍵表和外鍵表 ?三、總結(jié) 克隆表:將數(shù)據(jù)表的數(shù)據(jù)記錄生成到新的表中。 (1)克隆表 ①?先創(chuàng)建再導(dǎo)入 ②?創(chuàng)建

    2024年02月13日
    瀏覽(102)
  • mysql,用sql語(yǔ)句,建立學(xué)生-課程數(shù)據(jù)庫(kù)基本表

    mysql,用sql語(yǔ)句,建立學(xué)生-課程數(shù)據(jù)庫(kù)基本表

    學(xué)生表 學(xué)號(hào) 姓名 年齡 性別 院系 Student Sno Sname Sage Ssex Sdept 課程表 課程號(hào) 課程名 先行課 學(xué)分 Course Cno Cname Cpno Ccredit 選課表 學(xué)號(hào) 課程號(hào) 成績(jī) SC Sno Cno Grade 注意創(chuàng)建表的時(shí)候要注意它的字段名,類型,長(zhǎng)度,約束條件,取值范圍要合適,大小寫符號(hào)要正確,中文逗號(hào),分號(hào)

    2024年02月08日
    瀏覽(28)
  • MySQL相關(guān)的SQL語(yǔ)句、數(shù)據(jù)庫(kù)、數(shù)據(jù)表、字段、類型

    1、 SQL 語(yǔ)句不區(qū)分大小寫。 SQL語(yǔ)句 用途 描述 mysql -u root -p 連接 MySQL 在命令行窗口中輸入 mysql -u root -p 命令,回車,然后輸入 MySQL 密碼(不要忘記了密碼,找回麻煩),再回車就連接上 MySQL 了。最初都是使用 root 用戶登錄,工作中不能一直使用 root 用戶登錄。因?yàn)?root 權(quán)限太

    2024年02月13日
    瀏覽(116)
  • MySQL數(shù)據(jù)庫(kù)概念、管理以及SQL語(yǔ)句的基本命令操作

    MySQL數(shù)據(jù)庫(kù)概念、管理以及SQL語(yǔ)句的基本命令操作

    數(shù)據(jù)(data) 描述事物的符號(hào)記錄 包括數(shù)字,文字、圖形、圖像、聲音、檔案記錄等 以“記錄”形式按統(tǒng)一格式進(jìn)行存儲(chǔ)(記錄可以看成一條記錄) 表 將不同的記錄組織在一起 用來存儲(chǔ)具體數(shù)據(jù) 記錄:行 字段(屬性):列 以行+列的形式就組成了表(數(shù)據(jù)存儲(chǔ)在表中) 數(shù)

    2024年02月08日
    瀏覽(35)
  • MySQL數(shù)據(jù)庫(kù)第十一課---------SQl語(yǔ)句的拔高-------水平提升

    MySQL數(shù)據(jù)庫(kù)第十一課---------SQl語(yǔ)句的拔高-------水平提升

    ???????????????????????????????? ? ? ? ? ????? ????個(gè)人主頁(yè) ::小小頁(yè)面 ????????????????? gitee頁(yè)面 :秦大大 ? ? ? ? ? ? ? ? 一個(gè)愛分享的小博主 ?歡迎小可愛們前來借鑒 ______________________________________________________? ? SQL提高 ? 日期函數(shù) ????

    2024年02月16日
    瀏覽(41)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包