MYSQL常用dos命令 全集珍藏_第1頁
MYSQL常用dos命令 全集珍藏_第2頁
MYSQL常用dos命令 全集珍藏_第3頁
MYSQL常用dos命令 全集珍藏_第4頁
MYSQL常用dos命令 全集珍藏_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

本文格式為Word版,下載可任意編輯——MYSQL常用dos命令全集珍藏

1.導(dǎo)出整個(gè)數(shù)據(jù)庫

mysqldump-u用戶名-p--default-character-set=latin1數(shù)據(jù)庫名導(dǎo)出的文件名(數(shù)據(jù)庫默認(rèn)編碼是latin1)mysqldump-uwcnc-psmgp_apps_wcncwcnc.sql

2.導(dǎo)出一個(gè)表

mysqldump-u用戶名-p數(shù)據(jù)庫名表名導(dǎo)出的文件名mysqldump-uwcnc-psmgp_apps_wcncuserswcnc_users.sql

3.導(dǎo)出一個(gè)數(shù)據(jù)庫結(jié)構(gòu)

mysqldump-uwcnc-p-d–add-drop-tablesmgp_apps_wcncd:wcnc_db.sql

-d沒有數(shù)據(jù)–add-drop-table在每個(gè)create語句之前增加一個(gè)droptable

4.導(dǎo)入數(shù)據(jù)庫

A:常用source命令

進(jìn)入mysql數(shù)據(jù)庫控制臺(tái),

如mysql-uroot-p

mysqluse數(shù)據(jù)庫

然后使用source命令,后面參數(shù)為腳本文件(如這里用到的.sql)mysqlsourcewcnc_db.sql

B:使用mysqldump命令mysqldump-uusername-pdbnamefilename.sql

C:使用mysql命令mysql-uusername-p-Ddbnamefilename.sql

一、啟動(dòng)與退出

1、進(jìn)入MySQL:啟動(dòng)MySQLCommandLineClient(MySQL的DOS界面),直接輸入安裝時(shí)的密碼即可。此時(shí)的提醒符是:mysql

2、退出MySQL:quit或exit

二、庫操作

1、、創(chuàng)立數(shù)據(jù)庫

命令:createdatabase數(shù)據(jù)庫名

例如:建立一個(gè)名為xhkdb的數(shù)據(jù)庫mysqlcreatedatabasexhkdb;

2、顯示所有的數(shù)據(jù)庫

命令:showdatabases(注意:最終有個(gè)s)

PROCESS:顯示或殺死屬于其它用戶的服務(wù)線程。

RELOAD:重載訪問控制表,刷新日志等。

SHUTDOWN:關(guān)閉MySQL服務(wù)。

數(shù)據(jù)庫/數(shù)據(jù)表/數(shù)據(jù)列權(quán)限:

Alter:修改已存在的數(shù)據(jù)表(例如增加/刪除列)和索引。

Create:建立新的數(shù)據(jù)庫或數(shù)據(jù)表。

Delete:刪除表的記錄。

Drop:刪除數(shù)據(jù)表或數(shù)據(jù)庫。

INDEX:建立或刪除索引。

Insert:增加表的記錄。

Select:顯示/探尋表的記錄。

Update:修改表中已存在的記錄。

特別的權(quán)限:

ALL:允許做任何事(和root一樣)。

USAGE:只允許登錄--其它什么也不允許做。

MYSQL常用命令

有好多朋友雖然安裝好了mysql但卻不知如何使用它。在這篇文章中我們就從連接MYSQL、修改密碼、增加用戶等方面來學(xué)習(xí)一些MYSQL的常用命令。

有好多朋友雖然安裝好了mysql但卻不知如何使用它。在這篇文章中我們就從連接MYSQL、修改密碼、增加用戶等方面來學(xué)習(xí)一些MYSQL的常用命令。

一、連接MYSQL

格式:mysql-h主機(jī)地址-u用戶名-p用戶密碼

1、例1:連接到本機(jī)上的MYSQL

首先在開啟DOS窗口,然后進(jìn)入目錄mysqlbin,再鍵入命令mysql-uroot-p,回車后提醒你輸密碼,假使剛安裝好MYSQL,超級(jí)用戶root是沒有密碼的,故直接回車即可進(jìn)入到MYSQL中了,MYSQL的提醒符是:mysql

2、例2:連接到遠(yuǎn)程主機(jī)上的MYSQL

假設(shè)遠(yuǎn)程主機(jī)的IP為:10,用戶名為root,密碼為abcd123。則鍵入以下命令:

mysql-h10-uroot-pabcd123

