實驗四-PHP+MySQL的Web開發(fā)及維護(hù)_第1頁
實驗四-PHP+MySQL的Web開發(fā)及維護(hù)_第2頁
實驗四-PHP+MySQL的Web開發(fā)及維護(hù)_第3頁
實驗四-PHP+MySQL的Web開發(fā)及維護(hù)_第4頁
實驗四-PHP+MySQL的Web開發(fā)及維護(hù)_第5頁
已閱讀5頁,還剩88頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

信息系統(tǒng)維護(hù)與評價實驗四PHP+MySQL的Web開發(fā)及維護(hù)PHP基礎(chǔ)1.服務(wù)器端語言與客戶端語言2.PHP基本語法3.表單域的發(fā)送與接收1.服務(wù)器端語言與客戶端語言A.服務(wù)器端語言:即源代碼。PHP是一種服務(wù)器端語言,只會在服務(wù)端執(zhí)行,然后以HTML方式傳輸給客戶端(瀏覽器)。因此瀏覽網(wǎng)頁的用戶是看不到PHP代碼的文本文件:phpinfo.phpPhpinfo.php<?phpphpinfo()?>1.服務(wù)器端語言與客戶端語言執(zhí)行phpinfo.php文件的結(jié)果1.服務(wù)器端語言與客戶端語言在瀏覽器端查看源文件的結(jié)果(HTML文件)1.服務(wù)器端語言與客戶端語言B.客戶端語言:HTML是一種客戶端語言,由瀏覽器解讀并顯示出來2.PHP基本語法起始與結(jié)束標(biāo)記

PHP是一種HTML內(nèi)嵌式的服務(wù)端語言,它可以與HTML寫在一起,PHP代碼部份是由服務(wù)端的PHP引擎解讀成HTML后再傳輸給瀏覽器的。(1)<?PHPCODE?>(2)<?phpPHPCODE?>(3)<scirptlanguage=“php”>PHPCODE</script>(4)<%PHPCODE%>[必需在php.ini中設(shè)置asp_tags=On]2.PHP基本語法變量命名與注釋在代碼中以$作為識別PHP變量標(biāo)記。(1)大小寫視為不同,如$a與$A是不同的。(2)名稱開頭只用英文字母或下劃線:“$_Asd”(3)變量名稱中不能有空格:如$ab,是錯的(4)不能使用保留字(5)變量不用聲明,可直接賦值,如:$abc=50,$cde=“world”.(6)注釋://這是單行注釋;/*這是多行注釋放*/2.PHP基本語法輸出信息echo與格式化字符串springf<?php $a="Hi"; $A="吃飽沒?"; echo$a ."<br>"; echo$A ."<br>"; echo"$a$A"."<br>"; echo‘$a$A’.“<br>”;/*單引號內(nèi)的字符原封不動輸出*/?>輸出結(jié)果:Hi

吃飽沒?

Hi吃飽沒?

$a$A

Echo.php2.PHP基本語法輸出信息echo與格式化字符串springfSprintf()用來格式化輸出的字符串:Sprintf(format,arg1,arg2,arg++)arg1,arg2,++參數(shù)將被插入到主體字符串中的百分號(%)之后。這個函數(shù)是“一步一步[step-by-step]”執(zhí)行的。在第一個“%”之后插入arg1,在第二個“%”之后插入arg2,依次類推。sprintf.php文件:<?php$str="Hello";$number=123;Printf(“%s哈哈%d”,$str,$number);echo“<br>”;$txt=sprintf("%sworld.Daynumber%u",$str,$number);echo$txt;?>輸出結(jié)果:Hello哈哈123Helloworld.Daynumber123sprintf.php2.PHP基本語法springf參數(shù)表%b-Binarynumber

%b–返回二進(jìn)制數(shù)%c-ThecharacteraccordingtotheASCIIvalue

%c–返回與ASCII值相對應(yīng)的字符%d-Signeddecimalnumber

%d–帶有正負(fù)號的十進(jìn)制數(shù)%e-Scientificnotation(e.g.1.2e+2)

