第一篇:數(shù)據(jù)庫(kù)學(xué)習(xí)心得
本學(xué)期我學(xué)習(xí)了數(shù)據(jù)庫(kù),主要是從以下幾個(gè)部分來學(xué)習(xí):
對(duì)于第1章:數(shù)據(jù)庫(kù)是相互關(guān)聯(lián)的數(shù)據(jù)的集合,它用綜合的方法組織數(shù)據(jù),具有較小的數(shù)據(jù)冗余,可供多個(gè)用戶共享,具有較高的數(shù)據(jù)獨(dú)立性,具有安全控制機(jī)制,能夠保證數(shù)據(jù)的安全、可靠,允許并發(fā)地使用數(shù)據(jù)庫(kù),能有效、及時(shí)地處理數(shù)據(jù),并能保證數(shù)據(jù)的一致性和完整性。
對(duì)于第2章,數(shù)據(jù)庫(kù)包含兩種類型的數(shù)據(jù)庫(kù):系統(tǒng)數(shù)據(jù)庫(kù)和用戶數(shù)據(jù)庫(kù).系統(tǒng)數(shù)據(jù)庫(kù)存儲(chǔ)有關(guān)sql server的信息, 并且使用系統(tǒng)數(shù)據(jù)庫(kù)進(jìn)行管理系統(tǒng).系統(tǒng)數(shù)據(jù)庫(kù)包括master數(shù)據(jù)庫(kù),model數(shù)據(jù)庫(kù),msdb數(shù)據(jù)庫(kù)和tempd數(shù)據(jù)庫(kù).SQL 分為兩個(gè)部分:數(shù)據(jù)操作語言(DML)和 數(shù)據(jù)定義語言(DDL)。
SQL(結(jié)構(gòu)化查詢語言)是用于執(zhí)行查詢的語法。但是 SQL 語言也包含用于更新、插入和刪除記錄的語法。
查詢和更新指令構(gòu)成了 SQL 的 DML 部分:
SELECT-? 從數(shù)據(jù)庫(kù)表中獲取數(shù)據(jù)
UPDATE向數(shù)據(jù)庫(kù)表中插入數(shù)據(jù) ?
SQL 的數(shù)據(jù)定義語言(DDL)部分使我們有能力創(chuàng)建或刪除表格。我們也可以定義索引(鍵),規(guī)定表之間的鏈接,以及施加表間的約束。SQL 中最重要的 DDL 語句: ? CREATE DATABASE修改數(shù)據(jù)庫(kù) ?
CREATE? TABLE變更(改變)數(shù)據(jù)庫(kù)表 ?
DROP TABLE-? 刪除表
CREATE INDEX-創(chuàng)建索引(搜索鍵)?
DROP INDEX-? 刪除索引
數(shù)據(jù)庫(kù)有保持?jǐn)?shù)據(jù)的獨(dú)立性,所謂數(shù)據(jù)獨(dú)立,是指存儲(chǔ)在數(shù)據(jù)庫(kù)中的數(shù)據(jù)獨(dú)立于處理數(shù)據(jù)的所有應(yīng)用程序而存在。也就是說,數(shù)據(jù)是客觀實(shí)體的符號(hào)化標(biāo)識(shí),它就是一個(gè)客觀存在,不會(huì)因?yàn)槟骋豁?xiàng)應(yīng)用的需要而改變它的結(jié)構(gòu),因此是獨(dú)立于應(yīng)用而存在著的客觀實(shí)體。而某一項(xiàng)應(yīng)用是處理數(shù)據(jù)獲取信息的過程,也就是應(yīng)用程序,它只能根據(jù)客觀存在著的數(shù)據(jù)來設(shè)計(jì)所需要的數(shù)據(jù)處理方法,而不會(huì)去改變客觀存在著的數(shù)據(jù)本身。數(shù)據(jù)庫(kù)的傳統(tǒng)定義是以一定的組織方式存儲(chǔ)的一組相關(guān)數(shù)據(jù)的集合,主要表現(xiàn)為數(shù)據(jù)表的集合。根據(jù)標(biāo)準(zhǔn),SQL語句按其功能的不同可以分為以下6大類: 數(shù)據(jù)定義語句(Data-Definition Language,DDL); 數(shù)據(jù)操作語句(Data-Manipulation Language,DML); 操作管理語句(Transaction-Management Language,TML); 數(shù)據(jù)控制語句(Data-Control Language,DCL); 數(shù)據(jù)查詢語句(Data-Query Language,DQL); 游標(biāo)控制語句(Cursor-Control Language,CCL)。學(xué)習(xí)數(shù)據(jù)庫(kù)不理解的地方: 1.多表查詢 2.視圖 學(xué)習(xí)心得:
數(shù)據(jù)庫(kù)和現(xiàn)實(shí)生活一樣,說好學(xué)其實(shí)也挺難的,特別是多表查詢。
在多媒體教學(xué)過程中劉老師經(jīng)常會(huì)把知識(shí)點(diǎn)實(shí)物化,和現(xiàn)實(shí)生活聯(lián)系在一起,這樣一來,我們學(xué)習(xí)起來更加的容易,同時(shí)也陶醉在老師生動(dòng)的課堂當(dāng)中不能自拔。寄希望,劉老師能保持住這種教課的風(fēng)格。在上機(jī)實(shí)踐課上,劉老師首先給給我們一個(gè)宏觀的思路,我們自己主動(dòng)編程實(shí)踐這樣更加有效地理解牢記各個(gè)知識(shí)點(diǎn)。與此同時(shí),劉老師會(huì)把我們課后作業(yè)中出錯(cuò)的地方,給予詳細(xì)的講解,讓我們有種醍醐灌頂?shù)母杏X。
在此,我向那些在數(shù)據(jù)庫(kù)學(xué)習(xí)中給予我?guī)椭耐瑢W(xué)們表示感謝,同時(shí)也向在數(shù)據(jù)庫(kù)學(xué)海中為我點(diǎn)亮航燈的劉老師送上我真誠(chéng)的謝意??!
第二篇:數(shù)據(jù)庫(kù)學(xué)習(xí)心得
數(shù)據(jù)庫(kù)學(xué)習(xí)心得
軟件0704劉辰(07301096)馬曉雪(07301098)劉靖遠(yuǎn)(07301097)
經(jīng)過一個(gè)學(xué)期的數(shù)據(jù)庫(kù)課程的學(xué)習(xí),我們掌握了創(chuàng)建數(shù)據(jù)庫(kù)以及對(duì)數(shù)據(jù)庫(kù)的操作的基礎(chǔ)知識(shí)。王老師的教學(xué)耐心細(xì)致,課堂上我們有不理解的地方老師都反復(fù)講解,使我們的基礎(chǔ)知識(shí)掌握的比較牢固。數(shù)據(jù)庫(kù)這門課涉及到以前的知識(shí)不多,是一門從頭學(xué)起的課程,即使基礎(chǔ)不是很好,只要認(rèn)真聽講、復(fù)習(xí)功課,還是一門比較容易掌握的課。
在課堂上,使用英文課件,老師會(huì)叫同學(xué)起來翻譯知識(shí)點(diǎn),這種方法有助于加強(qiáng)理解、深化記憶,是比較好的,希望以后能夠繼續(xù)下去。因?yàn)楫吘管浖I(yè)是離不開英文的資料和環(huán)境的。這樣提早的鍛煉會(huì)讓我們受益匪淺的。
項(xiàng)目小組和實(shí)訓(xùn)的內(nèi)容又讓我們了解了如何將數(shù)據(jù)庫(kù)與網(wǎng)頁(yè)等其他界面結(jié)合的知識(shí),使得數(shù)據(jù)庫(kù)的知識(shí)更加有實(shí)際意義。課堂上講的知識(shí)比較理論化,如果不動(dòng)手就無法將知識(shí)轉(zhuǎn)化為技能,而制作項(xiàng)目能夠讓我們將學(xué)過的知識(shí)在實(shí)踐中運(yùn)用,找到知識(shí)漏洞,并且能學(xué)到更多關(guān)于實(shí)際操作的知識(shí)和技巧。并且培養(yǎng)了我們的自學(xué)能力。
對(duì)課堂改進(jìn)措施的一點(diǎn)建議:我覺得如果老師不要求 我們很少有人回去會(huì)按進(jìn)度去讀英文教材。但是我又覺得讀教材是很有幫助的,所以希望老師可以再這方面加強(qiáng)要求,督促我們。
第三篇:數(shù)據(jù)庫(kù)學(xué)習(xí)心得
數(shù)據(jù)庫(kù)學(xué)習(xí)心得
一直以來,對(duì)于數(shù)據(jù)庫(kù)這門課的理解就是一門文科性質(zhì)的學(xué)科,處理的問題就是一些跟數(shù)據(jù)有關(guān)的問題吧。大三上學(xué)期,數(shù)據(jù)庫(kù)作為專業(yè)選修課學(xué)習(xí)了半個(gè)學(xué)習(xí),徹底改變了自己對(duì)于數(shù)據(jù)庫(kù)課程的認(rèn)識(shí)。作為非計(jì)算機(jī)專業(yè)的學(xué)生,尤其自己覺得對(duì)計(jì)算機(jī)方面的課程一致都不太在行,學(xué)習(xí)起來并不好過。
和很多計(jì)算機(jī)的課一樣,數(shù)據(jù)庫(kù)的內(nèi)容在自己眼里顯得很零散、不成系統(tǒng),許許多多的零碎的知識(shí)點(diǎn)需要小心注意到,但是這個(gè)感覺隨著慢慢學(xué)習(xí)的深入初步改變,數(shù)據(jù)庫(kù)課程的概念和方法又一套完整的體系,理論性和邏輯性很強(qiáng),對(duì)于事物處理能力有很高的要求。在老師介紹中也漸漸認(rèn)識(shí)到,各行各業(yè)都離不開數(shù)據(jù)庫(kù),無論規(guī)模的大小,數(shù)據(jù)庫(kù)對(duì)于一個(gè)企業(yè)或者部門來說都是至關(guān)重要不可或缺的。數(shù)據(jù)庫(kù)就像一套密密麻麻的神經(jīng)網(wǎng)絡(luò),將整個(gè)系統(tǒng)置于規(guī)范有效的運(yùn)行模式之下。
數(shù)據(jù)庫(kù)也讓我第一次接觸到了SQL語言,開頭的時(shí)候老師給了操作的步驟,但就算是這樣也難免犯錯(cuò),因?yàn)槭前凑战o定的步驟做的,沒有自己的思考方式,所以對(duì)于這門語言的精髓所在沒有理解到,做完了之后還是覺得SQL語言很抽象難懂,就像其他很多計(jì)算機(jī)語言一樣。幸好有老師耐心的講解,每次操作遇到困難,老師都會(huì)認(rèn)真的講解,如果一時(shí)不能解決,老師會(huì)在下一次講課或者其他方式告知我解決的辦法,這更是激發(fā)了我要學(xué)好數(shù)據(jù)庫(kù)這門課的決心。慢慢的有了一些信心,然后發(fā)現(xiàn),其實(shí)數(shù)據(jù)庫(kù)的題目沒有什么固定的解法,每個(gè)
問題都有很多種解決方案。
在結(jié)束了課堂的學(xué)習(xí)之后,老師還為我們安排了上機(jī)。這時(shí),平常上課所積累的知識(shí)才真正有了用處,但同時(shí)也發(fā)現(xiàn)存在很多的問題。譬如說在建立一個(gè)關(guān)于教學(xué)質(zhì)量評(píng)價(jià)的簡(jiǎn)單數(shù)據(jù)庫(kù)系統(tǒng)時(shí),前期的步驟都沒有錯(cuò)誤,唯獨(dú)在設(shè)置學(xué)生成績(jī)表的時(shí)候無法正常設(shè)置主鍵,自己在做的過程中忽略掉了這一問題,直接導(dǎo)致在最后建立模型時(shí)出現(xiàn)無法更改的錯(cuò)誤,無奈之下只能選擇重新開始,還是發(fā)現(xiàn)主鍵的設(shè)置不正常,一時(shí)便無法進(jìn)行下去,一籌莫展之際,老師給我提供了幫助順利解決得了問題。
由此可見,學(xué)習(xí)任何知識(shí)都來不得半點(diǎn)的差錯(cuò),否則必將會(huì)導(dǎo)致巨大的失誤。意識(shí)到這之后也不禁后怕,好在這是學(xué)生時(shí)期的練習(xí),就算是錯(cuò)誤也沒有實(shí)質(zhì)性的影響,但要是在以后的工作中呢,也需就是給公司造成了巨大的損失。平時(shí)的一點(diǎn)一滴中務(wù)必養(yǎng)成認(rèn)真仔細(xì)的習(xí)慣。
數(shù)據(jù)庫(kù)技術(shù)產(chǎn)生于六十年代末,是數(shù)據(jù)管理的最新技術(shù),是計(jì)算機(jī)科學(xué)的重點(diǎn),它的出現(xiàn)極大的促進(jìn)了計(jì)算機(jī)應(yīng)用向各行各業(yè)的滲透。而數(shù)據(jù)庫(kù)的建設(shè)規(guī)模、數(shù)據(jù)庫(kù)信息量的大小和使用額度已成為衡量一個(gè)國(guó)家信息化程度的重要標(biāo)志。在當(dāng)下信息化的時(shí)代,數(shù)據(jù)庫(kù)技術(shù)已經(jīng)成為我們必須掌握的技術(shù)之一。通過對(duì)這門課的學(xué)習(xí),使得我對(duì)這門課有了深入的了解,掌握了有關(guān)數(shù)據(jù)庫(kù)中的思維方法,并對(duì)數(shù)據(jù)庫(kù)有關(guān)的應(yīng)用有了一定的認(rèn)知,相信對(duì)數(shù)據(jù)庫(kù)技術(shù)的學(xué)習(xí)在今后的工作必定有很大的用處。
第四篇:數(shù)據(jù)庫(kù)學(xué)習(xí)心得
學(xué)習(xí)數(shù)據(jù)庫(kù)的心得體會(huì)
在大三的下學(xué)期剛學(xué)了數(shù)據(jù)庫(kù)這門課,對(duì)這門課的第一印象是書本蠻厚的,感覺學(xué)起來應(yīng)該會(huì)很難很累。在學(xué)習(xí)這門課的過程中,在對(duì)數(shù)據(jù)庫(kù)的了解過程中,慢慢對(duì)數(shù)據(jù)庫(kù)有了感觀。們掌握了創(chuàng)建數(shù)據(jù)庫(kù)以及對(duì)數(shù)據(jù)庫(kù)的操作的基礎(chǔ)知識(shí)。老師的不斷反復(fù)講解,是我們的基礎(chǔ)知識(shí)掌握的比較牢固。數(shù)據(jù)庫(kù)這門課涉及到以前的知識(shí)不多,是一門從頭學(xué)起的課程,及時(shí)基礎(chǔ)不好。只要認(rèn)真聽講、復(fù)習(xí)功課,還是一門比較容易掌握的課。數(shù)據(jù)庫(kù)這一詞并不是很難想象,并不是像以前看來很神奇。
在課堂上,試用的課件中帶有英文,老師會(huì)叫同學(xué)起來翻譯,這種方法有助于加強(qiáng)理解、神話記憶,是比較好的,希望以后能夠繼續(xù)下去。因?yàn)楫吘管浖I(yè)是離不開英文的資料和環(huán)境的。這樣提早的鍛煉會(huì)讓我們受益匪淺的。
學(xué)習(xí)的時(shí)候沒有想象中的那么難,只要上課能聽懂就基本還可以。但是問題還是出在書本有點(diǎn)厚,有的時(shí)候上課的內(nèi)容都要找很久才能找到,甚至有的時(shí)候老師講的知識(shí)書本上是找不到的,是另外補(bǔ)充而且是相當(dāng)重要的內(nèi)容。有的時(shí)候開小差,沒有聽到老師講的知識(shí)點(diǎn),這就導(dǎo)致了以后的學(xué)習(xí)無法順利進(jìn)行,使得學(xué)習(xí)起來十分困難。所以在數(shù)據(jù)庫(kù)這門課的學(xué)習(xí)中,上課一定要聽牢,就像老師說的那樣,這樣的專業(yè)課如果想憑考試前幾天突擊是行不通的,必須是日積月累的知識(shí)才能取得好成績(jī)。
通過對(duì)數(shù)據(jù)庫(kù)的學(xué)習(xí),我也明白了各行各業(yè)都離不開數(shù)據(jù)庫(kù),就算是一個(gè)小型的超市也離不開它??梢姅?shù)據(jù)庫(kù)這門課的廣泛性,如果能夠認(rèn)真學(xué)好它將來必有成就。我就是抱著這種信念去學(xué)習(xí)數(shù)據(jù)庫(kù)的。第一次接觸數(shù)據(jù)庫(kù),第一次接觸SQL語言,雖然陌生,但是可以讓我從頭開始學(xué),就算沒有基礎(chǔ)的人也可以學(xué)得很好。剛開始練習(xí)SQL語言的時(shí)候,并不是很難,基本上都是按照老師的步驟來做,還很有成就感。后來學(xué)了單表查詢和連接查詢后,就慢慢發(fā)現(xiàn)越學(xué)越困難了,每個(gè)題目都要思考很久,并且每個(gè)題目基本上不止一個(gè)答案,所以必須找出最優(yōu)的答案。后面的刪除、插入、修改這些題目都變化蠻大的,書本上的例題根本無法滿足我們,好在老師給我們提供了大量的課件,通過這些PPT,我們可以鞏固課內(nèi)的知識(shí),還可以學(xué)習(xí)內(nèi)容相關(guān)的知識(shí),更好地完成老師布置的作業(yè)。通過本學(xué)期數(shù)據(jù)庫(kù)的學(xué)習(xí)及大作業(yè)的完成,很有去作項(xiàng)目的沖動(dòng),但深知自己的能力水平有限,還需要更多的學(xué)習(xí)。
實(shí)訓(xùn)的內(nèi)容又讓我們了解了如何將數(shù)據(jù)庫(kù)與網(wǎng)頁(yè)等其他界面結(jié)合的知識(shí),使得數(shù)據(jù)庫(kù)的知識(shí)更加有實(shí)際意義。課堂上講的知識(shí)比較理論化,如果不動(dòng)手就無法將知識(shí)轉(zhuǎn)化為技能,而制作項(xiàng)目能夠讓我們將學(xué)過的知識(shí)在實(shí)踐中運(yùn)用,找到知識(shí)漏洞,并且能學(xué)到更多關(guān)于實(shí)際操作的知識(shí)和技巧。還培養(yǎng)了我們的自學(xué)能力。
本學(xué)期開設(shè)的《數(shù)據(jù)庫(kù)系統(tǒng)及應(yīng)用》課程已經(jīng)告一段落,現(xiàn)就其知識(shí)點(diǎn)及其掌握情況以及對(duì)該門課程的教學(xué)建議等方面進(jìn)行學(xué)習(xí)總結(jié)。
一、數(shù)據(jù)庫(kù)主要知識(shí)點(diǎn)
第一章緒論了解了數(shù)據(jù)庫(kù)的概念,其中有幾個(gè)較為重要的知識(shí)點(diǎn),即數(shù)據(jù)庫(kù)系統(tǒng)DBS、數(shù)據(jù)庫(kù)管理系統(tǒng)DBMS的概念以及數(shù)據(jù)庫(kù)管理員DBA的職責(zé)。此外本章還介紹了數(shù)據(jù)庫(kù)發(fā)展的三個(gè)階段:人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫(kù)系統(tǒng)階段。
第二章介紹了數(shù)據(jù)模型和三層模式數(shù)據(jù)庫(kù)。本章要求我們理解實(shí)體-聯(lián)系方法,并學(xué)會(huì)繪制E-R圖。此外還應(yīng)掌握概念數(shù)據(jù)模型的意義和傳統(tǒng)的三大數(shù)據(jù)模型,以及數(shù)據(jù)獨(dú)立性和數(shù)據(jù)庫(kù)三層模式結(jié)構(gòu)。接著開始著重講述現(xiàn)在普遍使用的關(guān)系數(shù)據(jù)庫(kù)。包括關(guān)系數(shù)據(jù)模型的數(shù)據(jù)結(jié)構(gòu)和基本術(shù)語,關(guān)系模型的完整性約束和關(guān)系代數(shù)運(yùn)算。重點(diǎn)是關(guān)系模式完整性的分類和功能,以及關(guān)系代數(shù)中集合運(yùn)算和關(guān)系運(yùn)算。最后介紹了關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)的三層模式結(jié)構(gòu)。
第三章介紹數(shù)據(jù)庫(kù)中的表,了解SQL server的數(shù)據(jù)類型,學(xué)會(huì)根據(jù)系統(tǒng)需求,為字段選擇合適的數(shù)據(jù)類型,掌握使用企業(yè)管理器和T-SQL 語句創(chuàng)建數(shù)據(jù)表以及T-SQL語句查看、修改、刪除數(shù)據(jù)表。
第五章系統(tǒng)講述關(guān)系數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)語言SQL的定義功能、查詢功能、操作和控制功能。重點(diǎn)在于數(shù)據(jù)查詢功能。另外還介紹了視圖的用法和動(dòng)態(tài)SQL中定義、操作和查詢功能。
第六章知識(shí)點(diǎn)有:存儲(chǔ)過程的創(chuàng)建和執(zhí)行過程、修改和刪除;觸發(fā)器的基本概念,建立,插入和刪除視圖,插入、刪除和更新類觸發(fā)器。最后介紹了數(shù)據(jù)完整性。
第十一章介紹安全性,包括安全性措施的層次、數(shù)據(jù)庫(kù)管理系統(tǒng)的安全功能等,用戶管理和角色管理,權(quán)限管理。其他的安全問題包括:數(shù)據(jù)加密、審計(jì)、統(tǒng)計(jì)數(shù)據(jù)庫(kù)和用戶定義的安全性措施。
二、對(duì)數(shù)據(jù)庫(kù)課程教學(xué)的建議
(一)、精講多練,自主學(xué)習(xí)。集中精力對(duì)基礎(chǔ)知識(shí),基本原理和重點(diǎn)內(nèi)容精心組織,精心講授,引導(dǎo)學(xué)生建立系統(tǒng)的知識(shí)結(jié)構(gòu)。精講必須多練,從能力培養(yǎng)著眼,注重講、練結(jié)合,保證練的比重,加強(qiáng)技能訓(xùn)練,培養(yǎng)學(xué)生自主學(xué)習(xí),增強(qiáng)分析問題和解決問題的能力。
(二)、互動(dòng)式教學(xué)法,每一堂實(shí)驗(yàn)課均很好的“設(shè)計(jì)問題”、“引導(dǎo)思考”、“假設(shè)結(jié)論”、在實(shí)驗(yàn)中“探索求證”。使不同程度的學(xué)生可以在不同層次上舉一反三。這樣,使得課堂學(xué)生生氣勃勃,師生互動(dòng),具有啟發(fā)性。
第五篇:Mysql數(shù)據(jù)庫(kù)學(xué)習(xí)心得
Mysql數(shù)據(jù)庫(kù)學(xué)習(xí)心得(1)
由于工作中需要使用mysql,筆者通過網(wǎng)上學(xué)習(xí),動(dòng)手實(shí)踐,終于從一個(gè)“數(shù)據(jù)庫(kù)菜鳥”變成了能熟練操作mysql的“準(zhǔn)大蝦”了,:)?,F(xiàn)將學(xué)習(xí)心得整理如下。
MySQL是完全網(wǎng)絡(luò)化的跨平臺(tái)關(guān)系型數(shù)據(jù)庫(kù)系統(tǒng),一個(gè)真正的多用戶、多線程SQL數(shù)據(jù)庫(kù)服務(wù)器,同時(shí)是具有客戶機(jī)/服務(wù)器體系結(jié)構(gòu)的分布式數(shù)據(jù)庫(kù)管理系統(tǒng)。它具有功能強(qiáng)、使
用簡(jiǎn)便、管理方便、運(yùn)行速度快、安全可靠性強(qiáng)等優(yōu)點(diǎn),用戶可利用許多語言編寫訪問MySQL數(shù)據(jù)庫(kù)的程序,對(duì)于中、小型應(yīng)用系統(tǒng)是非常理想的。除了支持標(biāo)準(zhǔn)的ANSI SQL語句,更重要的是,它還支持多種平臺(tái),而在Unix系統(tǒng)上該軟件支持多線程運(yùn)行方式,從而能獲得相當(dāng)好的性能。對(duì)于不使用Unix的用戶,它可以在Windows NT系統(tǒng)上以系統(tǒng)服務(wù)方式運(yùn)行,或者在Windows 95/98系統(tǒng)上以普通進(jìn)程方式運(yùn)行。而在Unix/Linux系統(tǒng)上,MySQL支持多線程運(yùn)行方式,從而能獲得相當(dāng)好的性能,而且它是屬于開放源代碼軟。
MySQL是以一個(gè)客戶機(jī)/服務(wù)器結(jié)構(gòu)的實(shí)現(xiàn),它由一個(gè)服務(wù)器守護(hù)程序mysqld和很多不同的客戶程序和庫(kù)組成,MySQL的執(zhí)行性能非常高,運(yùn)行速度非???,并非常容易使用,是一個(gè)非常棒的數(shù)據(jù)庫(kù)。MySQL的官方發(fā)音是“My Ess Que Ell”(不是MY-SEQUEL)。
一.獲得MySQL
首先必須下載MySQL。Mysql的官方網(wǎng)站是:004km.cnf copy為c:my.cnf,并把c:mysqlibgwinb19.dll copy到winntsystem32。
3。啟動(dòng)mysql的方法是:
c:mysqlinmysqld-shareware--install
net start mysql
這么簡(jiǎn)單,就可以啟動(dòng)了。
4。更改超級(jí)用戶(root)的密碼:
C:mysqlinmysql mysql
mysql> UPDATE user SET password=PASSWORD('your password')swheresuser='root';
mysql> QUIT
C:mysqlinmysqladmin reload
使用命令C:mysqlinmysqlshow去看看檢測(cè)一下。在這里應(yīng)該顯示:
+-----------+
| Databases |
+-----------+
| mysql |
| test |
+-----------+
看到這些信息這一步就證明沒問題了
再來:
C:mysqlinmysqlshow--user=root--password=your password mysql
在這里應(yīng)該顯示:
Database: mysql
+--------------+
| Tables |
+--------------+
| columns_priv |
| db |
| host |
| tables_priv |
| user |
+--------------+
一切搞定!
5。C:mysqlinmysqladmin version status proc
應(yīng)該可以看到這些版本信息的:
mysqladmin Ver 8.0 Distrib 3.22.32, for Win95/Win98 on i586
TCX Datakonsult AB, by Monty
Server version 3.22.32-shareware-debug
Protocol version 10
Connection localhost via TCP/IP
TCP port 3306
Uptime: 1 hour 29 min 30 sec
Threads: 1 Questions: 72 Slow queries: 0 Opens: 16 Flush tables: 1 Open tables: 0 Memory in use: 16423K Max memory
used: 16490K
Uptime: 5370 Threads: 1 Questions: 72 Slow queries: 0 Opens: 16 Flush tables: 1 Open tables: 0 Memory in use: 16423K
Max memory used: 16490K
+----+------+-----------+----+---------+------+-------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+------+-----------+----+---------+------+-------+------------------+
| 35 | ODBC | localhost | | Query | 0 | | show processlist |
+----+------+-----------+----+---------+------+-------+------------------+
接著,用show databases命令可以將安裝的數(shù)據(jù)庫(kù)列出來:
mysql> show databases;
你就可以看到:
+----------+
| Database |
+----------+
| mysql |
| test |
+----------+ rows in set(0.00 sec)
如果一切正常的話,那說明MySQL可以完全工作了!如果要退出程序,輸入:exit
mysql> exit;
Bye
Mysql數(shù)據(jù)庫(kù)學(xué)習(xí)心得(3)------------------
三.Mysql常識(shí)
(一)字段類型
1.INT[(M)]
正常大小整數(shù)類型
2.DOUBLE[(M,D)] [ZEROFILL]
正常大小(雙精密)浮點(diǎn)數(shù)字類型
3.DATE
日期類型。支持的范圍是'1000-01-01'到'9999-12-31'。MySQL以'YYYY-MM-DD'格式來顯示DATE值,但是允許你使用字符串或數(shù)字把值賦給
DATE列
4.CHAR(M)
定長(zhǎng)字符串類型,當(dāng)存儲(chǔ)時(shí),總是是用空格填滿右邊到指定的長(zhǎng)度
5.BLOB TEXT
BLOB或TEXT類型,最大長(zhǎng)度為65535(2^16-1)個(gè)字符。
6.VARCHAR
變長(zhǎng)字符串類型,最常用的類型。
(二)基本操作
1:顯示數(shù)據(jù)庫(kù)
mysql>SHOW DATABASES;
2:當(dāng)前選擇的數(shù)據(jù)庫(kù),mysql> SELECT DATABASE();
+------------+
| DATABASE()|
+------------+
| test |
+------------+
3.當(dāng)前數(shù)據(jù)庫(kù)包含的表信息:
mysql> SHOW TABLES;
+---------------------+
| Tables in test |
+---------------------+
| mytable1 |
| mytable2 |
+---------------------+
4.獲取表結(jié)構(gòu)
mysql> desc mytable1;
+---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| s1 | varchar(20)| YES | | NULL | |
+---------+-------------+------+-----+---------+-------+
5.創(chuàng)建表
表是數(shù)據(jù)庫(kù)的最基本元素之一,表與表之間可以相互獨(dú)立,也可以相互關(guān)聯(lián)。創(chuàng)建表的基本語法如下:
create table table_name
(column_name datatype {identity |null|not null},…)
其中參數(shù)table_name和column_name必須滿足用戶數(shù)據(jù)庫(kù)中的識(shí)別器(identifier)的要求,參數(shù)datatype是一個(gè)標(biāo)準(zhǔn)的SQL類型或由用戶數(shù)
據(jù)庫(kù)提供的類型。用戶要使用non-null從句為各字段輸入數(shù)據(jù)。
create table還有一些其他選項(xiàng),如創(chuàng)建臨時(shí)表和使用select子句從其他的表中讀取某些字段組成新表等。還有,在創(chuàng)建表是可用PRIMARY
KEY、KEY、INDEX等標(biāo)識(shí)符設(shè)定某些字段為主鍵或索引等。書寫上要注意:在一對(duì)圓括號(hào)里的列出完整的字段清單。字段名間用逗號(hào)隔開
。字段名間的逗號(hào)后要加一個(gè)空格。最后一個(gè)字段名后不用逗號(hào)。所有的SQL陳述都以分號(hào)“;”結(jié)束。
例:
mysql>CREATE TABLE guest(name varchar(10),sex varchar(2),age int(3),career varchar(10));
6.創(chuàng)建索引
索引用于對(duì)數(shù)據(jù)庫(kù)的查詢。一般數(shù)據(jù)庫(kù)建有多種索引方案,每種方案都精于某一特定的查詢類。索引可以加速對(duì)數(shù)據(jù)庫(kù)的查詢過程。創(chuàng)建
索引的基本語法如下:
create index index_name
on table_name(col_name[(length)],...)
例:
mysql> CREATE INDEX number ON guest(number(10));
7.執(zhí)行查詢
查詢是使用最多的SQL命令。查詢數(shù)據(jù)庫(kù)需要憑借結(jié)構(gòu)、索引和字段類型等因素。大多數(shù)數(shù)據(jù)庫(kù)含有一個(gè)優(yōu)化器(optimizer),把用戶的查
詢語句轉(zhuǎn)換成可選的形式,以提高查詢效率。
值得注意的是MySQL不支持SQL92標(biāo)準(zhǔn)的嵌套的where子句,即它只支持一個(gè)where子句。其基本語法如下:
SELECT [STRAIGHT_JOIN] [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [HIGH_PRIORITY]
[DISTINCT | DISTINCTROW | ALL]
select_expression,...[INTO {OUTFILE | DUMPFILE} 'file_name' export_options]
[FROM table_references
[WHERE where_definition]
[GROUP BY col_name,...]
[HAVING where_definition]
[ORDER BY {unsigned_integer | col_name | formula} [ASC | DESC] ,...]
[LIMIT [offset,] rows]
[PROCEDURE procedure_name] ]
其中where從句是定義選擇標(biāo)準(zhǔn)的地方,where_definition可以有不同的格式,但都遵循下面的形式:
字段名操作表達(dá)式
字段名操作字段名
在第一種形式下,標(biāo)準(zhǔn)把字段的值與表達(dá)式進(jìn)行比較;在第二種形式下,把兩個(gè)字段的值進(jìn)行比較。根據(jù)所比較的數(shù)據(jù)類型,search_condition中的操作可能選以下幾種:
=檢查是否相等
!=檢查是否不等
>(或>=)檢查左邊值是否大于(或大于等于)右邊值
<(或<=)檢查左邊值是否小于(或小于等于)右邊值
[not] between檢查左邊值是否在某個(gè)范圍內(nèi)
[not] in檢查左邊是否某個(gè)特定集的成員
[not] like檢查左邊是否為右邊的子串
is [not] null檢查左邊是否為空值
在這里,可以用通配符_代表任何一個(gè)字符,%代表任何字符串。使用關(guān)鍵字、和可以生成復(fù)雜的詞,它們運(yùn)行檢查時(shí)使用
布爾表達(dá)式的多重標(biāo)準(zhǔn)集。
例:
mysql> select t1.name, t2.salary from employee AS t1, info AS t2swherest1.name = t2.name;
mysql> select college, region, seed from tournament
ORDER BY region, seed;
mysql> select col_name from tbl_nameswherescol_name > 0;
8.改變表結(jié)構(gòu)
在數(shù)據(jù)庫(kù)的使用過程中,有時(shí)需要改變它的表結(jié)構(gòu),包括改變字段名,甚至改變不同數(shù)據(jù)庫(kù)字段間的關(guān)系??梢詫?shí)現(xiàn)上述改變的命令是
alter,其基本語法如下:
alter table table_name alter_spec [, alter_spec...]
例:
mysql> alter table dbname add column userid int(11)not null primary key auto_increment;
這樣,就在表dbname中添加了一個(gè)字段userid,類型為int(11)。
9.修改表中數(shù)據(jù)
在使用數(shù)據(jù)庫(kù)過程中,往往要修改其表中的數(shù)據(jù),比如往表中添加新數(shù)據(jù),刪除表中原有數(shù)據(jù),或?qū)Ρ碇性袛?shù)據(jù)進(jìn)行更改。它們的基本
語法如下:
數(shù)據(jù)添加:
insert [into] table_name [(column(s))]
values(expression(s))
例:
mysql>insertsintosmydatabase values('php','mysql','asp','sqlserver','jsp','oracle');Mysql數(shù)據(jù)庫(kù)學(xué)習(xí)心得(4)------------------
10.表的數(shù)據(jù)更新
(1)一次修改一個(gè)字段,再次注意語法。文本需要加引號(hào)但數(shù)字不要。
mysql>update table01 set field03='new info'swheresfield01=1;
Query OK, 1 row affected(0.00 sec)
(2)一次改變多個(gè)字段,記住在每一個(gè)更新的字段間用逗號(hào)隔開。
mysql>update table01 set field04=19991022, field05=062218swheresfield01=1;
Query OK, 1 row affected(0.00 sec)
(3)一次更新多個(gè)數(shù)據(jù)
mysql>update table01 set field05=152901swheresfield04>19990101;
Query OK, 3 rows affected(0.00 sec)
11.刪除數(shù)據(jù)
mysql>delete from table01swheresfield01=3;
Query OK, 1 row affected(0.00 sec)
12.導(dǎo)入數(shù)據(jù)庫(kù)表
(1)創(chuàng)建.sql文件
(2)先產(chǎn)生一個(gè)庫(kù)如auction.c:mysqlin>mysqladmin-u root-p creat auction,會(huì)提示輸入密碼,然后成功創(chuàng)建。
(3)導(dǎo)入auction.sql文件
c:mysqlin>mysql-u root-p auction < auction.sql。
通過以上操作,就可以創(chuàng)建了一個(gè)數(shù)據(jù)庫(kù)auction以及其中的一個(gè)表auction。
13.mysql數(shù)據(jù)庫(kù)的授權(quán)
mysql>grant select,insert,delete,create,drop
on *.*(或test.*/user.*/..)
to用戶名@localhost
identified by '密碼';
如:新建一個(gè)用戶帳號(hào)以便可以訪問數(shù)據(jù)庫(kù),需要進(jìn)行如下操作:
mysql> grant usage
-> ON test.*
-> TO testuser@localhost;
Query OK, 0 rows affected(0.15 sec)
此后就創(chuàng)建了一個(gè)新用戶叫:testuser,這個(gè)用戶只能從localhost連接到數(shù)據(jù)庫(kù)并可以連接到test數(shù)據(jù)庫(kù)。下一步,我們必須指定
testuser這個(gè)用戶可以執(zhí)行哪些操作:
mysql> GRANT select, insert, delete,update
-> ON test.*
-> TO testuser@localhost;
Query OK, 0 rows affected(0.00 sec)
此操作使testuser能夠在每一個(gè)test數(shù)據(jù)庫(kù)中的表執(zhí)行SELECT,INSERT和DELETE以及UPDATE查詢操作?,F(xiàn)在我們結(jié)束操作并退出MySQL客戶
程序:
mysql> exit
Bye
14.授權(quán)MySQL用戶密碼
MySQL數(shù)據(jù)庫(kù)的默認(rèn)用戶名為“root”(MS SQL Server的sa相似),密碼默認(rèn)為空。在DOS提示符(注 意,不是mysql提示符)下輸入
c:mysqlin>“mysqladmin-u root-p password newpassword
回車后會(huì)提示你輸入原來的密碼,由于原來密碼為空,直接回車,root用戶的密碼便改為”newpassword“了。
Mysql數(shù)據(jù)庫(kù)學(xué)習(xí)心得(5)------------------
四.安裝phpMyAdmin
MySQL圖形界面管理器phpMyAdmin是一套以php3寫成,針對(duì)MySQL數(shù)據(jù)庫(kù)系統(tǒng)的Web管理界面。它可以很方便地以圖形化界面,來對(duì)MySQL數(shù)據(jù)庫(kù)里的字段、數(shù)據(jù)進(jìn)行增加、刪除等的動(dòng)作,更可以做數(shù)據(jù)庫(kù)本身的增刪管理;phpMyAdmin可以管理整個(gè)MySQL服務(wù)器(需要超級(jí)用戶),也可以管理單個(gè)數(shù)據(jù)庫(kù)。另外,您也可以通過使用這個(gè)圖形化界面來學(xué)習(xí)SQL正確的語法,直至熟練掌握。那要等到你看過MySQL手冊(cè)中相關(guān)的部分。你可以到http://www.phpwizard.net/phpMyAdmin/去下載最新的版本。
首先,將phpMyAdmin軟件包解到一個(gè)目錄下。
1.修改文檔config.inc.php3。
將原來的設(shè)定:
§cfgServers[1]['host'] = '';// MySQL hostname
§cfgServers[1]['port'] = '';// MySQL port-leave blank fordefault port
§cfgServers[1]['adv_auth'] = false;// Use advanced authentication?
§cfgServers[1]['stduser'] = '';// MySQL standard user(only needed with advanced auth)
§cfgServers[1]['stdpass'] = '';// MySQL standard password(only needed with advanced auth)
§cfgServers[1]['user'] = '';// MySQL user(only needed withbasic auth)
§cfgServers[1]['password'] = '';// MySQL password(only needed with basic auth)
§cfgServers[1]['only_db'] = '';// If set to a db-name, only this db is accessible
§cfgServers[1]['verbose'] = '';// Verbose name for this host-leave blank to show the hostname
:
:
require(”english.inc.php3“);
修改成:
§cfgServers[1]['host'] = 'MySQL Server的hostname';//填入您的MySQL Server的主機(jī)名稱
§cfgServers[1]['port'] = '';//填入連結(jié)MySQL的port,不填則以預(yù)設(shè)的port進(jìn)行連結(jié)
§cfgServers[1]['adv_auth'] = true;//改成true則進(jìn)入phpMyAdmin必須先身份認(rèn)證
§cfgServers[1]['stduser'] = 'root';// MySQL使用者的帳號(hào)
§cfgServers[1]['stdpass'] = '密碼';// MySQL使用者的密碼
§cfgServers[1]['user'] = 'root';// MySQL管理帳號(hào)
§cfgServers[1]['password'] = '密碼';// MySQL管理密碼
§cfgServers[1]['only_db'] = '';//指定管理的資庫(kù)名稱,不填則可以管理整個(gè)Server
§cfgServers[1]['verbose'] = '';//指定MySQL的名稱,不填則使用系統(tǒng)本身的hostname
:
:
require(”chinese_gb.inc.php3");//將語言改成中文
說明:
(1)因本管理接口,可以以一個(gè)接口,管理多個(gè)MySQL Server,所以可以在config.inc.php3中找到
§cfgServers[1]...§cfgServers[1]...§cfgServers[1]...:
§cfgServers[2]...§cfgServers[2]...§cfgServers[2]...其中[1]代表第一個(gè)MySQL Server,[2]代表第二個(gè)MySQL Server,您要管理的MySQL Server超過三臺(tái)以上,您可以依照同樣的?述,增加[4].....下去!
(2)若您的MySQL Server與http Server是同一臺(tái),則§cfgServers[1]['host'] =可直接填入localhost。
最后,打開流覽器,輸入你的網(wǎng)址/phpMyAdmin之后您會(huì)看到一個(gè)密碼驗(yàn)證的小窗口,輸入您的MySQL管理帳號(hào)及密碼,即可成功地看到phpMyAdmin的管理畫面。通過phpmyadmin,你就可以圖形化的、方便的管理你的所有數(shù)據(jù)庫(kù)了。
五.小結(jié)
通過以上的學(xué)習(xí)和操作,終于可以自由操作mysql數(shù)據(jù)庫(kù)了,也可以輕車熟路的使用php或者asp調(diào)用mysql了。最后,筆者要特別感謝開發(fā)了mysql并且免費(fèi)貢獻(xiàn)的天才以及在網(wǎng)上提供mysql使用說明的大蝦們。