(注:u與root可以不用加空格,其它也一樣)

3、退出MYSQL命令:exit(回車)

二、修改密碼

格式:mysqladmin-u用戶名-p舊密碼password新密碼

1、例1:給root加個(gè)密碼ab12。首先在DOS下進(jìn)入目錄mysqlbin,然后鍵入以下命令

mysqladmin-uroot-passwordab12

注:由于開始時(shí)root沒有密碼,所以-p舊密碼一項(xiàng)就可以省略了。

2、例2:再將root的密碼改為djg345

mysqladmin-uroot-pab12passworddjg345

MYSQL常用命令(下)

一、操作技巧

1、假使你打命令時(shí),回車后發(fā)現(xiàn)忘掉加分號(hào),你無須重打一遍命令,只要打個(gè)分號(hào)回車就可以了。也就是說你可以把一個(gè)完整的命令分成幾行來打,完后用分號(hào)作終止標(biāo)志就OK。

2、你可以使用光標(biāo)上下鍵調(diào)出以前的命令。但以前我用過的一個(gè)MYSQL舊版本不支持。我現(xiàn)在用的是mysql-3.23.27-beta-win。

二、顯示命令

1、顯示數(shù)據(jù)庫列表。

showdatabases;

剛開始時(shí)才兩個(gè)數(shù)據(jù)庫:mysql和test。mysql庫很重要它里面有MYSQL的系統(tǒng)信息,我們改密碼和新增用戶,實(shí)際上就是用這個(gè)庫進(jìn)行操作。

2、顯示庫中的數(shù)據(jù)表:

usemysql;//開啟庫,學(xué)過FOXBASE的一定不會(huì)陌生吧

showtables;

3、顯示數(shù)據(jù)表的結(jié)構(gòu):

describe表名;

4、建庫:

createdatabase庫名;

5、建表:

use庫名;

createtable表名(字段設(shè)定列表);

6、刪庫和刪表:

dropdatabase庫名;

droptable表名;

7、將表中記錄清空:

deletefrom表名;

8、顯示表中的記錄:

select*from表名;

三、一個(gè)建庫和建表以及插入數(shù)據(jù)的實(shí)例

dropdatabaseifexistsschool;//假使存在SCHOOL則刪除

createdatabaseschool;//建立庫SCHOOL

useschool;//開啟庫SCHOOL

createtableteacher//建立表TEACHER

(

idint(3)auto_incrementnotnullprimarykey,

namechar(10)notnull,

addressvarchar(50)default'深圳',

{*|talbe.*|[table.]field1[ASalias1][,[table.]field2[ASalias2][,…]]}

FROMtableexpression[,…][INexternaldatabase]

[WHERE…]

[GROUPBY…]

[HAVING…]

[ORDERBY…][WITHOWNERACCESSOPTION]

說明:

用中括號(hào)([])括起來的部分表示是可選的,用大括號(hào)({})括起來的部分是表示必需從中選擇其中的一個(gè)。

1FROM子句

FROM子句指定了SELECT語句中字段的來源。FROM子句后面是包含一個(gè)或多個(gè)的表達(dá)式(由逗號(hào)分開),其中的表達(dá)式可為單一表名稱、已保存的查詢或由INNERJOIN、LEFTJOIN或RIGHTJOIN得到的復(fù)合結(jié)果。假使表或查詢存儲(chǔ)在外部數(shù)據(jù)庫,在IN子句之后指明其完整路徑。

例:以下SQL語句返回所有有定單的客戶:SELECTOrderID,Customer.customerIDFROMOrdersCustomers

WHEREOrders.CustomerID=Customers.CustomeersID

2ALL、DISTINCT、DISTINCTROW、TOP謂詞

(1)ALL返回滿足SQL語句條件的所有記錄。假使沒有指明這個(gè)謂詞,默認(rèn)為ALL。例:SELECTALLFirstName,LastNameFROMEmployees

(2)DISTINCT假使有多個(gè)記錄的選擇字段的數(shù)據(jù)一致,只返回一個(gè)。

(3)DISTINCTROW假使有重復(fù)的記錄,只返回一個(gè)

(4)TOP顯示查詢頭尾若干記錄。也可返回記錄的百分比,這是要用TOPNPERCENT子句(其中N表示百分比)

例:返回5%定貨額最大的定單SELECTTOP5PERCENT*FROM[OrderDetails]ORDERBYUnitPrice*Quantity*(1-Discount)DESC

3用AS子句為字段取別名

假使想為返回的列取一個(gè)新的標(biāo)題,或者,經(jīng)過對(duì)字段的計(jì)算或總結(jié)之后,產(chǎn)生了一個(gè)新的值,希望把它放到一個(gè)新的列里顯示,則用AS保存。

例:返回FirstName字段取別名為NickNameSELECTFirstNameASNickName,LastName,CityFROMEmployees

例:返回新的一列顯示庫存價(jià)值SELECTProductName,UnitPrice,UnitsInStock,UnitPrice*UnitsInStockASvalueInStockFROMProducts

二.WHERE子句指定查詢條件

1比較運(yùn)算符

比較運(yùn)算符含義

=等于

大于

小于

=大于等于

=小于等于

不等于

!不大于

!不小于

例:返回96年1月的定單SELECTOrderID,CustomerID,OrderDateFROMOrdersWHEREOrderDate#1/1/96#ANDOrderDate#1/30/96#

注意:

McirosoftJETSQL中,日期用#定界。日期也可以用Datevalue()函數(shù)來代替。在比較字符型的數(shù)據(jù)時(shí),要加上單引號(hào),尾空格在比較中被忽略。

例:WHEREOrderDate#96-1-1#

也可以表示為:

WHEREOrderDateDatevalue(1/1/96)

使用NOT表達(dá)式求反。

例:查看96年1月1日以后的定單WHERENotOrderDate=#1/1/96#

2范圍(BETWEEN和NOTBETWEEN)

BETWEEN…AND…運(yùn)算符指定了要探尋的一個(gè)閉區(qū)間。

例:返回96年1月到96年2月的定單。

WHEREOrderDateBetween#1/1/96#And#2/1/96#

3列表(IN,NOTIN)

IN運(yùn)算符用來匹配列表中的任何一個(gè)值。IN子句可以代替用OR子句連接的一連串的條件。

例:要找出住在London、Paris或Berlin的所有客戶SELECTCustomerID,CompanyName,ContactName,CityFROMCustomers

WHERECityIn(London,Paris,Berlin)

4模式匹配(LIKE)

LIKE運(yùn)算符檢驗(yàn)一個(gè)包含字符串?dāng)?shù)據(jù)的字段值是否匹配一指定模式。

