亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        高職院校數(shù)據(jù)庫技術(shù)課程案例分析

        2023-08-02 08:29:44黃嶺
        電腦知識與技術(shù) 2023年17期
        關(guān)鍵詞:主鍵視圖備份

        黃嶺

        (常州紡織服裝職業(yè)技術(shù)學(xué)院,江蘇常州 213164)

        0 引言

        數(shù)據(jù)庫技術(shù)課程是高職院校計算機(jī)專業(yè)基礎(chǔ)理論課程之一,雖然是基礎(chǔ)理論課程,但它的重要性也是隨著近年網(wǎng)絡(luò)大數(shù)據(jù)的發(fā)展變得越來越明顯。各行各業(yè)都離不開數(shù)據(jù)庫,隨著現(xiàn)在數(shù)字產(chǎn)業(yè)化和產(chǎn)業(yè)數(shù)字化發(fā)展,逐漸形成了數(shù)字技術(shù)與工業(yè)、農(nóng)業(yè)、服務(wù)業(yè)的深度融合,涌現(xiàn)出如互聯(lián)網(wǎng)業(yè)、信息通信業(yè)、電子信息制造業(yè)、軟件服務(wù)業(yè)等新興行業(yè)[1]。數(shù)據(jù)庫技術(shù)課程所選用的是MySQL 數(shù)據(jù)庫管理系統(tǒng)。MySQL 是一個典型的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),也是目前最流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)之一??梢哉f在Web 應(yīng)用方面,它是最好的關(guān)系數(shù)據(jù)庫管理系統(tǒng)應(yīng)用軟件。由于MySQL使用的是最常用的SQL標(biāo)準(zhǔn)化語言,加之低成本、小巧靈活、開源的特色,中小型網(wǎng)站大多會首選其作為網(wǎng)站數(shù)據(jù)庫,高職院校計算機(jī)專業(yè)選擇其作為數(shù)據(jù)庫技術(shù)課程教學(xué)也更貼近實(shí)際應(yīng)用。

        1 問題案例分析

        數(shù)據(jù)庫技術(shù)課程應(yīng)該根據(jù)高等職業(yè)教育知識遵循“必需,夠用”的原則,還應(yīng)結(jié)合高職學(xué)生的學(xué)習(xí)特點(diǎn),按照認(rèn)知規(guī)律編排內(nèi)容,由淺入深,詳略得當(dāng)。針對學(xué)生在MySQL 安裝、數(shù)據(jù)庫與表的創(chuàng)建、查詢、索引、視圖、觸發(fā)器、權(quán)限、備份恢復(fù)這八個教學(xué)內(nèi)容學(xué)習(xí)實(shí)踐過程中容易出現(xiàn)的各種問題案例做分析匯總,有利于后續(xù)課程教學(xué)的優(yōu)化與設(shè)計[2]。

        1.1 MySQL安裝問題案例

        “工欲善其事,必先利其器”,MySQL 數(shù)據(jù)庫的學(xué)習(xí)過程中,高職學(xué)生掌握對此軟件的安裝就顯得十分必要。當(dāng)然在學(xué)習(xí)過程中,由于各自計算機(jī)軟硬件配置不同,學(xué)生也遇到了許多的問題。其實(shí)對于初學(xué)者,遇到問題并能引導(dǎo)其解決,是可以為他們樹立自信心的[3]。下面列舉MySQL安裝常出現(xiàn)的問題。

        1)C++插件安裝提示。在自主安裝MySQL 軟件過程中部分學(xué)生遇到如圖1所示的提示窗,這說明當(dāng)前計算機(jī)操作系統(tǒng)里缺少了安裝MySQL 產(chǎn)品和服務(wù)所需的插件,圖中顯示缺少“Microsoft Visual C++2013”。由于這是必備插件,單擊“Execute”按鈕,開始安裝需要安裝的組件,進(jìn)入下一步安裝過程。

        圖1 C++插件安裝提示

        2)防火墻影響安裝進(jìn)程。在安裝進(jìn)行到應(yīng)用配置階段,部分學(xué)生的計算機(jī)會出現(xiàn)配置步驟停滯在“Starting Server”,而無法繼續(xù)下去。這個主要是由于殺毒軟件防火墻阻止了程序的運(yùn)行,可暫時關(guān)閉殺毒軟件或安裝過程中允許MySQL安裝進(jìn)程運(yùn)行。

        3)安裝過程中途退出。部分同學(xué)在安裝過程中中斷過安裝,重新運(yùn)行MySQL安裝程序就出現(xiàn)了如圖所示的情況,然后發(fā)現(xiàn)安裝的MySQL版本被升級或安裝不完整。如果想恢復(fù)到以前版本,一般遵循以下步驟完全卸載:

        ①打開計算機(jī)里“控制面板”的“程序與功能”,按照先卸載列表里除“MySQL Installer -Community”之外的其他以“MySQL”開頭的組件,然后再卸載“MySQL Installer -Community”的步驟完成MySQL 應(yīng)用程序的卸載。

        ②然后檢查C:下的Program Files文件夾(64位操作系統(tǒng),32位操作系統(tǒng)則為Program Files(x86)文件夾)里面是否還存在“MySQL”文件夾,如果還存在則刪除“MySQL”文件夾。

        ③然后檢查C:下的ProgramData 文件夾(注意此文件夾默認(rèn)為隱藏屬性,可去隱藏查看)里面是否還存在“MySQL”文件夾,如果還存在則刪除“MySQL”文件夾。

        至此完全卸載了之前安裝的MySQL,如需重新安裝可再次運(yùn)行MySQL安裝程序。

        4)配置環(huán)境變量。MySQL 安裝完畢之后在CMD模式下測試出現(xiàn)如圖2 所示的無法運(yùn)行MySQL 的情況,這時就需要配置環(huán)境變量。由于mysql.exe等命令位于“C:Program FilesMySQLMySQL Server 5.7in”的目錄下,需要把這個目錄路徑作為“PATH”變量的值添加到如圖3 所示的用戶變量中。然后再重新在CMD 模式下運(yùn)行MySQL 測試,必要時可加“net start mysql57”命令,就可進(jìn)入如圖4所示MySQL環(huán)境。

        圖2 MySQL測試錯誤

        圖3 配置MySQL環(huán)境變量

        圖4 CMD模式正常運(yùn)行MySQL

        1.2 數(shù)據(jù)庫與表的創(chuàng)建問題案例

        1)符號及語法錯誤。對于數(shù)據(jù)庫和表的創(chuàng)建,初學(xué)者除了語法錯誤之外,還容易用錯標(biāo)點(diǎn)符號,所有符號都要用英文狀態(tài)下的。經(jīng)常出現(xiàn)如在cmd 模式下用中文狀態(tài)下的“;”,創(chuàng)建表的語句時多參數(shù)之間缺少了分隔符“,”,這些都會引起無法結(jié)束語句或出現(xiàn)錯誤提示的情況。另外還要注意在navicate下調(diào)試語句如果只有一條可以省略最后的“;”,但是在cmd模式下行不通。

        2)主鍵約束問題。為了能既快速又高效地實(shí)現(xiàn)對數(shù)據(jù)庫表中數(shù)據(jù)的更新查找,一般會使用給表中的一個或多個字段添加主鍵約束。當(dāng)然設(shè)置了主鍵的字段要能保證輸入數(shù)據(jù)時不能為空,而且要唯一。另外在數(shù)據(jù)庫中的表之間也可以通過主鍵實(shí)現(xiàn)關(guān)聯(lián)數(shù)據(jù)完整一致。表中只有一個字段設(shè)置為主鍵是最常見的方法,只需在創(chuàng)建表語句該字段的后面,加上“primary key”主鍵標(biāo)識。當(dāng)需要用多個字段來唯一標(biāo)識表中數(shù)據(jù)時,就需要設(shè)置復(fù)合主鍵了。但復(fù)合主鍵不是像圖5 所示的各自字段后面加上“primary key”,應(yīng)該是如圖6所示在所有字段聲明之后設(shè)置。

        圖6 正確的復(fù)合主鍵添加方法

        3)外鍵約束問題。一位同學(xué)在創(chuàng)建表(tb_employees2)時,出現(xiàn)如圖7 所示無法添加外鍵約束的錯誤提示。設(shè)置外鍵的目的主要是實(shí)現(xiàn)表與表之間的數(shù)據(jù)關(guān)聯(lián)與統(tǒng)一,外鍵表(設(shè)置有外鍵的表)中的外鍵字段的取值一定要來源于主鍵表(取值來源表)中主鍵字段,添加外鍵語法如圖8所示。另外需要注意的是先要創(chuàng)建主鍵表,再創(chuàng)建外鍵表。為了方便今后查詢調(diào)用,外鍵約束的取名也不要重復(fù)。經(jīng)過查詢這位同學(xué)主鍵表(tb_office)里并沒有id 這個主鍵字段,應(yīng)改為officeid。

        圖7 無法添加外鍵約束

        4)默認(rèn)值約束問題。一位同學(xué)在創(chuàng)建表時,出現(xiàn)如圖9 所示無效默認(rèn)值的錯誤提示。經(jīng)過如圖10 查詢創(chuàng)建數(shù)據(jù)庫語句發(fā)現(xiàn)前期創(chuàng)建數(shù)據(jù)庫時未設(shè)置字符集,系統(tǒng)默認(rèn)使用了latin1字符集,這就會出現(xiàn)無法識別中文的問題,可使用運(yùn)行語句“alter database 1001HL2 character set utf8;”來解決此問題。

        圖10 查詢創(chuàng)建數(shù)據(jù)庫語句

        1.3 查詢操作問題案例

        1)Select語法結(jié)構(gòu)順序問題。

        一位同學(xué)在查詢過程中遇到如圖11 所示的查詢語句錯誤提示。在MySQL 中從數(shù)據(jù)表中查詢數(shù)據(jù)的基本語句是select語句。select語句的語法如下:

        圖11 查詢語句錯誤

        select 語句主要用到select、from、where、group by、having、order by 這六個關(guān)鍵詞,并且他們的書寫順序也是按這六個詞在select 語句語法出現(xiàn)順序,除了select 和from 外,其他關(guān)鍵詞可選。這位同學(xué)的錯誤就顯而易見了,having和group by的語法順序不對。

        2)Select語法問題

        Select語法錯誤是多數(shù)學(xué)生在這塊練習(xí)遇到的問題。例如圖12所示就是某學(xué)生使用select 語句時,誤把所選擇的列用小括號括了起來,造成查詢報錯。圖13所示是某學(xué)生在select語句中使用sum()函數(shù)時,誤在sum 和()之間加了個空格,造成無法識別函數(shù)而報錯。

        圖12 查詢語法錯誤1

        圖13 查詢語法錯誤2

        1.4 索引問題案例

        索引的創(chuàng)建可以加快表與表之間的連接以及數(shù)據(jù)的檢索速度,如果創(chuàng)建唯一性索引,還可以確保數(shù)據(jù)庫表中字段數(shù)據(jù)保持唯一。其創(chuàng)建方法有兩種,一種是在創(chuàng)建表的同時創(chuàng)建索引,以普通索引為例,代碼如下:

        另一種是在已有表上創(chuàng)建索引,以普通索引為例,代碼如下:

        create index index_itemId on tb_student_item(itemId);

        唯一索引、全文索引、多列索引的創(chuàng)建方法和普通索引類似。這塊內(nèi)容學(xué)生容易出現(xiàn)的問題主要集中在多列索引,不少同學(xué)會誤把每個字段單獨(dú)創(chuàng)建一條索引語句。

        1.5 視圖問題案例

        1)未知列名錯誤。一位學(xué)生在使用視圖做查詢時出現(xiàn)如圖14所示的未知列名的錯誤。通過查詢該視圖的創(chuàng)建語句(如圖15所示)發(fā)現(xiàn),該視圖的字段已用中文別名,那么之后對視圖做操作時引用字段就應(yīng)使用相應(yīng)的中文別名。

        圖14 未知列名的錯誤

        圖15 視圖創(chuàng)建語句

        2)視圖修改錯誤。一位同學(xué)通過刪除命令來對一個視圖的數(shù)據(jù)進(jìn)行刪除時出現(xiàn)如圖16所示的錯誤信息。通過查詢該視圖的創(chuàng)建語句(如圖15所示)發(fā)現(xiàn)此視圖為多表關(guān)聯(lián)視圖,而多表關(guān)聯(lián)視圖是不能通過更改視圖來修改表內(nèi)容的。

        圖16 視圖修改錯誤

        1.6 觸發(fā)器問題案例

        學(xué)生在做一個檢測圖書借閱天數(shù)的觸發(fā)器時,遇到了如圖17所示計算出來的天數(shù)超出數(shù)據(jù)范圍的情況,而測試數(shù)據(jù)‘2022-01-07’到‘2022-03-16’的間隔天數(shù)明顯不大,不應(yīng)超出數(shù)據(jù)范圍。這個問題主要出在借閱字段的日期型數(shù)據(jù)上,兩個日期型數(shù)據(jù)相減并不能得到天數(shù),需要用如下語句進(jìn)行轉(zhuǎn)換才行。@howlong:=(UNIX_TIMESTAMP(new.returnDATE) -UNIX_TIMESTAMP(new.LendDate))/(60*60*24);

        圖17 觸發(fā)器超限錯誤

        1.7 權(quán)限問題案例

        1)用戶權(quán)限問題。部分學(xué)生在使用新創(chuàng)建的用戶賬號對表做更新操作時出現(xiàn)如圖18所示的權(quán)限錯誤提示。經(jīng)檢查是因?yàn)橹敖o創(chuàng)建用戶分配權(quán)限之后,未及時使用“FLUSH PRIVILEGES”語句刷新權(quán)限所致。

        圖18 用戶權(quán)限問題

        2)用戶賬號問題。部分學(xué)生在使用MySQL 語句登錄時出現(xiàn)如圖19所示的用戶錯誤提示。經(jīng)檢查在創(chuàng)建該用戶時取的用戶名是“Test6”,而登錄語句中使用的是“test6”。MySQL 在不同的操作系統(tǒng)下對大小寫的敏感性不同,在Windows下雖然對大部分語句大小寫是不敏感的,但用戶賬號還是區(qū)分大小寫的。語句里使用的用戶名和主機(jī)名一定要和創(chuàng)建時設(shè)置的嚴(yán)格保持一致。

        圖19 用戶賬號問題

        1.8 備份恢復(fù)問題案例

        1)數(shù)據(jù)備份語法。Mysqlpump可以實(shí)現(xiàn)數(shù)據(jù)庫轉(zhuǎn)儲,但它并不是SQL 語句,它是可以在命令行模式下調(diào)用的實(shí)用程序,因此要注意它是在命令行中執(zhí)行的,而不是在MySQL里輸入的。主要使用其來完成三類備份:數(shù)據(jù)表的備份、多個數(shù)據(jù)庫的備份、全部數(shù)據(jù)庫的備份,這三類備份具體語句舉例如圖20所示。

        圖20 三類備份語句

        2)數(shù)據(jù)恢復(fù)語法?;謴?fù)備份的語句書寫有兩種,一種是進(jìn)入MySQL數(shù)據(jù)庫恢復(fù)備份,命令舉例如下:

        mysql>source c:ackup2.sql/*恢復(fù)部分?jǐn)?shù)據(jù)庫*/

        還有一種是在cmd命令行模式下恢復(fù)備份,命令舉例如下:

        C:UsersJASON>mysql -u root -p<c:ackup3.sql/*恢復(fù)全部數(shù)據(jù)庫*/

        這里要注意如果只是恢復(fù)部分?jǐn)?shù)據(jù)表的話,存放該表的數(shù)據(jù)庫要存在,否則會出現(xiàn)如圖21所示的錯誤信息。

        圖21 備份恢復(fù)錯誤

        2 課程實(shí)施建議

        高職學(xué)生對學(xué)習(xí)內(nèi)容存在“挑食”的情況,對感興趣或操作類的內(nèi)容學(xué)習(xí)熱情較高,而對理論性的內(nèi)容普遍提不起精神。即便是感興趣或操作性的內(nèi)容,一旦遇到如前文講到的某些問題案例,很容易停滯不前或放棄。因此對數(shù)據(jù)庫技術(shù)課程內(nèi)容的選取,既要考慮到內(nèi)容精簡,又要考慮知識完整性;既要考慮到加強(qiáng)實(shí)踐教學(xué),又要考慮適時理論穿插[4]。建議對于數(shù)據(jù)庫和表的創(chuàng)建、查詢操作、索引、視圖、權(quán)限這幾部分案例可采用直接指導(dǎo)模式,幫助學(xué)生樹立起自信心。對于MySQL 安裝、觸發(fā)器、備份恢復(fù)這幾部分案例可采用模擬訓(xùn)練模式,提供給他們更多可以發(fā)揮的余地[5]。

        猜你喜歡
        主鍵視圖備份
        “備份”25年:鄧清明圓夢
        基于Go 實(shí)現(xiàn)的分布式主鍵系統(tǒng)研究
        基于外鍵的E-R圖繪制方法研究
        5.3 視圖與投影
        視圖
        Y—20重型運(yùn)輸機(jī)多視圖
        SA2型76毫米車載高炮多視圖
        淺析數(shù)據(jù)的備份策略
        科技視界(2015年6期)2015-08-15 00:54:11
        出版原圖數(shù)據(jù)庫遷移與備份恢復(fù)
        數(shù)據(jù)庫主鍵的設(shè)計方法探討
        国产精品国产三级在线专区| 东北寡妇特级毛片免费| 国产丰满老熟女重口对白| 中文无码日韩欧免费视频| 日韩成人高清不卡av| 一个少妇的淫片免费看| 国产喷水1区2区3区咪咪爱av| 四月婷婷丁香七月色综合高清国产裸聊在线| 久久丁香花综合狼人| 亚洲中文字幕一区二区三区多人| 亚洲av综合色区无码专区桃色| 亚洲欧美日韩人成在线播放 | 成人影院视频在线播放| 国产极品粉嫩福利姬萌白酱| 国产精品麻豆成人av电影艾秋| 久久99精品中文字幕在| 国产麻豆极品高清另类| 无码av天天av天天爽| 久久无码人妻精品一区二区三区| 在线观看亚洲精品国产| 亚洲熟女天堂av一区二区三区| 97久人人做人人妻人人玩精品| 每天更新的免费av片在线观看| 污污污国产免费网站| 亚洲av第一区国产精品| 欧美人牲交| 北条麻妃在线视频观看| 在线看不卡的国产视频| 精品国产一区二区三区三| 狠狠噜天天噜日日噜视频麻豆| 亚洲精品美女久久久久久久| 日韩精品久久伊人中文字幕| 婷婷五月六月激情综合色中文字幕| 欧美老熟妇欲乱高清视频| 美女黄频视频免费国产大全| 一区二区三区日韩精品视频| 久久国产亚洲高清观看| 午夜一级在线| 国产91大片在线观看| 久久婷婷色香五月综合缴缴情| 人人妻人人爽人人做夜欢视频九色 |