趙光亮++舒小松
摘 要:SQL是一種數(shù)據(jù)庫(kù)查詢(xún)和程序設(shè)計(jì)語(yǔ)言,用于存取數(shù)據(jù)以及查詢(xún)、更新和管理關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)。MySQL是開(kāi)放源碼軟件,具有體積小、速度快的特點(diǎn)。Navicat for MySQL是一套管理和開(kāi)發(fā)MySQL的理想解決方案,支持單一程序,可連接到MySQL。文章通過(guò)一個(gè)詳細(xì)的案例介紹了SQL查詢(xún)語(yǔ)言在Navicat for MySQL平臺(tái)中的基礎(chǔ)性應(yīng)用,并進(jìn)行了相關(guān)的分析。
關(guān)鍵詞:數(shù)據(jù)庫(kù);Navicat for MySQL;SQL;MySQL
結(jié)構(gòu)化查詢(xún)語(yǔ)言(Structured Query Language,SQL)是一種數(shù)據(jù)庫(kù)查詢(xún)和程序設(shè)計(jì)語(yǔ)言,用于存取數(shù)據(jù)以及查詢(xún)、更新和管理關(guān)系數(shù)據(jù)庫(kù)系統(tǒng),同時(shí)也是數(shù)據(jù)庫(kù)腳本文件的擴(kuò)展名[1]。
結(jié)構(gòu)化查詢(xún)語(yǔ)言是高級(jí)的非過(guò)程化編程語(yǔ)言,允許用戶(hù)在高層數(shù)據(jù)結(jié)構(gòu)上工作。它不要求用戶(hù)指定對(duì)數(shù)據(jù)的存放方法,也不需要用戶(hù)了解具體的數(shù)據(jù)存放方式,所以具有完全不同底層結(jié)構(gòu)的不同數(shù)據(jù)庫(kù)系統(tǒng),可以使用相同的結(jié)構(gòu)化查詢(xún)語(yǔ)言作為數(shù)據(jù)輸入與管理的接口。結(jié)構(gòu)化查詢(xún)語(yǔ)言語(yǔ)句可以嵌套,這使其具有極大的靈活性和強(qiáng)大的功能。
1 Navicat for MySQL介紹
MySQL是一款免費(fèi)開(kāi)源、小型、關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)[2],關(guān)系數(shù)據(jù)庫(kù)將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個(gè)大倉(cāng)庫(kù)內(nèi),這樣就增加了速度并提高了靈活性。而Navicat for MySQL是一套管理和開(kāi)發(fā)MySQL的理想解決方案,支持單一程序,可連接到MySQL。這個(gè)功能齊備的前端軟件為數(shù)據(jù)庫(kù)管理、開(kāi)發(fā)和維護(hù)提供了直觀而強(qiáng)大的圖形界面,給MySQL使用者提供了一組全面的工具。Navicat for MySQL使用了極好的圖形用戶(hù)界面,可以用一種安全和更為容易的方式快速和容易地創(chuàng)建、組織、存取和共享信息。用戶(hù)可完全控制MySQL數(shù)據(jù)庫(kù)和顯示不同的管理資料,包括一個(gè)多功能的圖形化管理用戶(hù)和訪(fǎng)問(wèn)權(quán)限的管理工具,方便將數(shù)據(jù)從一個(gè)數(shù)據(jù)庫(kù)轉(zhuǎn)移到另一個(gè)數(shù)據(jù)庫(kù)中,進(jìn)行檔案?jìng)浞菔褂谩?/p>
2 SQL查詢(xún)語(yǔ)言的應(yīng)用與分析
2.1 前期準(zhǔn)備
安裝好MySQL以及Navicat for MySQL。進(jìn)入Navicat for MySQL,使之與MySQL進(jìn)行連接。在Navicat for MySQL中創(chuàng)建一個(gè)名為“教學(xué)管理”的數(shù)據(jù)庫(kù);并創(chuàng)建5張表,分別為課程C,學(xué)生S,學(xué)生選課SC,教師T,教師選課TC(見(jiàn)圖1),目的就是通過(guò)這5張表進(jìn)行數(shù)據(jù)庫(kù)的相關(guān)查詢(xún)。
2.2 SQL相關(guān)查詢(xún)問(wèn)題的建立與分析
(1)查詢(xún)T1老師所授課程的課程號(hào)和課程名。
(2)查詢(xún)年齡大于18歲的男同學(xué)的學(xué)號(hào)、姓名、系別。
(3)查詢(xún)李力老師所講課程的課程號(hào)、課程名、課時(shí)。
(4)查詢(xún)學(xué)號(hào)為S1的同學(xué)所選課程號(hào)、課程名和成績(jī)。
(5)查詢(xún)錢(qián)爾同學(xué)所選修課程的課程號(hào)、課程名和成績(jī)。
(6)查詢(xún)李思同學(xué)未選修的課程號(hào)和課程名。
(7)查詢(xún)選修了課程號(hào)為C1和C2的學(xué)生的學(xué)號(hào)和姓名。
通過(guò)上述7個(gè)題目的分析,第1題需要用到表課程C,教師T,教師選課TC;第2題需要用到表學(xué)生S;第3題需要用到表課程C,教師T,教師選課TC;第4題需要用到表課程C,學(xué)生S,學(xué)生選課SC;第5題需要用到表課程C,學(xué)生S,學(xué)生選課SC;第6題需要用到表課程C,學(xué)生S,學(xué)生選課SC;第7題需要用到表課程學(xué)生S,學(xué)生選課SC。
2.3 SQL查詢(xún)語(yǔ)言的基本操作
SQL查詢(xún)語(yǔ)言的基本操作如圖2—8所示。
3 結(jié)語(yǔ)
本文通過(guò)舉例介紹了SQL查詢(xún)語(yǔ)言在Navicat for MySQL平臺(tái)中的應(yīng)用,并對(duì)其使用方法和特點(diǎn)進(jìn)行了分析。SQL查詢(xún)語(yǔ)言是一種特殊目的的編程語(yǔ)言,是一種數(shù)據(jù)庫(kù)查詢(xún)和程序設(shè)計(jì)語(yǔ)言,用于存取數(shù)據(jù)以及查詢(xún)、更新和管理關(guān)系數(shù)據(jù)庫(kù)系統(tǒng);同時(shí)也是數(shù)據(jù)庫(kù)腳本文件的擴(kuò)展名。SQL語(yǔ)句無(wú)論是種類(lèi)還是數(shù)量都是繁多的,很多語(yǔ)句也是經(jīng)常要用到的,SQL查詢(xún)語(yǔ)句就是一個(gè)典型的例子,無(wú)論是高級(jí)查詢(xún)還是低級(jí)查詢(xún),SQL查詢(xún)語(yǔ)句的需求是最頻繁的。只有熟練掌握SQL查詢(xún)語(yǔ)言,才能更好地學(xué)習(xí)數(shù)據(jù)庫(kù)知識(shí)。
[參考文獻(xiàn)]
[1]劉增杰.MySQL 5.7從入門(mén)到精通[M].北京:清華大學(xué)出版社,2016.
[2]王飛飛.MySQL數(shù)據(jù)庫(kù)應(yīng)用從入門(mén)到精通[M].北京:中國(guó)鐵道出版社,2014.endprint