MySQL基礎(chǔ)詳解之?dāng)?shù)據(jù)模型和SQL語言

本篇文章給大家?guī)砹岁P(guān)于mysql的相關(guān)知識(shí),其中主要介紹了關(guān)于數(shù)據(jù)模型和sql語言的相關(guān)問題,即數(shù)據(jù)在 mysql 中是如何存儲(chǔ)的,以及對(duì) sql 語句的一些初步認(rèn)識(shí),下面一起來看一下,希望對(duì)大家有幫助。

MySQL基礎(chǔ)詳解之?dāng)?shù)據(jù)模型和SQL語言

推薦學(xué)習(xí):mysql

一、關(guān)系型數(shù)據(jù)庫(kù)

我們知道 mysql 是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS),而關(guān)系型數(shù)據(jù)庫(kù)(RDB)是現(xiàn)在應(yīng)用最廣泛的數(shù)據(jù)庫(kù)。

關(guān)系型數(shù)據(jù)庫(kù)和 Excel 工作表一樣,使用由行和列組成的二維表來存儲(chǔ)數(shù)據(jù)。并且關(guān)系型數(shù)據(jù)庫(kù)使用專門的 SQL 語言來操作數(shù)據(jù)。

示例:下面是一個(gè)“學(xué)生表”的數(shù)據(jù)

MySQL基礎(chǔ)詳解之?dāng)?shù)據(jù)模型和SQL語言

二、MySQL 的數(shù)據(jù)模型

MySQL 是一個(gè)客戶端/服務(wù)器(C/S)系統(tǒng),可以通過客戶端向服務(wù)器發(fā)送 SQL 語句來實(shí)現(xiàn)數(shù)據(jù)庫(kù)的讀寫操作。

一個(gè) MySQL 服務(wù)器可以有多個(gè)數(shù)據(jù)庫(kù),每個(gè)數(shù)據(jù)庫(kù)也可以有多個(gè)表。客戶端連接其中一個(gè)數(shù)據(jù)庫(kù)后,就可以操作該數(shù)據(jù)庫(kù)中的表了。

MySQL基礎(chǔ)詳解之?dāng)?shù)據(jù)模型和SQL語言

三、SQL 語言

SQL 是為了操作關(guān)系型數(shù)據(jù)庫(kù)而開發(fā)的語言。雖然 SQL 也有標(biāo)準(zhǔn),但實(shí)際上根據(jù) RDBMS 的不同 SQL 也不盡相同。

1. 標(biāo)準(zhǔn) SQL

國(guó)際標(biāo)準(zhǔn)化組織(ISO)為 SQL 制定了相應(yīng)的標(biāo)準(zhǔn),以此為基準(zhǔn)的 SQL 稱為標(biāo)準(zhǔn) SQL。

然而各個(gè) RDBMS 并沒有完全遵守該標(biāo)準(zhǔn),這就會(huì)造成能夠在 Oracle 上使用的 SQL 卻無法在 MySQL 中使用,反之亦然。當(dāng)然,各個(gè) RDBMS 對(duì)標(biāo)準(zhǔn) SQL 的支持也是越來越好的,只要學(xué)會(huì)了標(biāo)準(zhǔn) SQL,基本上就能夠在各種 RDBMS 中書寫 SQL 語句了。

2. SQL 語句及其種類

SQL 語句是用關(guān)鍵字、表名、列名等組合而成的一條語句。關(guān)鍵字是指那些含義或使用方法已經(jīng)被定義好的單詞。例如:查詢關(guān)鍵字是create;來自哪個(gè)表使用from等。

根據(jù)對(duì) RDBMS 賦予的指令各類的不同,SQL 語句可以分為三類:

  • DDL(數(shù)據(jù)定義語言)用來創(chuàng)建和刪除數(shù)據(jù)庫(kù)、表等對(duì)象。
  • DML(數(shù)據(jù)操縱語言)用來查詢或變更表中的記錄。
  • DCL(數(shù)據(jù)控制語言)用來確認(rèn)或取消對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)的變更,以及對(duì)用戶權(quán)限的操作。

后面會(huì)出一篇文章詳細(xì)介紹這三種 SQL 語句,這里就不展開說了。

3. SQL 的基本語法規(guī)則

書寫 SQL 語句時(shí)必須要遵守一些語法規(guī)則。

  • SQL 語句要以分號(hào)(;)結(jié)尾:在 MySQL 中,SQL 語句是逐條執(zhí)行的,使用分號(hào)(;)表示一條 SQL 語句的結(jié)束。
  • SQL 語句不區(qū)關(guān)鍵字的分大小寫: SQL 中不區(qū)分關(guān)鍵字的大小寫,包括表名和列名等。
  • 單詞需要用空格或者換行來分隔:?jiǎn)卧~之間需要使用空格或換行符來分隔,否則將會(huì)發(fā)生錯(cuò)誤。
  • 常數(shù)的書寫方式是固定的:字符串或日期型常數(shù),使用單引號(hào)括起來;數(shù)字類型直接書寫即可。

推薦學(xué)習(xí):mysql

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊11 分享