%e–科學(xué)計數(shù)符號(如:1.2e+2)%u-Unsigneddecimalnumber

%u–不帶正負(fù)號的十進(jìn)制數(shù)%f-Floating-pointnumber(localsettingsaware)

%f–

浮點數(shù)據(jù)(本地設(shè)置)%F-Floating-pointnumber(notlocalsettingsaware)

%F–浮點數(shù)據(jù)(非本地設(shè)置)%o-Octalnumber

%o–十進(jìn)制數(shù)%s-String

%s–字符串%x-Hexadecimalnumber(lowercaseletters)

%x–十六進(jìn)制數(shù)(小寫字母)%X-Hexadecimalnumber(uppercaseletters)

%X–十六進(jìn)制數(shù)(大寫字母)2.PHP基本語法流程控制(1)If語句

If(condtion){item;}<?php $a=22; if($a>=18) { echo"大于18周歲,已成年"; }?>If.php比較運(yùn)算符:$a==$b$a!=$b$a<>$b$a<$b$a>$b$a<=$b$a>=$b2.PHP基本語法流程控制(2)If…else語句

<?php $a=16; if($a>=18) echo"已成年"; else { echo"小于18歲,未成年"; } ?>If_else.php2.PHP基本語法流程控制(3)If…elseif…else語句

<?php $a='黃燈'; if($a=='綠燈') echo'可以過'; elseif($a=='黃燈') echo'趕快過'; elseif($a=='紅燈') echo'不能過'; else echo'小心過';?>If_elseif_else.php2.PHP基本語法流程控制(4)switch語句

<?php $price=3000; switch($price) { case($price>1500): echo"購物滿1500打九折"; break; case($price>2500): echo"購物滿2500打八折"; break; default: echo"沒打折"; break; }?>Switch.php2.PHP基本語法流程控制(5)循環(huán)語句

<?php $i=2; echo"機(jī)械算法<br>"; echo"$i*2=".$i*2."<br>"; echo"$i*3=".$i*3."<br>"; echo"$i*4=".$i*4."<br>"; echo"$i*5=".$i*5."<br>"; echo"循環(huán)<br>";

for($i=2;$i<=5;$i++) { echo"2*$i=".2*$i."<br>"; }?>

For(初始值;條件;操作){

語句;}For.php2.PHP基本語法流程控制(5)循環(huán)語句

while(運(yùn)行條件){

語句;}<?php $a=6; while($a<10) { echo'$a<10'; $a++; }?><?php $a=6; do { echo“$a<10”; $a++; } while($a>10)?>Do{

語句;}While(運(yùn)行條件)3.表單域的發(fā)送與接收<formid="form1"name="form1"method="post"action="form_post.php">

<p>姓名

<inputname="Name"type="text"id="Name"/></p><p><inputname="Sex"type="radio"value="man"/>男

<inputname="Sex"type="radio"value="woman"/>女

</p><p><inputtype="submit"name="Submit2"value="送出"/></p></form>Form.php3.表單域的發(fā)送與接收POST方式:

<?php echo$_POST['Name'].','. $_POST['Sex'];?><br>GET方式:<?php echo$_GET['Name'].','. $_GET['Sex'];?><br>REQUEST方式:<?php echo$_REQUEST['Name'].','. $_REQUEST['Sex'];?>POST方式:小明,man

GET方式:,

