溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

表和數(shù)據(jù)庫(kù)之間有什么關(guān)系

發(fā)布時(shí)間:2021-06-25 09:35:39 來(lái)源:億速云 閱讀:454 作者:chen 欄目:MySQL數(shù)據(jù)庫(kù)

這篇文章主要介紹“表和數(shù)據(jù)庫(kù)之間有什么關(guān)系”,在日常操作中,相信很多人在表和數(shù)據(jù)庫(kù)之間有什么關(guān)系問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”表和數(shù)據(jù)庫(kù)之間有什么關(guān)系”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!

表和數(shù)據(jù)庫(kù)的關(guān)系是:一個(gè)數(shù)據(jù)庫(kù)可以包含多個(gè)表。表(TABLE)是數(shù)據(jù)庫(kù)中用來(lái)存儲(chǔ)數(shù)據(jù)的對(duì)象,是有結(jié)構(gòu)的數(shù)據(jù)的集合,是整個(gè)數(shù)據(jù)庫(kù)系統(tǒng)的基礎(chǔ),每一個(gè)數(shù)據(jù)庫(kù)都是由若干個(gè)數(shù)據(jù)表組成的;換句話說(shuō),沒(méi)有數(shù)據(jù)表就無(wú)法在數(shù)據(jù)庫(kù)中存放數(shù)據(jù)。

本教程操作環(huán)境:windows7系統(tǒng)、mysql8版本、Dell G3電腦。

表(TABLE)是數(shù)據(jù)庫(kù)中用來(lái)存儲(chǔ)數(shù)據(jù)的對(duì)象,是有結(jié)構(gòu)的數(shù)據(jù)的集合,是整個(gè)數(shù)據(jù)庫(kù)系統(tǒng)的基礎(chǔ)。表是包含數(shù)據(jù)庫(kù)中所有數(shù)據(jù)的數(shù)據(jù)庫(kù)對(duì)象。

數(shù)據(jù)表是數(shù)據(jù)庫(kù)的重要組成部分,每一個(gè)數(shù)據(jù)庫(kù)都是由若干個(gè)數(shù)據(jù)表組成的。換句話說(shuō),沒(méi)有數(shù)據(jù)表就無(wú)法在數(shù)據(jù)庫(kù)中存放數(shù)據(jù)。

比如,在電腦中創(chuàng)建一個(gè)空文件夾,如果要把“Hello C語(yǔ)言中文網(wǎng)”存放到文件夾中,必須把它寫在 Word 文檔、記事本或其它能存放文本的文檔中。這里的空文件夾就相當(dāng)于數(shù)據(jù)庫(kù),存放文本的文檔就相當(dāng)于數(shù)據(jù)表。

表定義為列的集合。與電子表格相似,數(shù)據(jù)在表中式按行和列的格式組織排列的。表中的每一列都設(shè)計(jì)為存儲(chǔ)某種類型的信息(例如日期、名稱、美元金額或數(shù)字)。表上有幾種控制(約束、規(guī)則、默認(rèn)值和自定義用戶數(shù)據(jù)類型)用于確保數(shù)據(jù)的有效性。

MySQL創(chuàng)建數(shù)據(jù)表(CREATE TABLE語(yǔ)句)

在創(chuàng)建數(shù)據(jù)庫(kù)之后,接下來(lái)就要在數(shù)據(jù)庫(kù)中創(chuàng)建數(shù)據(jù)表。所謂創(chuàng)建數(shù)據(jù)表,指的是在已經(jīng)創(chuàng)建的數(shù)據(jù)庫(kù)中建立新表。

創(chuàng)建數(shù)據(jù)表的過(guò)程是規(guī)定數(shù)據(jù)列的屬性的過(guò)程,同時(shí)也是實(shí)施數(shù)據(jù)完整性(包括實(shí)體完整性、引用完整性和域完整性)約束的過(guò)程。

基本語(yǔ)法

在 MySQL 中,可以使用 CREATE TABLE 語(yǔ)句創(chuàng)建表。其語(yǔ)法格式為:

CREATE TABLE <表名> ([表定義選項(xiàng)])[表選項(xiàng)][分區(qū)選項(xiàng)];

其中,[表定義選項(xiàng)]的格式為:

<列名1> <類型1> [,…] <列名n> <類型n>

CREATE TABLE 命令語(yǔ)法比較多,其主要是由表創(chuàng)建定義(create-definition)、表選項(xiàng)(table-options)和分區(qū)選項(xiàng)(partition-options)所組成的。

這里首先描述一個(gè)簡(jiǎn)單的新建表的例子,然后重點(diǎn)介紹 CREATE TABLE 命令中的一些主要的語(yǔ)法知識(shí)點(diǎn)。

