拿軟乙的素材來當PHP和MySQL的教材
上周都在準備軟乙術科,把所有提目都做過一次後,平均都在兩小時左完可以完工,考試時間是四小時,所以看起來是很充裕,所以我也沒打算再去練其它的dataset了,等考前一周再來複習一下應該就夠了。
不過在練習軟乙的過程中,對於素材倒是有新的想法,之前在備課時,要準備資料庫相關的內容其實不太容易,但是軟乙剛好提供了這樣的內容,雖然在資料庫的設計上,這些素材不是很完美,但拿來做基礎的講解和認識也夠了;雖然有這個想法,但在執行時發現一些額外的狀況,首先是明年的軟乙不再提供dbase的檔案,而是改用xml的格式,這應該是為了通用性,但問題是access匯出的xml格式並不是每種資料庫都能吃,openoffice雖然可以匯入,但有可會遇到編碼的問題,我想直接用phpMyAdmin來匯入也發生格式不合的問題,然後access本身也不提供其它資料庫格式的匯出,必須要自己想辦法;結論是,雖然命題委員想讓題目的設計往自由軟體方向發展,但因為題目的設計者應該是沒試過其他的軟體,所以很明顯的看得出來整個軟乙的檢定還是在為了微軟Office而設計。
最後我的解決方式是先匯出成.txt的文字檔,然後再以.csv的格式透過phpMyAdmin匯入到MySQL,然後還得在MySQL中針對每一張資料表的欄位屬性做設定;這邊提另一個有趣的地方是,明年提供的.XML格式的資料庫,使用Access匯入後,預設的欄位屬性都是簡短文字,即便是數字都會當成文字,這對於目前採用EXCEL來解題的是沒有影響,但對於像我這樣使用SQL語法在的,就可能會遇到問題,有些數字欄位得先設定好屬性後才能得出正確的結果,所以我預計明年之後,網路上的解題應該會改成全EXCEL的解法,不再使用Access了,儘管題目有些地方有強調要從資料庫獲取資料,但最後檢查只看印出的報表,根本不會去檢查有沒有使用資料庫來解題,軟乙檢定搞成這樣的畸型,真的是建議廢除算了。
我的計劃是提供這份資料庫素材給學生,然後把軟乙的一些項目抽出來當成課堂上講解及回家作業之用,比如資料的獲取方式,就可以用來講解聯表查詢的方式,判斷條件,排序,字串處理等等;而報表的製作就可以用來做為使用PHP產生網頁的講解,如何把資料庫取得的結果,在網頁上以報表的型式呈現出來;最後則是軟乙沒提到的表單功能,這部份我會拿來做為後台開發的講解,讓學生可以去製作各個資料表的維護後台,對資料表進行增刪查改的動作,這樣一套教材做下來,也算是夠紮實了。