REQUEST方式:小明,manForm_post.php3.表單域的發(fā)送與接收POST方式GET方式MySQL基礎(chǔ)1.數(shù)據(jù)庫基本概念2.MySQL簡介3.SQL語言4.MySQL基本操作數(shù)據(jù)庫基本概念定義:按照數(shù)據(jù)結(jié)構(gòu)來組織、存儲和管理數(shù)據(jù)的倉庫優(yōu)點:數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和儲存可為各種用戶共享冗余度較小,節(jié)省存儲空間易擴(kuò)展,編寫有關(guān)數(shù)據(jù)庫應(yīng)用程序1.數(shù)據(jù)庫基本概念數(shù)據(jù)庫管理系統(tǒng)(DatabaseManagementSystem)是一種操縱和管理數(shù)據(jù)庫的大型軟件,是用于建立、使用和維護(hù)數(shù)據(jù)庫,簡稱DBMS。關(guān)系型數(shù)據(jù)庫管理系統(tǒng)稱為RDBMS,R指RelationDBMS的作用它對數(shù)據(jù)庫進(jìn)行統(tǒng)一的管理和控制,以保證數(shù)據(jù)庫的安全性和完整性。1.數(shù)據(jù)庫基本概念目前主流的DBMSOracle應(yīng)用廣泛、功能強(qiáng)大,分布式數(shù)據(jù)庫系統(tǒng)“關(guān)系-對象”型數(shù)據(jù)庫MySQL快捷、可靠開源、免費(fèi)、與PHP組成經(jīng)典的LAMP組合SQLServer針對不同用戶群體的五個特殊的版本易用性好DB2應(yīng)用于大型應(yīng)用系統(tǒng),具有較好的可伸縮性2.MySQL簡介MySQL是一個小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),被廣泛地應(yīng)用在Internet上,是世界上最受歡迎的開放源代碼數(shù)據(jù)庫?;咎卣鳎盒阅芸旖?、優(yōu)化SQL語言容易使用多線程和可靠性多用戶支持可移植性和開放源代碼遵循國際標(biāo)準(zhǔn)和國際化支持為多種編程語言提供API2.MySQL簡介MySQL5的一些關(guān)鍵特征:子查詢視圖存儲過程觸發(fā)器事務(wù)處理熱備份二進(jìn)制Bit類型2.MySQL簡介MySQL管理工具和用戶操作界面mysql、mysqladmin和mysqldumpmysql命令:mysql-hhost_name-uuser_name–ppasswordh:當(dāng)連接MySQL服務(wù)器不在同臺主機(jī)時,填寫主機(jī)名或IP地址u:登錄MySQL的用戶名p:登錄MySQL的密碼注意:密碼如果寫在命令行中時候一定不能有空格。常用命令:選定默認(rèn)數(shù)據(jù)庫:usedbname;顯示所有數(shù)據(jù)庫:showdatabases;顯示默認(rèn)數(shù)據(jù)庫中所有表:showtables;放棄正在輸入的命令:\c顯示命令清單:\h退出mysql程序:\q查看MySQL服務(wù)器狀態(tài)信息:\s2.MySQL簡介2.MySQL簡介mysqladmin命令完成許多系統(tǒng)管理任務(wù),如創(chuàng)建或刪除一個數(shù)據(jù)庫、修改密碼等 格式:mysqladmin[option]admincommand創(chuàng)建數(shù)據(jù)庫 mysqladmin–uroot–pcreatenewdb刪除數(shù)據(jù)庫 mysqladmin–uroot–pdropnewdb更改密碼 mysqladmin–uroot–ppassword“newpasswd2.MySQL簡介mysqldump命令用于為數(shù)據(jù)庫創(chuàng)建備份 格式:mysqldump[option]dbname>bak.sql mysqldump–uroot–ptmpdb>backuptmp.sql備份出來的是一個文本文件,默認(rèn)為utf-8字符集,如果想使用另外一種字符集,必須使用

--default-character-set=gbk選項來設(shè)置2.MySQL簡介phpmyAdmin是一個用PHP編寫的,可以通過互聯(lián)網(wǎng)控制和操作MySQL的工具。本機(jī)安裝Wampserver后,可以通過http://localhost/phpmyadmin訪問phpmyAdmin2.MySQL簡介MySQL數(shù)據(jù)類型數(shù)據(jù)類型種類:數(shù)值型:整型和浮點型字符串:由單引號或者雙引號括起來的字符或者數(shù)字。日期和時間值:存儲如日期、時間的值NULL值:代表空2.MySQL簡介數(shù)值列的列屬性AUTO_INCREMENT:自增UNSIGNED:不可為負(fù)值NULL和NOTNULL:默認(rèn)空或不能為空DEFAULT:默認(rèn)值2.MySQL簡介MySQL運(yùn)算符算數(shù)運(yùn)算符比較運(yùn)算符邏輯運(yùn)算符位運(yùn)算符MySQL通配符“%”(百分號)代表任意長度(長度可以為0)的字符串“_“(下橫線)代表任意單個字符3.SQL語言StructuredQuevyLanguage結(jié)構(gòu)化查詢語言,是專為數(shù)據(jù)庫而建立的操作命令集,是一種功能齊全的數(shù)據(jù)庫語言。功能強(qiáng)大、簡單易學(xué)、使用方便,已經(jīng)成為了數(shù)據(jù)庫操作的基礎(chǔ),并且現(xiàn)在幾乎所有的數(shù)據(jù)庫均支持SQL。特點:綜合統(tǒng)一,高度非過程化,面向集合的操作方式,以同一種語法結(jié)構(gòu)提供兩種使用方法,語言簡潔,易學(xué)易用。3.SQL語言SQL語言的組成部分:數(shù)據(jù)定義語言(DDL):用于定義和管理數(shù)據(jù)對象,包括數(shù)據(jù)庫、數(shù)據(jù)表等。例如:CREATE、DROP、ALTER等語句數(shù)據(jù)操作語言(DML):用于操作數(shù)據(jù)庫對象中所包含的數(shù)據(jù)。例如:INSERT(插入)、UPDATE(修改)、DELETE(刪除)語句。數(shù)據(jù)查詢語言(DQL):用于查詢數(shù)據(jù)庫對象中所包含的數(shù)據(jù),能夠進(jìn)行單表查詢、連接查詢、嵌套查詢,以及集合查詢等各種復(fù)雜程度不同的數(shù)據(jù)庫查詢,并將數(shù)據(jù)返回到客戶機(jī)中顯示。例如:SELECT語句。數(shù)據(jù)控制語言(DCL):是用來管理數(shù)據(jù)庫的語言,包含管理權(quán)限及數(shù)據(jù)更改。例如:GRANT、REVOKE、COMMIT、ROLLBACK等語句。SQL語言包括三種主要程序設(shè)計語言類別的語句:數(shù)據(jù)定義語言(DDL),數(shù)據(jù)操作語言(DML)及數(shù)據(jù)控制語言(DCL)。3.SQL語言使用SQL語言的幾點說明在mysql中輸入一個SQL語句時,一定要在末尾加上一個";"號,否則mysql認(rèn)為語句沒有輸完。->符號的含義:意為本語句沒有輸完,等待繼續(xù)輸入??梢杂肻c來取消輸入mysql中的關(guān)鍵字和函數(shù)名不區(qū)分大小寫,但是如果要是表名或者是數(shù)據(jù)庫的名則區(qū)分大小寫(分系統(tǒng),windows不區(qū)分)在查詢中輸入一個函數(shù),函數(shù)名和后面的括號是不能有空格的.可以用mysql<file_name.sql輸入查詢,.sql文件代表mysql文件3.SQL語言SQL語言包含四個部分:數(shù)據(jù)定義語言(DDL):用于定義和管理數(shù)據(jù)對象,包括數(shù)據(jù)庫、數(shù)據(jù)表等。例如:CREATE、DROP、ALTER等語句數(shù)據(jù)操作語言(DML):用于操作數(shù)據(jù)庫對象中所包含的數(shù)據(jù)。例如:INSERT(插入)、UPDATE(修改)、DELETE(刪除)語句。數(shù)據(jù)查詢語言(DQL):用于查詢數(shù)據(jù)庫對象中所包含的數(shù)據(jù),能夠進(jìn)行單表查詢、連接查詢、嵌套查詢,以及集合查詢等各種復(fù)雜程度不同的數(shù)據(jù)庫查詢,并將數(shù)據(jù)返回到客戶機(jī)中顯示。例如:SELECT語句。數(shù)據(jù)控制語言(DCL):是用來管理數(shù)據(jù)庫的語言,包含管理權(quán)限及數(shù)據(jù)更改。例如:GRANT、REVOKE、COMMIT、ROLLBACK等語句。SQL語言包括三種主要程序設(shè)計語言類別的語句:數(shù)據(jù)定義語言(DDL),數(shù)據(jù)操作語言(DML)及數(shù)據(jù)控制語言(DCL)。3.SQL語言使用SQL語言的幾點說明在mysql中輸入一個SQL語句時,一定要在末尾加上一個";"號,否則mysql認(rèn)為語句沒有輸完。->符號的含義:意為本語句沒有輸完,等待繼續(xù)輸入??梢杂肻c來取消輸入mysql中的關(guān)鍵字和函數(shù)名不區(qū)分大小寫,但是如果要是表名或者是數(shù)據(jù)庫的名則區(qū)分大小寫(分系統(tǒng),windows不區(qū)分)在查詢中輸入一個函數(shù),函數(shù)名和后面的括號是不能有空格的.可以用mysql<file_name.sql輸入查詢,.sql文件代表mysql文件4.MySQL基本操作1、建表(數(shù)據(jù)庫)2、顯示表(數(shù)據(jù)庫)3、使用數(shù)據(jù)庫4、顯示表結(jié)構(gòu)5、刪除表(數(shù)據(jù)庫)6、更新表結(jié)構(gòu)7、插入記錄8、更改記錄9、刪除記錄10、查詢記錄11、使用集函數(shù)12、復(fù)制表建立表(數(shù)據(jù)庫)操作建立數(shù)據(jù)庫操作: 語法:createdatabase數(shù)據(jù)庫名敘述:創(chuàng)建一個具有指定名稱的數(shù)據(jù)庫。如果要創(chuàng)建的數(shù)據(jù)庫已經(jīng)存在,或者沒有創(chuàng)建它的適當(dāng)權(quán)限,則此語句失敗。實例:建立一個student庫。mysql>createdatabasestudent;建立表(數(shù)據(jù)庫)建立表操作:語法:createtable表名(列名1列類型[<列的完整性約束>],列名2列類型[<列的完整性約束>],......);敘述:在當(dāng)前數(shù)據(jù)庫下新創(chuàng)建一個數(shù)據(jù)表。列類型:表示該列的數(shù)據(jù)類型。實例:建立一個表book,其由兩列組成,第一列屬性為非空,并做為主鍵,并自增createtablebook(bidintprimarykeyauto_increment, bnamevarchar(16));建立表(數(shù)據(jù)庫)常見完整性約束:PRIMARYKEY 主碼約束(主鍵)UNIQUE 唯一性約束NOTNULL 非空值約束 AUTO_INCREMENT 用于整數(shù)列默認(rèn)自增1DEFAULTdefault_value 默認(rèn)值約束PRIMARYKEY與UNIQUE指定必須包含唯一值的索引。INDEX和KEY意義相同,它們都指定可以包含重復(fù)值的索引。建立表(數(shù)據(jù)庫)例:要建立一個學(xué)生情況表(student)CREATETABLEstudent: //創(chuàng)建基本表student(st_classCHAR(8),//定義列st_class班級,數(shù)據(jù)類型為8位定長字符串st_noCHAR(10)NOTNULL,//定義列st_no學(xué)號,類型為10位定長字符串,非空st_nameCHAR(8)NOTNULL,//定義列st_name姓名,類型為8位定長字符串,非空st_sexCHAR(2),//定義列st_sex性別,類型為2位定長字符串st_ageSMALLINT,//定義列st_age年齡,類型為短整型PRIMARYKEY(st_no)) ; //定義st_no學(xué)號為主鍵。顯示表(數(shù)據(jù)庫)顯示數(shù)據(jù)庫操作語法: showdatabases;敘述:列出服務(wù)器主機(jī)上可用的數(shù)據(jù)庫。顯示表操作語法: showtables;敘述:顯示數(shù)據(jù)庫中表的清單。使用數(shù)據(jù)庫語法: use數(shù)據(jù)庫名;敘述:選擇此數(shù)據(jù)庫成為當(dāng)前數(shù)據(jù)庫(即不包含明確的數(shù)據(jù)庫名的表引用中的缺省數(shù)據(jù)庫)。如果數(shù)據(jù)庫不存在或沒有訪問它的權(quán)限,則USE語句將失敗。顯示表結(jié)構(gòu)語法: describe表名;或desc 表名;敘述:用于顯示表的創(chuàng)建結(jié)構(gòu)。刪除表(數(shù)據(jù)庫)刪除表操作語法:droptable[ifexists]tab_name[,tab_name]...敘述:從數(shù)據(jù)庫中刪除制定的表。如果給出ifexists子句,則刪除不存在的表不會出錯。刪除數(shù)據(jù)庫操作語法:dropdatabase[ifexists]db_name敘述:刪除給定的數(shù)據(jù)庫。在刪除一個數(shù)據(jù)庫后,它就永遠(yuǎn)沒有了,因此要特別小心。如果要刪除的數(shù)據(jù)庫不存在,則此語句將會失?。ǔo出了ifexists)。更改表結(jié)構(gòu)語法: altertable表名action;說明:action可以是如下語句:add列名<建表語句>(first|after列名)可以為表添加一列,如果沒指定first或者after,則在列尾添加一列,否則在指定列添加新列addprimarykey(列名)為表添加一個主鍵,如果主鍵已經(jīng)存在,則出現(xiàn)錯誤alter列名setdefault默認(rèn)值可以更改指定列默認(rèn)值更改表結(jié)構(gòu)change(modify)列名<建表語句>(first|after)可以更改列類型,如果原列的名字和新列的名字相同,則change和Modify的作用相同drop列名可以刪除一列dropprimarykey可以刪除主鍵dropindexindex_name;可以刪除索引renameas新表名可以將表名更改更改表結(jié)構(gòu)舉例1:向people表中添加字段address2,類型為varchar,最大長度為100altertablepeopleaddaddress2varchar(100);舉例2: 將people表中的name列默認(rèn)值改為100:altertablepeoplealternamesetdefault100;舉例3:向Student表增加“入學(xué)時間”列,其數(shù)據(jù)類型為日期型。 altertablestudentaddscomedate;論基本表中原來是否已有數(shù)據(jù),新增加的列一律為空值。舉例4:將年齡的數(shù)據(jù)類型改為半字長整數(shù)。 altertablestudentmodifysagesmallint;注:修改原有的列定義有可能會破壞已有數(shù)據(jù)插入記錄語法: insertinto表名(字段名,字段名,...)values(字段值,字段值,...);敘述:如果表名后面沒寫字段名,則默認(rèn)是向所有的字段添加值字符串值應(yīng)該用引號括起來舉例1:向people表中添加一條記錄:insertintopeople(name,age)values(“zhangsan”,20);舉例2: 向people表中添加三條記錄:insertintopeoplevalues(“zhangsan”,20), (“l(fā)isi”,10), (“wangwu”,40);更改記錄語法:update表名set列名=數(shù)據(jù)值where子句;敘述:where子句是判斷語句,用來設(shè)定條件,限制只更新匹配的行。舉例:將people表中的所有名稱"JoHn"改為"Tom":updatepeoplesetname="Tom"wherename="JoHn";刪除記錄語法: deletefrom表名where子句;敘述:此語句刪除表中的行,如果不帶where子句,則刪除整個表中的記錄,但是表不被刪除。舉例:刪除people表中的所有名字與record表中name相同的記錄:deletefrompeoplewhere=;說明:表和字段的引用方式有兩種:絕對引用和相對引用絕對引用:數(shù)據(jù)庫名.表名(.字段名)相對引用:表名.(字段名)查詢記錄語法:select字段名,字段名,...(*)from表名where子句groupby子句having子句orderby子句limit子句desc(asc)groupby子句是對匹配where子句的查詢結(jié)果進(jìn)行分組having子句是對分組后的結(jié)果進(jìn)行條件限制orderby子句是對查詢結(jié)果結(jié)果進(jìn)行排序,后面跟desc或asc。 limit子句是對查詢的顯示結(jié)果限制數(shù)目desc是將最終結(jié)果進(jìn)行降序排列,asc是將最終結(jié)果進(jìn)行升列。查詢記錄舉例1: 查詢?nèi)w學(xué)生的學(xué)號與姓名。selectsno,snamefromstudent;舉例2: 查詢?nèi)w學(xué)生的詳細(xì)記錄。selectsno,sname,ssex,sage,sdeptfromstudent;或select*fromstudent;舉例3: 查全體學(xué)生的姓名及其出生年份。selectsname,2004-sagefromstudent;

舉例4: 查詢?nèi)w學(xué)生的姓名、出生年份和所有系,要求用小寫字母表示所有系名。selectsname,'yearofbirth:',2004-sage,islower(sdept)fromstudent舉例5:查詢選修了課程的學(xué)生學(xué)號(去掉重復(fù)的記錄)selectdistinctsnofromsc;說明:使用distinct可以將查詢結(jié)果中的重復(fù)記錄只顯示一次.查詢記錄使用列別名:selectlong_field_name_are_annoyingasmyfieldfromthizlinux使用表別名:selectmyfieldfromlong_table_name_are_my_tableasthizlinux查詢所有年齡在20歲以下的學(xué)生姓名及其年齡。selectsname,sagefromstudentwheresage<20;或selectsname,sagefromstudentwherenotsage>=20;查詢記錄在WHERE子句中使用謂詞: BETWEENAND: 在兩數(shù)之間 NOTBETWEENAND:不在兩數(shù)之間 IN<值表>:是否在特定的集合里(枚舉) NOTIN<值表>:與上面相反 LIKE :是否匹配于一個模式 ISNULL(為空的)或ISNOTNULL(不為空的REGEXP:檢查一個值是否匹配一個常規(guī)表達(dá)式。查詢記錄查詢年齡在20~23歲(包括20歲和23歲)之間的學(xué)生的姓名、系別和年齡。selectsname,sdept,sagefromstudentwheresagebetween20and23;查詢年齡不在20~23歲之間的學(xué)生姓名、系別和年齡。Selectsname,sdept,sagefromstudentwheresagenotbetween20and23;查詢信息系(is)、數(shù)學(xué)系(ma)和計算機(jī)科學(xué)系(cs)學(xué)生的姓名和性別。selectsname,ssexfromstudentwheresdeptin('is','ma','cs');查詢記錄查詢學(xué)號為95001的學(xué)生的詳細(xì)情況。select*fromstudentwheresnolike'95001';等價于:select*fromstudentwheresno='95001';查詢所有姓劉學(xué)生的姓名、學(xué)號和性別。selectsname,ano,ssexformstudentwheresnamelike'劉%';某些學(xué)生選修課程后沒有參加考試,所以有選課記錄,但沒有考試成績。查詢?nèi)鄙俪煽兊膶W(xué)生的學(xué)號和相應(yīng)的課程號。Selectsno,cnofromscwheregradeisnull;查所有有成績的學(xué)生學(xué)號和課程號。 selectsno,cnofromscwheregradeisnotnull;查詢計算機(jī)系年齡在20歲以下的學(xué)生姓名。selectsnamefromstudentwheresdept='cs'andsage<20;查詢記錄查詢信息系(IS)、數(shù)學(xué)系(MA)和計算機(jī)科學(xué)系(CS)學(xué)生的姓名和性別。selectsname,ssexfromstudentwheresdeptin('IS','MA','CS');可改寫為:Selectsname,ssexfromstudentwheresdept='IS'orsdept='MA'orsdept='CS';查詢選修了3號課程的學(xué)生的學(xué)號及其成績,查詢結(jié)果按分?jǐn)?shù)降序排列。selectsno,gradefromscwherecno='3'orberbygradedesc;查詢?nèi)w學(xué)生情況,查詢結(jié)果按所在系的系號升序排列,同一系中的學(xué)生按年齡降序排列。select*fromstudentorderbysdept,sagedesc;查詢記錄連接查詢:同時涉及多個表的查詢稱為連接查詢用來連接兩個表的條件稱為連接條件舉例:selectname,idfrompeople,recordwhere=外連接外連接與普通連接的區(qū)別普通連接操作只輸出滿足連接條件的元組外連接操作以指定表為連接主體,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論