CREATE TABLE 語(yǔ)句的主要語(yǔ)法及使用說(shuō)明如下:

  • CREATE TABLE:用于創(chuàng)建給定名稱的表,必須擁有表CREATE的權(quán)限。

  • <表名>:指定要?jiǎng)?chuàng)建表的名稱,在 CREATE TABLE 之后給出,必須符合標(biāo)識(shí)符命名規(guī)則。表名稱被指定為 db_name.tbl_name,以便在特定的數(shù)據(jù)庫(kù)中創(chuàng)建表。無(wú)論是否有當(dāng)前數(shù)據(jù)庫(kù),都可以通過(guò)這種方式創(chuàng)建。在當(dāng)前數(shù)據(jù)庫(kù)中創(chuàng)建表時(shí),可以省略 db-name。如果使用加引號(hào)的識(shí)別名,則應(yīng)對(duì)數(shù)據(jù)庫(kù)和表名稱分別加引號(hào)。例如,'mydb'.'mytbl' 是合法的,但 'mydb.mytbl' 不合法。

  • <表定義選項(xiàng)>:表創(chuàng)建定義,由列名(col_name)、列的定義(column_definition)以及可能的空值說(shuō)明、完整性約束或表索引組成。

  • 默認(rèn)的情況是,表被創(chuàng)建到當(dāng)前的數(shù)據(jù)庫(kù)中。若表已存在、沒(méi)有當(dāng)前數(shù)據(jù)庫(kù)或者數(shù)據(jù)庫(kù)不存在,則會(huì)出現(xiàn)錯(cuò)誤。

MySQL ALTER TABLE:修改數(shù)據(jù)表

修改數(shù)據(jù)表的前提是數(shù)據(jù)庫(kù)中已經(jīng)存在該表。修改表指的是修改數(shù)據(jù)庫(kù)中已經(jīng)存在的數(shù)據(jù)表的結(jié)構(gòu)。修改數(shù)據(jù)表的操作也是數(shù)據(jù)庫(kù)管理中必不可少的,就像畫素描一樣,畫多了可以用橡皮擦掉,畫少了可以用筆加上。

不了解如何修改數(shù)據(jù)表,就相當(dāng)于是我們只要畫錯(cuò)了就要扔掉重畫,這樣就增加了不必要的成本。

在 MySQL 中可以使用 ALTER TABLE 語(yǔ)句來(lái)改變?cè)斜淼慕Y(jié)構(gòu),例如增加或刪減列、更改原有列類型、重新命名列或表等。

其語(yǔ)法格式如下:

ALTER TABLE <表名> [修改選項(xiàng)]

修改選項(xiàng)的語(yǔ)法格式如下:

  • { ADD COLUMN <列名> <類型>

  • | CHANGE COLUMN <舊列名> <新列名> <新列類型>

  • | ALTER COLUMN <列名> { SET DEFAULT <默認(rèn)值> | DROP DEFAULT }

  • | MODIFY COLUMN <列名> <類型>

  • | DROP COLUMN <列名>

  • | RENAME TO <新表名>

  • | CHARACTER SET <字符集名>

  • | COLLATE <校對(duì)規(guī)則名> }

MySQL刪除數(shù)據(jù)表(DORP TABLE語(yǔ)句)

在 MySQL 數(shù)據(jù)庫(kù)中,對(duì)于不再需要的數(shù)據(jù)表,我們可以將其從數(shù)據(jù)庫(kù)中刪除。

在刪除表的同時(shí),表的結(jié)構(gòu)和表中所有的數(shù)據(jù)都會(huì)被刪除,因此在刪除數(shù)據(jù)表之前最好先備份,以免造成無(wú)法挽回的損失。

下面我們來(lái)了解一下 MySQL 數(shù)據(jù)庫(kù)中數(shù)據(jù)表的刪除方法。

基本語(yǔ)法

使用 DROP TABLE 語(yǔ)句可以刪除一個(gè)或多個(gè)數(shù)據(jù)表,語(yǔ)法格式如下:

DROP TABLE [IF EXISTS] 表名1 [ ,表名2, 表名3 ...]

對(duì)語(yǔ)法格式的說(shuō)明如下:

  • 表名1, 表名2, 表名3 ...表示要被刪除的數(shù)據(jù)表的名稱。DROP TABLE 可以同時(shí)刪除多個(gè)表,只要將表名依次寫在后面,相互之間用逗號(hào)隔開即可。

  • IF EXISTS 用于在刪除數(shù)據(jù)表之前判斷該表是否存在。如果不加 IF EXISTS,當(dāng)數(shù)據(jù)表不存在時(shí) MySQL 將提示錯(cuò)誤,中斷 SQL 語(yǔ)句的執(zhí)行;加上 IF EXISTS 后,當(dāng)數(shù)據(jù)表不存在時(shí) SQL 語(yǔ)句可以順利執(zhí)行,但是會(huì)發(fā)出警告(warning)。

到此,關(guān)于“表和數(shù)據(jù)庫(kù)之間有什么關(guān)系”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI