PHP與MySQL-入門學習指南-sql課件_第1頁
PHP與MySQL-入門學習指南-sql課件_第2頁
PHP與MySQL-入門學習指南-sql課件_第3頁
PHP與MySQL-入門學習指南-sql課件_第4頁
PHP與MySQL-入門學習指南-sql課件_第5頁
已閱讀5頁,還剩31頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

PHP與MySQL

入門學習指南第22章SQL介紹與建立MySQL資料庫凱文瑞克著22-1什麼是SQL?SQL是一專門用來處理關聯(lián)式資料庫的標準程式語言。它誕生於1970年代後半,促使SQL問世的功臣是位於加州聖荷西的IBM實驗室(IBMLaboratory)。SQL(StructuredQueryLanguage)。結構化查詢語言22-1什麼是SQL?SQL的念法:S-Q-L或see-kwul。SQL的標準化作業(yè),是由ANSI(美國國家標準學會)與ISO(國際標準組織)這2個標準化組織所推動的。它最初的標準化規(guī)格,是在1986年由ANSI所制定,並緊接著在1992年時ANSI與ISO分別制南的新的規(guī)格,這項規(guī)格一般為SQL-92規(guī)格,通稱SQL2。在目前,ANSI與SIO也持續(xù)地在研討新一代的規(guī)格,這項規(guī)格一般稱為SQL-99規(guī)格,通稱SQL3?,F(xiàn)在的SQL規(guī)格便是上述的SQL-92(SQL2)。22-2SQL語言的功能分類22-2-1DDL資料定義語言CREATEALTERDROP22-2SQL語言的功能分類22-2-2DML資料操作語言SELECTINSERTUPDATEDELETE22-4建立資料庫22-4-1CREATE語法:CREATEDATABASE資料庫名稱;例:createdatabasedb_name;CreateDATABASEdb_name;CREATEDATABASEdb_name;22-4建立資料庫22-4-2USEUSEdb_name;22-4-3DROPDROPdb_name;PHP與MySQL

入門學習指南第23章資料型別凱文瑞克著數(shù)值資料

型態(tài)名稱記憶體空間數(shù)值範圍

無號數(shù)(UNSIGNED)TINYINT1bytes-128~127

0-255SMALLINT

2bytes-32768~32767

0-65535MEDIUMINT

3bytes-8388608~8388607

0-16777215INT

INTEGER4bytes-2147483648~2147483647

0-4294967295BIGINT8bytes-922337203685475808~922337203685475807

0-188446744073709550615FLOAT(M,D)4(<24)/8

依據(jù)變數(shù)值而定無FLOAT4bytes無DOUBLE(M,D)8bytes

依據(jù)變數(shù)值而定無DECIMAL(M,D)

MB單位+2

依據(jù)變數(shù)值而定無範例1.欄位定義

FLOAT(4,2),存入1.2345,則實際存入的資料為1.23。2.欄位定義

FLOAT(4,3),存入1.2345,則實際存入的資料為1.234。

3.欄位定義TINYINT,存入1234,則實際存入的資料為255。

4.CREATETABLETEST

(Field1TINYINT);

5.CREATETABLETEST

(Field1FLOAT(4,3));資料欄位設定子自動增量設定(AUTO_INCREMENT)

範例:CREATETABLETEST1

(Field1INTNOTNULLAUTO_INCREMENTPRIMARY

KEY);資料型別:字元或字串

型態(tài)名稱最大長度儲存空間CHAR(X)255bytesxbytesVARCHAR(X)255bytesx+1bytesTINYTEXT255bytesx+1bytesTEXT65535bytesx+2bytesMEDIUMTEXT16,777,215bytesx+3bytesLONGTEXT4,294,967,295bytesx+4bytesTINYBLOB255bytesx+1bytesBLOB65535bytesx+2bytesMEDIUMBLOB16,777,215bytesx+3bytesLONGBLOB4,294,967,295bytesx+4bytesCHAR及VARCHAR型態(tài)範例一:

CREATETABLETEST(FIELD1CHAR(5),FIELD2VARCHAR(10));相當於CREATETABLETEST(FIELD1VARCHAR(5),FIELD2VARCHAR(10));

範例二:

CREATETABLETEST(FIELD1VARCHAR(2));相當於CREATETABLETEST(FIELD1CHAR(2));PHP與MySQL

入門學習指南第24章建立資料表與索引凱文瑞克著範例一CREATETABLETEST(

NAMEVARCHAR(8)BINARY

NOT

NULLDEFAULT"guest",AGESMALLINTUNSIGNEDDEFAULT0);範例二CREATETABLEcustomers(

IDINTNOTNULLPRIMARYKEYAUTO_INCREMENT,NameVARCHAR(20)NOTNULL,AddressVARCHAR(50),E-MailVARCHAR(20),AgeINT,GenderENUM('M','F')DEFAULT'M',Phone_NoVARCHAR(15));刪除資料表及欄位刪除資料表

DROPTABLE

table_name;刪除部分欄位

ALTERTABLEtable_nameDROPfield_name;刪除資料表中的primarykey

ALTERTABLEtable_nameDROPPRIMARYKEY;PHP與MySQL

入門學習指南第25章資料庫增刪作業(yè)凱文瑞克著INSERT語法:

INSERTINTO

[LOW_PRIORITY|DELAYED]

Tbl_Name[(column_name,.......)]VALUES(expression,.......);

例如:INSERTINTOCustomersVALUES(NULL,”Glen”,”brazil”)INSERTINTOCustomers(Customer_ID,Last_Name,First_Name)VALUES(NULL,“Brazil”,”Glen”)UPDATEUPDATE[LOW_PRIORITY]

tbl_nameSETcol_name=expr1,col_name2=expr2,..[whereexpr][limit#]col_name1=expr1指定等號左邊的欄位名稱及右邊的值,只有Where條件子句的欄位才會被修改成UPDATE中的內容。LIMIT#中的#代表整數(shù),代表限制最多只能有#個資料列被更新。例如:UPDATEcustomersSETphone_no='99999999'address='臺南市'whereid=1;DELETEDELETE

[LOW_PRIORITY]

FROMtbl_name

[WHEREexpr]

[LIMIT#];WHERE

是用來限制刪除的範圍,如果不加上WHERE子句則會將整個資料表刪除,因此在下此命令時,一定要特別小心,更謹慎的方式就是使用LIMIT關鍵字,LIMIT後面接著的是數(shù)字,用來限制刪除的資料筆數(shù),利用此指令先試著刪除一兩筆確定無誤後,再下一次DELETE進行完整的刪除動作。PHP與MySQL

入門學習指南第26章運算式與相關函式

凱文瑞克著以比較運算子查詢(一)以比較運算子查詢(二)邏輯運算(一)AND運算子(&&)當我們想要取出工作時段為日班,且工作年資在五年以下的員工資料時,我們便可以使用下列的敘述:SELECT*FROMSALARYWHEREWORKTIME='DAY'ANDEXP<=5;邏輯運算(三)OR運算子(||)當我們想要取出工作時段為日班,或工作年資在五年以下的員工資料時,我們便可以使用下列的敘述:SELECT*FROMSALARYWHEREWORKTIME='DAY'ANDEXP<=5;邏輯運算(四)NOT運算子(!)SELECT*FROMSALARYWHERENOTWORKTIME='NIGHT';SELECT*FROMSALARYWHEREJOBISNOTNULL;邏輯運算(五)LIKE運算子利用=運算子,我們可以取出某一段與特定字串完全相同的資料,但是有的時候我們並不需要和這特定字串完全相同,只要它的其中某一部分和這個特定字串相便可以,碰到這種情況,就可以使用LIKE運算,LIKE可以和萬用字元組合在一起使用。邏輯運算(六)%萬用字元欄位名稱LIKE%<值>

欄位名稱LIKE*<值>PHP與MySQL

入門學習指南第27章資料庫查詢作業(yè)凱文瑞克著Select語法初探(一)SELECT的語法如下:SELECTcolumn1,column2,..FROMtable1,table2..WHEREconditions;SELECT*FROMCustomers;SELECT*FROMCustomersLIMIT10;SELECTFirst_Name,Last_NameFROMCustomersWHEREDOB="January";Select語法初探(二)同一個欄位出現(xiàn)在FROM後一個以上資料表中,那麼就必須指明是要選取哪個資料表的哪個欄位。FROM子句中有使用一個以上的資料表時,所選取的欄位名稱前也必須加上資料表名稱,例如現(xiàn)在有兩個資料表Orders及Customers,都有Customer_ID欄位,當執(zhí)行如下SQL敘述就必須指明清楚:SELECTOrders.Order_IDFROMOrders,CustomersWHERECustomer.Customer_ID=Orders.Customer_ID;

另外一種用法,就是將SQL敘述中的資料表名稱以別名(Alias)代替,可以節(jié)省重複輸入的時間,也使得整個SQL敘述看起來不會那麼複雜,如:

SELECTO.Order_IDFROMOrdersASO,CustomerASCWHEREC.Customer_ID=O.Customer_ID;Select語法初探(三)SELECTconcat(Fir

溫馨提示

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

評論

0/150

提交評論