PHP應該學什麼,如何學好PHP (注:原文來自傳智播客) 一些共性問題,大體是: 1. 應該怎樣學習PHP,學習的順序是怎樣的? 2. PHP學好後,能夠作什麼事情? 3. 聽得懂課,可是一旦本身獨立寫程序,就沒有思路? 4. 學習PHP須要怎樣的基礎,算法重要嗎? 首先,你們要達成一個共識,就是學習任何一門編程技術都須要咱們付出心血,都要講求按部就班,由淺入深。對 每個知識點要搞透,而後經過案例來加深認識,最後還須要把學習到的各個知識點實際運用到項目中去,才能融會貫通,最後才能到達能自如的駕馭項目的水平, 如今咱們就來看看應該怎樣一步一步的學習PHP這門編程技術,先看看學習PHP的順序圖,此學習順序圖是我推薦的學習內容和學習順序(除了這裏列出的內容,要走向高手之路確定還有更多技術須要學習,我這裏只是對於初學者列出的主幹學習內容,並非所有): PHP應該學什麼,如何學好PHP(一) 對於PHP初學者來講,看到這樣多的內容,內心已經開始打退堂鼓了,可是,萬丈高樓平地起,咱們只要堅持天天學習一部份內容,最後總會把這些技術都精通掌握的。 PHP這門技術相對java和 .net來講,是比較簡單的。PHP最主要的做用就是作站,也就是說PHP技術是用於開發網站的,好比目前世界排名前40的網站,有70%都使用到了PHP技術,好比 facebook、youbute 、新浪、百度、淘寶、搜狐和騰訊這些知名的網站都有很大一部分業務是用PHP來開發的,所以被譽爲web開發首選技術。開發PHP的軟件能夠說是簡單的記事本也能夠是一些集成開發軟件,好比 zendstudio ,這裏我列舉一些常見的PHP開發工具: ① Editplus ② Zend Studio ③ PHP Coder ④ phpedit ⑤ easyecpilse ⑥ dw ⑦ vim windwos下我經常使用的是 editplus 和 zend studio ,在linux下我推薦使用vim來開發更專業。 要學習PHP開發必定要按照正確的順序進行學習(如上圖PHP學習順序圖所示),不少人被一些《xx天精通***》這樣的垃圾書的影響,PHP這門語言相對JAVA要簡單,開發人員不須要學太多便可經過面向過程的方式開發出一個"某某管理系統",所以社會上充斥着大量只會面向過程的開發人員,他們不懂Http協議!不懂JavaScript!不懂PHP工做原理!不懂什麼是真正的面向對象程序設計,這種"不不不"開發人員能找到4000的工做 就已經很是值得慶幸了。企業中最須要的是對"Http協議、Javascript、PHP工做機制、PHP程序調優、LAMP環境調優、OOP"等技術熟悉的人,而這樣的人是很是難招的。你們記住欲速則不達,速成的結果就是之後浪費更多的時間,回想這麼多年你走過的路,有多少次爲了走快點就跳着走,最後又浪費時間返工的事情,按照正確的順序才能更快、更好的掌握PHP。 學習PHP分爲如下幾個階段,每一個階段都有學習的重點和注意事項,下面詳細給你們介紹: 第一階段: PHP前端網頁開發基礎,在這一個階段中分爲如下幾個階段課程 (1)HTML基礎與增強 HTML語言,HTML語言背景知識,HTML全局標籤,HTML格式標籤,HTML文件標籤,HTML超連接標籤,HTML圖像標籤,HTML框架標籤,HTML客戶端圖像地圖,HTML表格標籤,HTML幀標籤,HTML表單標籤,HTML頭元素,HTML分區標籤 (2)XHTML基礎與增強 XHTML與 HTML的差別,XHTML語法,XHTML DTD,XHTML驗證,XHTML模塊,XHTML屬性,XHTML事件,XTHML結構化 (3)HTML5設計與應用 HTML5介紹,HTML5多媒體處理,HTML5畫布,HTML5 Web存儲技術,HTML5表單,HTML5 屬性和事件HTML5的經常使用標籤(好比:applet標籤、article標籤、aside標籤、audio標籤、canvas標籤、datalist標籤、details標籤等) (4)CSS基礎與增強 CSS 簡介,CSS基礎語法,CSS 派生選擇器,id 選擇器,CSS類選擇器,CSS盒子模型 CSS背景 、文本 、字體 、邊框 、外邊距 、內邊距 、列表 、表格CSS 高級: CSS 尺寸、分類 、定位 、僞類 、僞元素 、媒介類型 (5)DIV+CSS設計與應用 使用知名網站的首頁深刻剖析DIV+CSS的WEB標準:盒子模型經典案例-優酷首頁面、仿sohu首頁面佈局、可愛屋網站首頁面。涉及知識點包括: (CSS定位的四種方式、左浮動、右浮動、清除浮動、標準流和非標準流、設置對象的層疊順序、塊元素和行元素的轉換等) (6)Javascript基礎語法: Javascript基本介紹、Javascript的發展史、Javascript運行原理剖析、Javascript特色、 Javascript的標識符、Javascript基本數據類型(數值類型、布爾類型、字符串類型)、 Javascript複合數據類型簡介(數組、對象)、Javascript特殊數據類型(NULL、undefine)、 定義變量、初始化、賦值、數據類型轉換的兩種方式(自動轉換、強制轉換)、Javascript的運算符(算術運算符、關係運算符、邏輯運算符)、Javascript的位運算和移位運算 (7)Javascript三大流程控制 順序控制、分支控制(單分支: if語句、雙分支: if-else語句、多分支 if-else if-else 語句, switch-case-default語句)、循環控制(for語句、while語句、do-while語句)、在ie和firefox如何調式Javascript (8)Javascript函數 函數基本概念、函數的定義、函數的調用方式及調用過程深度剖析、函數使用細節討論、使用Function類建立函數、函數實際運用(打印金字塔、九九乘法表)、函數的遞歸調用、 Javascript經常使用系統函數使用(encodeURI、decodeURI、eval、parseInt、parseFloat、isNaN等) (9)Javascript數組 數組的基本使用、使用for/while遍歷數組、數組實際運用(計算班級平均分)、二維數組的基本使用、使用for遍歷二維數組、對二維數組轉置處理、數組排序介紹、冒泡排序、順序查找和二分查詢法 (10)事件驅動 Javascript的Event-Driven機制、事件源、事件處理程序、事件名稱、事件對象是什麼、 事件類型(鼠標事件、鍵盤事件、HTML事件、其它事件)、Javascript訪問CSS技術、 事件驅動的瀏覽器兼容性處理、經常使用的18個事件(onblur、onchange、onfocus、onkeydown、onmousedown等) 綜合案例(Javascript版計算器) (11)DOM編程 DOM編程介紹(HTML DOM與XML DOM)、DOM編程實例入門、BOM介紹、DOM對象介紹、window對象詳解、history對象詳解、location對象詳解、navigator對象詳解、screen對象詳解、event對象詳解、document對象詳解、body對象詳解、style對象詳解、WEB版坦克大戰遊戲、forms對象(集合)、from對象、images對象(集合) 、img對象、links對象(集合)、link對象、all對象(集合)、table對象詳解、tableRow對象和tableCell對象、基於table對象的用戶管理系統 (12)WEB網站設計與應用->商業級網頁製做 我曾經這樣說過一句話:有些朋友學習技術,像一個大胖子,肚子大,腦殼大,看起來很唬人,可是腿很細,風一吹就倒了。就是說基礎太差了,結果就是越學越迷茫,最後,就放棄了。所以我說」基礎很重要」 , 還有一點我要強調:在視頻教程中我講了不少的案例並佈置了做用,必定要本身親手把代碼熟練的寫出來,記住是親手寫出來,而不是照着個人代碼抄,更不能是看懂了個人代碼就覺得本身掌握了,要知道「看懂了」和「會寫了」之間差着十萬八千里呢! 咱們學習編程是」作中學」,是作的過程當中學會的,而不是會了在作,正是在編寫一行行代碼過程當中,逐漸創建編程思想的,思想→代碼 這個過程是須要敲不少代碼的。 29.jpg 用賣油翁的一句話說:「我亦無他,但手熟爾」,請永遠記住「巧是從熟練中演變出來的」,這就是咱們常說的「熟能生巧」 。 第二階段 PHP核心編程 (1)PHP基本語法增強 Apache-- directory配置段、一個IP和多個域名綁定的兩種方式、HTTP協議入門介紹、Apache邏輯組件介紹、Apache生命週期、PHP運行之時 序圖、PHP數據類型增強、PHP各類運算符增強、PHP三大流程控制增強、位運算(按位與、按位或、按位異或、按位非、位左移、位右移)、二進制(原 碼、反碼、補碼)、PHP版本在線貸款計算器。 這裏,我想說明一下: PHP基礎語法看似簡單,可是也不可大意,有些PHP程序員工做了2年,對PHP運行的原理都不清楚,對Apache的一些重要調優配置也不瞭解,這樣的程序員,在公司是不行的,很可貴到提高。因此就一直是一個編碼工人,薪資也上不去。 好比面試中常常問到: PHP中一個整數的範圍是多少, 小數的能表示的範圍是多少? 再好比如何在Apache中配置一個404錯誤頁面,如何給一個主機配置一個域名,具體怎樣操做?這樣一些基礎的問題都必須在這個階段搞定。推薦你們看 傳智播客php視頻教程 23講-45講 ,有詳細到位的講解。 (2)PHP函數 PHP函數的基本介紹、如何自定義函數、PHP頁面調用函數、require()、require_once()、include()和include_once()的區別、從內存分析PHP函數調用過程、函數使用須要注意的細節、函數值傳遞和引用傳遞的區別。 函數是咱們PHP編程最重要的一個知識點,也是進行模塊化編程的基礎,掌握好函數能夠提升代碼的複用性、可讀性和可維護性。 (3)數組、排序和查找 數組 的基本概念、數組的引用方式、數組引用陷阱、與PHP數組相關的函數(count、is_array、print_r、explode等)遍歷數組的三種 方式、刪除數組元素和數組運算符、數組使用細節總結、內部排序法和外部排序法介紹、冒泡排序和快速排序、選擇排序和插入排序、順序查找和二分查找、二維數 組介紹和使用。 依據 個人經驗,咱們去找工做的時候,必定會一道關於排序和查詢的題,最多見的問題是: 請你寫出冒泡排序法,並使用二分查找來查找一個數。在項目開發中,數組是銜接變量和函數的重要數據類型,在MVC開發中,每每需在控制器中將數組分配給視 圖去顯示,在算法中,數組也是變化最爲靈活的。 (4)面向對象編程 面向 對象編程基本概念、類和對象的關係、如何定義類、成員屬性(變量)、如何建立對象實例及如何訪問對象屬性、對象在內存中存在的形式、棧、堆、全局區、常量 區和代碼區的關係、成員方法(函數)及使用細節、構造方法(函數)、默認構造方法(函數)、this的基本概念和使用、析構方法(函數)、PHP的對象垃 圾回收器、靜態變量(類變量)的概念和使用、靜態方法(類方法)的概念和使用、面向對象編程的三大特徵介紹、面向對象編程-封裝、面向對象編程-繼承、面 向對象編程-多態、訪問控制修飾符(public、protected、private)、方法重載(overload)、方法重寫 (override)、方法重載(overload)和方法重寫(override)的比較、PHP魔術函數(__set __get __construct __destruct __call等 )和魔術常量(__LINE__ , __FILE__ ,__FUNCTION__等 )、抽象類(abstract class)的概念和使用接口(interface)的概念和使用、接口編程和繼承的區別、關鍵字final的使用、常量關鍵字const 的做用和使用注意事項、面向對象編程之強大的反射機制、面向對象編程之動態代理。 面向對象編程已經成爲PHP編程的主流,面向對象編程讓程序變得更增強大和靈活,更利於項目的開發和維護。關於面向對象編程 在 傳智播客 php視頻教程 61講-78講,看看什麼纔是真正的PHP面向對象思想,什麼是真正的OOP。 (5)錯誤處理和異常處理 錯誤處理的基本概念、PHP處理錯誤的三種方式介紹、使用die()進程錯誤處理、自定義錯誤和錯誤觸發器、錯誤日誌、錯誤級別介紹、PHP異常處理的基本介紹、PHP異常處理(try throw catch)、自定義異常、如何設置頂級異常處理器、異常使用的規則。 在編寫php web 應用程序時,錯誤處理是一個重要的部分。若是您的代碼缺乏錯誤檢測編碼,那麼程序看上去很不專業,也爲安全風險敞開了大門 。因此你們須要清楚在PHP編程中如何對錯誤和異常進行有效的處理,從而保證程序的安全和健壯。 (6)預約義超全局數組 預約義超全局數組-基本概念、$_GET、$_POST、$_REQUEST、$_SERVER、$_ENV、$_FILES 、$_COOKIE、$_SESSION、$GLOBALS、$_GET 使用陷阱(sql注入和中文亂碼問題) (7)cookie和session 什麼 是會話、cookie的基本概念、cookie的curd操做、cookie重要的api介紹、cookie運行原理圖解、cookie的實際運用(顯示 用戶上次訪問時間、顯示用戶上次瀏覽過的商品、)、cookie使用的注意事項、session數據存放的位置和形式、session的curd操做、 session運行原理圖解、session實際案例-在線購物車、IE禁用Cookie後的session處理方案、session防止用戶非法入侵、 session配合驗證碼使用、php.ini 中關於cookie和session配置說明(重點,難點)、自定義會話處理器、Session和Cookie的區別。 Cookie(小甜餅)是客戶端技術,服務器把每一個用戶的數據以cookie的形式 寫給用戶各自的瀏覽器。當用戶使用瀏覽器再去訪問服務器中的web資源時,就會帶着各自的數據去。 Session 是服務器端技術,利用這個技術,服務器在運行時能夠爲每個用 戶的瀏覽器建立一個其獨享的session文件,當用戶再去訪問服務器中的其它web資源時,能夠從用戶各自的session 中取出數據爲用戶服務。Session和Cookie是最重要的用戶行爲跟蹤技術,尤爲是電商,sns項目中運用普遍,所以是咱們學習的重點和難點,也是 面試筆試的重點。關於cookie和session你們能夠參考傳智播客 php視頻教程 114-121講 (8)PHP文件編程 文件及文件編程是什麼、文件流的基本概念、文件的操做方式、PHP文件編程函數彙總介紹、最經常使用的13個文件函數、使用文件完成網站計數器、文件上傳下載操做-mini版音樂共享網、無限級文件掃描器。 文件最主要的做用就是保存數據,它既能夠保存一張圖片,也能夠保存視頻 ,聲音...,本章節要求同窗們掌握文件的各類操做和上傳下載,動態建立和刪除目錄,文件和無限級掃描文件等, 掌握好這些知識點對咱們項目開發很是重要。 (9)PHP繪圖技術 php繪圖座標系、繪圖步驟說明、繪圖快速入門、繪圖最經常使用的函數、繪圖技術的實際運用—人口分佈餅狀統計圖、專業的報表開發--JpGraph、JpGraph的安裝和配置、JpGraph實際應用-網民支持狀況統計圖、JpGraph中文亂碼處理。 若是 你使用過財務軟件,那你必定看見過各類對財務數據進行統計和分析 的圖表,多是表格,也多是餅狀圖、柱狀圖、曲線圖..,簡單的說,就是使用圖表動態顯示數據。而這些圖表的顯 示都要使用到PHP的繪圖技術,繪圖技術要求熟練的使用PHP的繪圖函數完成項目的需求。能開發一些統計圖,很是有實用價值。好比: 6.jpg 如何檢驗本身的學習效果,看看下面的一些面試題 , 看看能完成多少? 若是能正確完成80%,說明這個階段學到還不錯。 練習1: 簡述echo(),print(),print_r()的區別? 練習2: 說出PHP的超級全局變量數組,共九種 練習3: 如何在一個php函數中使用具備全局屬性的變量,說出兩種方式 練習4: 三個小題: 4.1.跳水比賽,8個評委打分。運動員的成績是8個成績取掉一個最高分,去掉一個最低分,剩下的6個分數的平均分就是最後得分。使用一維數組實現打分功能。 4.2.請把打最高分的評委和最低分的評委找出來。 4.3.找出最佳評委和最差評委。最佳評委就是打分和最後得分最接近的評委。最差評委就是打分和最後得分相差最大的。 練習5: include和require都能把另一個文件包含到當前文件中,他們有什麼區別?Include和include_once又有什麼區別? 練習6: 寫出一個能建立多級目錄的PHP函數 練習7: 寫出一個函數,能遞歸列出某個目錄下的全部文件夾和文件名. 練習8: 在防止SQL注入的時候,通、會把單引號、雙引號等轉義,須要用到哪一個函數 練習9: 寫出插入排序法和快速排序法代碼 練習10: 二分查找的原理是什麼? 請寫出二分查找函數 練習11: 寫出php的public、protected、private三種訪問控制模式的區別 練習12: 請寫出一個完整的嚴謹的單例模式 練習13: __set 和 __get 魔術函數是作什麼的,在何時被觸發 練習14: 如何防止對象克隆, 對象克隆會複製 static屬性嗎? 練習15: 說說strip_tags的做用和用法? 練習16: 若是須要原樣輸出用戶輸入的內容,在數據入庫前,要用哪一個函數處理? 練習17: 如何控制多個進程去併發刪除,插入和更新數據庫的某張表? 練習18: PHP的安全模式和非安全模式的區別 技術就是一層窗戶紙,捅破了,你感受沒有什麼,不就是這麼簡單嗎?但是若是你不知道,就感受很神祕,所以你瞭解的知識點越多越底層,就可讓你的項目更有技術含量。 反過來,若是咱們知道不少知識點,可是不會把知識點靈活的運用到項目中,就成了< <天龍八部> > 中的段譽,空有無窮的內力,就是不知道如何運用。因此,學會作項目,作規範的項目也是很是重要的 第三階段:Mysql數據庫編程&中級項目階段 (1) MySQL數據庫 從 目前看,任何一個有商業價值的項目或者網站,都離不開MySQL數據庫, 所以系統深刻的掌握MySQL數據庫各類操做很是重要,重點是圍繞ddl/dql/dml/dcl/dtl學習。同時要學會在項目中如何設計出有商業價值 的數據庫模型的技巧,並初步瞭解到MySQL的優化細節。做爲一個合格的PHP程序員,我以爲如下知識點是必需要掌握的: MySQL 數據庫的三層結構、MySQL數據庫的安裝和配置、數據庫命令行的常見操做(啓動、鏈接、操做、關閉等)、SQL語句分類(ddl/dml/dcl /dql/dtl)、建立、查看、刪除、修改、備份和恢復數據庫、如何建立表及MySQL數據類型詳解、修改、刪除表操做、如何對數據表進行CRUD操 做、select語句中使用orderby、合計函數(count/sum/avg/max/min)、select語句中使用group by 和having子句、時間日期經常使用的10個函數、字符串相關11個函數、數學函數10個、流程控制函數3個、其它函數4個、MySQL中文亂碼處理、 PHP操做數據庫實例、MySQL表類型和存儲引擎(BDB/HEAP/ISAM/MERGE/MYISAM/InnoBDB)、如何選擇表的存儲引擎、 事務的基本概念、事務和鎖、事務提交和回滾操做、PHP程序中如何使用事務、事務隔離級別、表的主鍵和外鍵、多表聯合查詢和笛卡爾集、自鏈接、單行子查詢 和多行子查詢、蠕蟲複製建立海量表、合併查詢(union , union all,intersect , minus)、表的內鏈接和外鏈接(左外鏈接、右外鏈接和徹底外鏈接)、維護數據的完整性-約束(not null、unique, primary key,foreign key,和check )、商店售貨系統表設計案例、索引(主鍵索引/惟一索引/全文索引/普通索引/複合索引)、索引優缺點分析、觸發器和存儲過程 (2)數據庫編程(mysql mysqli pdo) mysql 擴展庫簡介、mysql擴展庫操做mysql數據庫程序、mysql_query()執行結果、釋放資源和鏈接、對mysql數據庫進行CRUD、 mysqli擴展庫簡介、第一個mysqli擴展庫程序、$mysqli->query()執行結果、mysqli對數據庫進行CRUD操做、 mysqli擴展庫加強--批量執行sql語句、mysqli擴展庫加強--事務控制、事務的acid、預處理 MySQLi_STMT、PDO的介紹和使用 (3)中級項目 看十遍,不如本身實際動手作一個項目。項目經驗就是從一行行 代碼中積累的,編程的能力也是經過攻克一個個程序bug提升的。中級階段項目是把前面學習過的知識點實 際運用到項目中的最佳時機,也是檢驗本身學習成果的時候。當你經過熬夜點燈,網上查資料把項目最終完成時, 經歷了項目從無到有,從有到完善時,你的編程能力,把控項目的能力在潛移默化中提升了,爲學習下一個階段 (PHP高級編程)打下紮實的基礎。我推薦幾個項目給你們,你們能夠根據本身的實際狀況選一個項目來作. BBS系統: 爲互聯網用戶提供互動和交流功能。 網上在線支付: 爲互聯網客戶提供在線支付功能,可當即應用於項目中 及 時雨供求信息共享網: 及時雨供求信息網主要用來爲用戶提供信息服務,對於生活和工做中的各種 信息都應儘量地所有包括在內,例如,公寓、求職、招聘、培訓、招商、房屋、車輛、出售、求購等信息。項目 發佈後,要實現可以爲用戶生活、工做帶來極大地方便並提升企業知名度、爲企業產品宣傳節約大量成本的目標。 及時雨供求信息網的主要目標是提供強大的搜索功能,準確的信息定位描紅功能,付費信息的管理、免費信息的審 核和刪除功能。 oa 無紙辦公系統: oa無紙辦公系統是針對中小型企業內部自動化辦公管理的要求進行設計的,實現了 文件類信息的強大的管理能力;對員工基礎信息(人事消息)的管理功能等;我的辦公的信息自動化管理功能;發 佈會議信息,並對會議信息進行管理;對系統用戶進行管理;爲了增強數據保密性,爲每一個用戶組設置權限級別。 大 網電子商城: 將電子商城給普通用戶提供以下功能:購買商品、用戶我的資料管理及訂單查詢 等功能。用戶在未進行登陸時,只能夠查看商品的詳細信息及公告信息,登陸後能夠執行購買商品操做、對商品進 行評論及管理我的資料。管理後臺實現: 商品信息、商品類別信息、用戶信息、訂單信息、公告信息及評論信息進 行管理,用戶可經過相應的功能按鈕,進入相應的頁面,對信息進行管理。 項目的源代碼能夠到傳智播客學院http://php.itcast.cn下載 如何檢驗本身的學習效果,看看下面的一些面試題 , 看看能完成多少? 若是能正確完成80%,說明這個階段學的還不錯。 練習1: 簡述什麼是MVC模式 練習2: 項目開發分哪幾個階段,分別是什麼,各自的內容包括什麼 練習3: PHP設計模式常見的有哪五種,分別寫出一個案例說明 練習4: 項目在整合的時候應該如何處理 練習5: 什麼是數據庫的3NF 練習6: 列舉web開發中的安全性問題 練習7: Apache服務器如何配置虛擬主機,如何把本身的項目上線,如何申請域名和主機,讓本身的項目能夠被全部人訪問. 練習8: 如何定時備份Mysql數據庫,請簡述在windows和linux操做系統下的具體實現方案. 練習9:Mysql數據庫設計題: 有某個學生運動會比賽信息的數據庫,保存了以下的表: 運動員sporter(運動員編號sporterid,運動員姓名name,運動員性別sex,所屬系號department) 項目item(項目編號itemid,項目名稱itemname,項目比賽地點location) 成績grade(運動員編號sporterid,項目編號itemid,積分mark) 請用SQL語句完成以下功能: 1. 建表,注意知足以下要求: a) 定義各個表的主碼外碼約束 b) 運動員的姓名和所屬系別不能爲空值。 c) 積分要麼爲空值,要麼爲6,4,2,0, 分別表明第一,二,三名和其餘名次的積分,注意名次能夠有並列名次,後面的排名不往前提高,例如,若是有兩個並列第一,則沒有第二名。 --運動員 --項目 --成績 2. 往表中插入數據: 運動員( 1001, 李明,男,計算機系 1002,張三,男,數學系 1003, 李四,男,計算機系 1004, 王二,男,物理系 1005, 李娜,女,心理系 1006, 孫麗,女,數學系) insert into sporter values (1001,'李明','男','計算機系'); insert into sporter values (1002,'張三','男','數學系'); insert into sporter values (1003,'李四','男','計算機系'); insert into sporter values (1004,'王二','男','物理系'); insert into sporter values (1005,'李娜','女','心理系'); insert into sporter values (1006,'孫麗','女','數學系'); 項目( x001, 男子五公里,一操場 x002,男子標槍,一操場 x003, 男子跳遠,二操場 x004, 女子跳高,二操場 x005, 女子三公里,三操場) insert into item values ('x001','男子五公里','一操場'); insert into item values ('x002','男子標槍','一操場'); insert into item values ('x003','男子跳遠','二操場'); insert into item values ('x004','女子跳高','二操場'); insert into item values ('x005','女子三公里','三操場'); 積分( 1001, x001, 6 1002, x001, 4 1003, x001, 2 1004, x001, 0 1001, x003, 4 1002, x003, 6 1004, x003, 2 1005, x004, 6 1006, x004, 4) insert into grade values (1001,'x001',6); insert into grade values (1002,'x001',4); insert into grade values (1003,'x001',2); insert into grade values (1004,'x001',0); insert into grade values (1001,'x003',4); insert into grade values (1002,'x003',6); insert into grade values (1004,'x003',2); insert into grade values (1005,'x004',6); insert into grade values (1006,'x004',4); 3. 完成以下查詢 a) 求出目前總積分最高的系名,及其積分。 b) 找出在一操場進行比賽的各項目名稱及其冠軍的姓名 c) 找出參加了張三所參加的全部項目的其餘同窗的姓名 4. 經查張三由於使用了違禁藥品,其成績都記0分,請在數據庫中做出相應修改。 5. 經組委會協商,須要刪除女子跳高比賽項目。