LIKE運(yùn)算符里使用的通配符

通配符含義

?任何一個(gè)單一的字符

*任意長度的字符

#0~9之間的單一數(shù)字

[字符列表]在字符列表里的任一值

[!字符列表]不在字符列表里的任一值

-指定字符范圍,兩邊的值分別為其上下限

例:返回郵政編碼在(171)555-0000到(171)555-9999之間的客戶SELECTCustomerID,CompanyName,City,PhoneFROMCustomers

WHEREPhoneLike(171)555-####

LIKE運(yùn)算符的一些樣式及含義

樣式含義不符合

LIKEA*A后跟任意長度的字符Bc,c255

LIKE5[*]5*5555

LIKE5?55與5之間有任意一個(gè)字符55,5wer5

LIKE5##55235,50055kd5,5346

LIKE[a-z]a-z間的任意一個(gè)字符5,%

LIKE[!0-9]非0-9間的任意一個(gè)字符0,1

LIKE[[]1,*

三.用ORDERBY子句排序結(jié)果

ORDER子句按一個(gè)或多個(gè)(最多16個(gè))字段排序查詢結(jié)果,可以是升序(ASC)也可以是降序(DESC),缺省是升序。ORDER子句尋常放在SQL語句的最終。

ORDER子句中定義了多個(gè)字段,則依照字段的先后順序排序。

例:SELECTProductName,UnitPrice,UnitInStockFROMProductsORDERBYUnitInStockDESC,UnitPriceDESC,ProductName

ORDERBY子句中可以用字段在選擇列表中的位置號(hào)代替字段名,可以混合字段名和位置號(hào)。

例:下面的語句產(chǎn)生與上列一致的效果。SELECTProductName,UnitPrice,UnitInStockFROMProductsORDERBY1DESC,2DESC,3

四.運(yùn)用連接關(guān)系實(shí)現(xiàn)多表查詢

例:找出同一個(gè)城市中供應(yīng)商和客戶的名字SELECTpanyName,FROMCustomers,SuppliersWHERECustomers.City=Suppliers.City

例:找出產(chǎn)品庫存量大于同一種產(chǎn)品的定單的數(shù)量的產(chǎn)品和定單SELECTProductName,OrderID,UnitInStock,QuantityFROMProducts,[OrderDeails]WHEREPductID=[OrderDetails].ProductIDANDUnitsInStockQuantity

另一種方法是用MicrosofJETSQL獨(dú)有的JNNERJOIN

語法:FROMtable1INNERJOINtable2ONtable1.field1comparisiontable2.field2

其中comparision就是前面WHERE子句用到的比較運(yùn)算符。SELECTFirstName,lastName,OrderID,CustomerID,OrderDateFROMEmployeesINNERJOINOrdersONEmployees.EmployeeID=Orders.EmployeeID

注意:

INNERJOIN不能連接MemoOLEObjectSingleDouble數(shù)據(jù)類型字段。

在一個(gè)JOIN語句中連接多個(gè)ON子句

語法:SELECTfieldsFROMtable1INNERJOINtable2

ONtable1.field1compoprtable2.field1AND

ONtable1.field2compoprtable2.field2ORONtable1.field3compoprtable2.field3

也可以SELECTfieldsFROMtable1INNERJOIN

(table2INNERJOIN[(]table3[INNERJOER][(]tablex[INNERJOIN]ONtable1.field1compoprtable2.field1ONtable1.field2compoprtable2.field2ONtable1.field3compoprtable2.field3

外部連接返回更多記錄,在結(jié)果中保存不匹配的記錄,不管存不存在滿足條件的記錄都要返回另一側(cè)的所有記錄。FROMtable[LEFT|RIGHT]JOINtable2ONtable1.field1comparisiontable.field2

用左連接來建立外部連接,在表達(dá)式的左邊的表會(huì)顯示其所有的數(shù)據(jù)

例:不管有沒有定貨量,返回所有商品SELECTProductName,OrderIDFROMProductsLEFTJOINOrdersONProducts.PrductsID=Orders.ProductID

右連接與左連接的區(qū)別在于:不管左側(cè)表里有沒有匹配的記錄,它都從左側(cè)表中返回所有記錄。

例:假使想了解客戶的信息,并統(tǒng)計(jì)各個(gè)地區(qū)的客戶分布,這時(shí)可以用一個(gè)右連接,即使某個(gè)地區(qū)沒有客戶,也要返回客戶信息。

空值不會(huì)相互匹配,可以通過外連接才能測試被連接的某個(gè)表的字段是否有空值。SELECT*FROMtalbe1LEFTJOINtable2ONtable1.a=table2.c

1連接查詢中使用Iif函數(shù)實(shí)現(xiàn)以0值顯示空值

Iif表達(dá)式:Iif(IsNull(Amount,0,Amout)

例:無論定貨大于或小于¥50,都要返回一個(gè)標(biāo)志。Iif([Amount]50,?Bigorder?,?Smallorder?)

五.分組和總結(jié)查詢結(jié)果

在SQL的語法里,GROUPBY和HAVING子句用來對(duì)數(shù)據(jù)進(jìn)行匯總。GROUPBY子句指明白依照哪幾個(gè)字段來分組,而將記錄分組后,用HAVING子句過濾這些記錄。GROUPBY子句的語法

SELECTfidldlistFROMtableWHEREcriteria[GROUPBYgroupfieldlist[HAVINGgroupcriteria]]

注:MicrosoftJet數(shù)據(jù)庫Jet不能對(duì)備注或OLE對(duì)象字段分組。

GROUPBY字段中的Null值以備分組但是不能被省略。

在任何SQL合計(jì)函數(shù)中不計(jì)算Null值。

GROUPBY子句后最多可以帶有十個(gè)字段,排序優(yōu)先級(jí)按從左到右的順序排列。

例:在WA地區(qū)的雇員表中按頭銜分組后,找出具有同等頭銜的雇員數(shù)目大于1人的所有頭銜。SELECTTitle,Count(Title)asTotalFROMEmployees

WHERERegion=WAGROUPBYTitleHAVINGCount(Title)1

JETSQL中的聚積函數(shù)

聚集函數(shù)意義

SUM()求和

AVG()平均值

COUNT()表達(dá)式中記錄的數(shù)目

COUNT(*)計(jì)算記錄的數(shù)目

MAX最大值

MIN最小值

VAR方差

STDEV標(biāo)準(zhǔn)誤差

FIRST第一個(gè)值

LAST最終一個(gè)值

六.用Parameters聲明創(chuàng)立參數(shù)查詢

Parameters聲明的語法:

PARAMETERSnamedatatype[,namedatatype[,…]]

其中name是參數(shù)的標(biāo)志符,可以通過標(biāo)志符引用參數(shù).

Datatype說明參數(shù)的數(shù)據(jù)類型.

使用時(shí)要把PARAMETERS聲明置于任何其他語句之前.

例:

PARAMETERS[Lowprice]Currency,[Beginningdate]datatime

SELECTOrderID,OrderAmountFROMOrdersWHEREOrderAMount[lowprice]ANDOrderDate=[Beginningdate]

七.功能查詢

所謂功能查詢,實(shí)際上是一種操作查詢,它可以對(duì)數(shù)據(jù)庫進(jìn)行快速高效的操作.它以選擇查詢?yōu)槟康?挑揀出符合條件的數(shù)據(jù),再對(duì)數(shù)據(jù)進(jìn)行批處理.功能查詢包括更新查詢,刪除查詢,添加查詢,和生成表查詢.

1更新查詢

UPDATE子句可以同時(shí)更改一個(gè)或多個(gè)表中的數(shù)據(jù).它也可以同時(shí)更改多個(gè)字段的值.更新查詢語法:

UPDATE表名

SET新值

WHERE準(zhǔn)則

例:英國客戶的定貨量增加5%,貨運(yùn)量增加3%UPDATEOEDERSSETOrderAmount=OrderAmount*1.1Freight=Freight*1.03

WHEREShipCountry=UK

2刪除查詢

DELETE子句可以使用戶刪除大量的過時(shí)的或冗于的數(shù)據(jù).

注:刪除查詢的對(duì)象是整個(gè)記錄.

DELETE子句的語法:

DELETE[表名.*]

FROM來源表

WHERE準(zhǔn)則

例:要?jiǎng)h除所有94年前的定單DELETE*FROMOrdersWHEREOrderData#94-1-1#

3追加查詢

INSERT子句可以將一個(gè)或一組記錄追加到一個(gè)或多個(gè)表的尾部.

INTO子句指定接受新記錄的表

valueS關(guān)鍵字指定新記錄所包含的數(shù)據(jù)值.

INSERT子句的語法:

INSETRINTO目的表或查詢(字段1,字段2,…)

valueS(數(shù)值1,數(shù)值2,…)

例:增加一個(gè)客戶INSERTINTOEmployees(FirstName,LastName,title)

valueS(Harry,Washington,Trainee)

4生成表查詢

可以一次性地把所有滿足條件的記錄拷貝到一張新表中.尋常制作記錄的備份或副本或作為報(bào)表的基礎(chǔ).

SELECTINTO子句用來創(chuàng)立生成表查詢語法:

SELECT字段1,字段2,…

INTO新表[IN外部數(shù)據(jù)庫]

FROM來源數(shù)據(jù)庫

WHERE準(zhǔn)則

例:為定單制作一個(gè)存檔備份SELECT*INTOOrdersArchiveFROMOrders

八.聯(lián)合查詢

UNION運(yùn)算可以把多個(gè)查詢的結(jié)果合并到一個(gè)結(jié)果集里顯示.

UNION運(yùn)算的一般語法:

[表]查詢1UNION[ALL]查詢2UNION…

例:返回巴西所有供給商和客戶的名字和城市SELECTCompanyName,CityFROMSuppliers

WHERECountry=BrazilUNIONSELECTCompanyName,CityFROMCustomers

WHERECountry=Brazil

注:

缺省的狀況下,UNION子句不返回重復(fù)的記錄.假使想顯示所有記錄,可以加ALL選項(xiàng)UNION運(yùn)算要求查詢具有一致數(shù)目的字段.但是,字段數(shù)據(jù)類型不必一致.

每一個(gè)查詢參數(shù)中可以使用GROUPBY子句或HAVING子句進(jìn)行分組.要想以指定的順序來顯示返回的數(shù)據(jù),可以在最終一個(gè)查詢的尾部使用OREERBY子句.

九.交織查詢

交織查詢可以對(duì)數(shù)據(jù)進(jìn)行總和,平均,計(jì)數(shù)或其他總和計(jì)算法的計(jì)算,這些數(shù)據(jù)通過兩種信息進(jìn)行分組:一個(gè)顯示在表的左部,另一個(gè)顯示在表的頂部.

MicrosoftJetSQL用TRANSFROM語句創(chuàng)立交織表查詢語法:TRANSFORMaggfunction

SELECT語句

GROUPBY子句

PIVOTpivotfield[IN(value1[,value2[,…]])]

Aggfounction指SQL聚積函數(shù),

SELECT語句選擇作為標(biāo)題的的字段,

GROUPBY分組

說明:

Pivotfield在查詢結(jié)果集中創(chuàng)立列標(biāo)題時(shí)用的字段或表達(dá)式,用可選的IN子句限制它的取值.

value代表創(chuàng)立列標(biāo)題的固定值.

例:顯示在1996年里每一季度每一位員工所接的定單的數(shù)目:TRANSFORM

溫馨提示

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

評(píng)論

0/150

提交評(píng)論