資源描述:
《MySQL入門指南》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、MySQL入門指南,希望對(duì)大家用處??!一、SQL速成以下是一些重要的SQL快速參考,有關(guān)SQL的語法和在標(biāo)準(zhǔn)SQL上增加的特性,請查詢MySQL手冊。1.創(chuàng)建表表是數(shù)據(jù)庫的最基本元素之一,表與表之間可以相互獨(dú)立,也可以相互關(guān)聯(lián)。創(chuàng)建表的基本語法如下:createtabletable_name(column_namedatatype{identity
2、null
3、notnull},…)其中參數(shù)table_name和column_name必須滿足用戶數(shù)據(jù)庫中的識(shí)別器(identifier)的要求,參數(shù)d
4、atatype是一個(gè)標(biāo)準(zhǔn)的SQL類型或由用戶數(shù)據(jù)庫提供的類型。用戶要使用non-null從句為各字段輸入數(shù)據(jù)。createtable還有一些其他選項(xiàng),如創(chuàng)建臨時(shí)表和使用select子句從其他的表中讀取某些字段組成新表等。還有,在創(chuàng)建表是可用PRIMARYKEY、KEY、INDEX等標(biāo)識(shí)符設(shè)定某些字段為主鍵或索引等。書寫上要注意:在一對(duì)圓括號(hào)里的列出完整的字段清單。字段名間用逗號(hào)隔開。字段名間的逗號(hào)后要加一個(gè)空格。最后一個(gè)字段名后不用逗號(hào)。所有的SQL陳述都以分號(hào)";"結(jié)束。例:mysql>CREA
5、TETABLEtest(blob_colBLOB,index(blob_col(10)));2.創(chuàng)建索引索引用于對(duì)數(shù)據(jù)庫的查詢。一般數(shù)據(jù)庫建有多種索引方案,每種方案都精于某一特定的查詢類。索引可以加速對(duì)數(shù)據(jù)庫的查詢過程。創(chuàng)建索引的基本語法如下:createindexindex_nameontable_name(col_name[(length)],...)例:mysql>CREATEINDEXpart_of_nameONcustomer(name(10));3.改變表結(jié)構(gòu)在數(shù)據(jù)庫的使用過程中,有時(shí)
6、需要改變它的表結(jié)構(gòu),包括改變字段名,甚至改變不同數(shù)據(jù)庫字段間的關(guān)系??梢詫?shí)現(xiàn)上述改變的命令是alter,其基本語法如下:altertabletable_namealter_spec[,alter_spec...]例:mysql>ALTERTABLEt1CHANGEabINTEGER;4.刪除數(shù)據(jù)對(duì)象很多數(shù)據(jù)庫是動(dòng)態(tài)使用的,有時(shí)可能需要?jiǎng)h除某個(gè)表或索引。大多數(shù)數(shù)據(jù)庫對(duì)象可以下面的命令刪除:dropobject_namemysql>DROPTABLEtb1;5.執(zhí)行查詢查詢是使用最多的SQL命令。查詢
7、數(shù)據(jù)庫需要憑借結(jié)構(gòu)、索引和字段類型等因素。大多數(shù)數(shù)據(jù)庫含有一個(gè)優(yōu)化器(optimizer),把用戶的查詢語句轉(zhuǎn)換成可選的形式,以提高查詢效率。值得注意的是MySQL不支持SQL92標(biāo)準(zhǔn)的嵌套的where子句,即它只支持一個(gè)where子句。其基本語法如下:SELECT[STRAIGHT_JOIN][SQL_SMALL_RESULT][SQL_BIG_RESULT][HIGH_PRIORITY][DISTINCT
8、DISTINCTROW
9、ALL]select_expression,...[INTO{O
10、UTFILE
11、DUMPFILE}'file_name'export_options][FROMtable_references[WHEREwhere_definition][GROUPBYcol_name,...][HAVINGwhere_definition][ORDERBY{unsigned_integer
12、col_name
13、formula}[ASC
14、DESC],...][LIMIT[offset,]rows][PROCEDUREprocedure_name]]其中where從句是定義選擇標(biāo)準(zhǔn)
15、的地方,where_definition可以有不同的格式,但都遵循下面的形式:字段名操作表達(dá)式字段名操作字段名在第一種形式下,標(biāo)準(zhǔn)把字段的值與表達(dá)式進(jìn)行比較;在第二種形式下,把兩個(gè)字段的值進(jìn)行比較。根據(jù)所比較的數(shù)據(jù)類型,search_condition中的操作可能選以下幾種:=檢查是否相等!=檢查是否不等>(或>=)檢查左邊值是否大于(或大于等于)右邊值<(或<=)檢查左邊值是否小于(或小于等于)右邊值[not]between檢查左邊值是否在某個(gè)范圍內(nèi)[not]in檢查左邊是否某個(gè)特定集的成員[n
16、ot]like檢查左邊是否為右邊的子串is[not]null檢查左邊是否為空值在這里,可以用通配符_代表任何一個(gè)字符,%代表任何字符串。使用關(guān)鍵字、和可以生成復(fù)雜的詞,它們運(yùn)行檢查時(shí)使用布爾表達(dá)式的多重標(biāo)準(zhǔn)集。例:mysql>selectt1.name,t2.salaryfromemployeeASt1,infoASt2wheret1.name=t2.name;mysql>selectcollege,region,seedfromtournamentOR