下載本文檔
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、MYSQL 的常用命令和增刪改查語(yǔ)句和數(shù)據(jù)類(lèi)型 1.連接命令:mysql -h主機(jī)地址-u用戶(hù)名-p用戶(hù)密碼2.創(chuàng)建數(shù)據(jù)庫(kù):create database 庫(kù)名3.顯示所有數(shù)據(jù)庫(kù):show databases; 4.打開(kāi)數(shù)據(jù)庫(kù):use 庫(kù)名5.當(dāng)前選擇的庫(kù)狀態(tài):SELECT DATABASE 6.倉(cāng) U 建數(shù)據(jù)表:CREATE TABLE表名(字段名字段類(lèi)型(字段要求字段參7. 顯示數(shù)據(jù)表字段:describe 表名;8. 當(dāng)前庫(kù)數(shù)據(jù)表結(jié)構(gòu):show tables;9. 更改表格10. ALTER TABLE 表名ADD COLUMN 字段名DATATYPE11. 說(shuō)明:增加一個(gè)欄位(沒(méi)有刪除
2、某個(gè)欄位的語(yǔ)法。12. ALTER TABLE 表名ADD PRIMARY KEY (字段名13. 說(shuō)明:更改表得的定義把某個(gè)欄位設(shè)為主鍵。14. ALTER TABLE 表名DROP PRIMARY KEY (字段名15. 說(shuō)明:把主鍵的定義刪除。16. 顯示當(dāng)前表字段:show colu mns from table name;17. 刪庫(kù):drop database 庫(kù)名;18. 刪表:drop table 表名;19. 數(shù)據(jù)操作20. 添加:INSERT INTO 表名VALUES(T,順序排列的數(shù)據(jù);21. 查詢(xún):SELECT * FROM 表名WHERE (條件;22. 建立索引:
3、CREATE INDEX 索引文件名ON 表名(字段名;23. 刪除:DELETE FROM 表名WHERE (條件;24. 修改:UPDATE 表名SET 修改內(nèi)容如 name = Mary WHERE 條件 ;25. 導(dǎo)入外部數(shù)據(jù)文本:26. 1.執(zhí)行外部的 sql 腳本27. 當(dāng)前數(shù)據(jù)庫(kù)上執(zhí)行:mysql input.sql28. 指定數(shù)據(jù)庫(kù)上執(zhí)行:mysql 表名school.bbb32. 提示:常用 MySQL 命令以;結(jié)束,有少量特殊命令不能加;結(jié)束,如備 份數(shù)據(jù)庫(kù)33. 一.增刪改查操作34. 1.增:35. insert into 表名 values測(cè)試;36. 注:如上語(yǔ)句,
4、表結(jié)構(gòu)中有自動(dòng)增長(zhǎng)的列,也必須為其指定一個(gè)值,通常為 037. i nsert into 表名(id, name values(0 尹 當(dāng)-同上38. 2.刪數(shù)據(jù):39. delete from 表名;40. delete from 表名 where id =1;41. 刪除結(jié)構(gòu):42. 刪數(shù)據(jù)庫(kù):drop database 數(shù)據(jù)庫(kù)名;43. 刪除表:drop table 表名;44. 刪除表中的列:alter table 表名 drop column 列名;45. 3.改:46. 修改所有:updata 表名 set 列名二二新的值,非數(shù)字加單引號(hào);47. 帶條件的修改:updata 表名
5、set 列名=新的值,非數(shù)字加單引號(hào)where id =6;48. 4.查:49. 查詢(xún)所有的數(shù)據(jù):select *from 表名;50. 帶條件的查詢(xún):51. select *from 表名 where 列名=條件值;52. Select * from 表名 where 列名 not like (like ) 字符值53. 分頁(yè)查詢(xún):select *from 表名 limit 每頁(yè)數(shù)量 offset 偏移量;54. 二.操作命令55. =56. 1.查看數(shù)據(jù)庫(kù)信息:show databases;57. 2.查看表信息:show tables;58. 3.查看表的結(jié)構(gòu):desc 表名59. 4
6、.新建數(shù)據(jù)庫(kù):create databases 據(jù)庫(kù)名;60. 5.操作指定數(shù)據(jù)庫(kù):use 數(shù)據(jù)庫(kù)名;61.6.新建數(shù)據(jù)表(先 use 操作庫(kù);62. create table 表名(規(guī)范為 tbl_表名63. (64. id int auto_i ncreme nt primary key,( auto_i ncreme n 為自動(dòng)增長(zhǎng)65. n ame varchar(20 primary key66. ENGINE =InnoDB DEFAULT CHARSET =gbk / 支持事務(wù)和設(shè)置表的編碼67. 6.2 添加主外鍵:68. alter table 外表名 add constra
7、int FK/稱(chēng) foreig n key(夕卜歹 U references 主表名(主列81.69. 如現(xiàn)有兩表 主表 tbl_order 子表 tbl_orderdetail 現(xiàn)子表 tbl_orderdetail 的 oid列引用了主表 tbl_order 的 oid 列70. 則命令如下:71. alter table tbl_orderdetail add con stra int FK_oid foreig n key(oid refere nces tbl_order(oid72. 7.導(dǎo)出表,備份到一個(gè)文件中,如.txt,.doc73. cmd 命令窗口: mysqldump
8、-u 用戶(hù)名-p 需要備份的數(shù)據(jù)庫(kù)名 備份的文件的保存路徑和文件名74. 注:如指定的文件不存在,mysql 會(huì)自動(dòng)添加一個(gè)文件,此命令不能加分號(hào)結(jié)尾(文件沒(méi)有備份建數(shù)據(jù)庫(kù)操作)75. 8.導(dǎo)入數(shù)據(jù)庫(kù)備份文件:76. (1 在 mysql 命令窗口77. (2 新建一個(gè)要導(dǎo)入的數(shù)據(jù)庫(kù)(因?yàn)閭浞葜袥](méi)有備份建數(shù)據(jù)庫(kù)操作78. (3.use 當(dāng)前庫(kù)名79. (4.source 備份的文件的保存路徑和文件名(此命令不能加分號(hào)結(jié)尾80. 三:系統(tǒng)操作82. 1.打開(kāi)服務(wù):n et start mysql(mysql 為配置時(shí),可自定名稱(chēng)83. 2.關(guān)閉服務(wù):n et stop mysql84. 3.從
9、cmd 模式進(jìn)入 mysql85. (1.mysql -u 用戶(hù)名-p 回車(chē)輸入正確密碼 進(jìn)入歡迎86. (2.mysql -h IP(本機(jī) localhost -u 用戶(hù)名-p 回車(chē)輸入正確密碼 進(jìn)入歡迎87. 3.退出:exit/quit;88. 4.修改用戶(hù)密碼:mysqladmin -u 用戶(hù)名-p password 新密碼89. 5.處理中文亂碼:90. (1 在 D:MySQL MySQL Server 5.0data 的操作數(shù)據(jù)為文件中查看是否為以 下:91. default-character-set =gbk92. default-collatio n =gbk_ch in
10、ese_ci93.93. (2.查看安裝文件默認(rèn)編碼:D:MySQLMySQL Server 5.0my default-character-set =gbk94. =95. 啟動(dòng):net start mySql;96. 進(jìn)入: mysql -u root -p/mysql -h localhost -u root -p databaseName;97. 列出數(shù)據(jù)庫(kù):show databases;98. 選擇數(shù)據(jù)庫(kù):use databaseName;99.列出表格:show tables100. 顯示表格列的屬性:show colu mns from tableName;101. 建立數(shù)據(jù)庫(kù):
11、source fileName.txt;102. 匹配字符:可以用通配符_代表任何一個(gè)字符,代表任何字符串;103. 增加一個(gè)字段:alter table tabelName add colu mn fieldName dateType; 105.增加多個(gè)字段:alter table tabelName add colu mn fieldName1 dateType,add colu mns fieldName2dateType;106. 多行命令輸入:注意不能將單詞斷開(kāi);當(dāng)插入或更改數(shù)據(jù)時(shí),不能將字段的 字符串展開(kāi)到多行里,否則硬回車(chē)將被儲(chǔ)存到數(shù)據(jù)中;107. 增加一個(gè)管理員帳戶(hù):grant
12、 all on *.* to userlocalhost identified by password;108. 每條語(yǔ)句輸入完畢后要在末尾填加分號(hào);,或者填加也可以;109. 查詢(xún)時(shí)間:select no w(;110. 查詢(xún)當(dāng)前用戶(hù):select user(;111.查詢(xún)數(shù)據(jù)庫(kù)版本:select versio n(;112.查詢(xún)當(dāng)前使用的數(shù)據(jù)庫(kù):select database113.113. 1、刪除 student_course 數(shù)據(jù)庫(kù)中的 students 數(shù)據(jù)表:114. rm -f stude nt_course/stude nts.*116.115. 2、備份數(shù)據(jù)庫(kù):(將數(shù)據(jù)庫(kù)
13、test 備份116. mysqldump -u root -p testc:test.txt117. 備份表格:(備份 test 數(shù)據(jù)庫(kù)下的 mytable 表格118. mysqldump -u root -p test mytablec:test.txt119. 將備份數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫(kù):(導(dǎo)回 test 數(shù)據(jù)庫(kù)120. mysql -u root -p test123.121. 3、創(chuàng)建臨時(shí)表:(建立臨時(shí)表 zengchao122. create temporary table zen gchao (n ame varchar(10;126.123. 4、創(chuàng)建表是先判斷表是否存在124.
14、 create table if no texists stude nts( . ;129.125. 5、從已經(jīng)有的表中復(fù)制表的結(jié)構(gòu)126. create table table2 select * from tablel where 11;132.133.6、復(fù)制表134. create table table2 select * from table1;135.135. 7、對(duì)表重新命名136. alter table table1 re name as table2;138.137. 8、修改列的類(lèi)型138. alter table table1 modify id int unsign
15、ed;/修改列 id 的類(lèi)型為 int unsigned139. alter table table1 change id sid int unsigned;修改列 id 的名字為 sid,而且把屬 性修改為 int unsigned142.140. 9、創(chuàng)建索引141. alter table table1 add in dex indd (id;142. create in dex in d_id on table1 (id;143. create un ique in dex indd on table1 (id;/建 立唯一性索引147.144. 10、刪除索引145. drop in
16、 dex idx_id on tablel;146. alter table tablel drop in dex in d_id;151.147. 11、聯(lián)合字符或者多個(gè)列(將列 id 與:和列 name 和=連接148. select concat(id,:,name,= from students;154.149. 12、limit(選出 10 到 20 條 150. select * from students order by id limit 9,10;157.151. 13、MySQL 不支持的功能152. 事務(wù),視圖,外鍵和引用完整性,存儲(chǔ)過(guò)程和觸發(fā)器160.161.162.
17、14、MySQL 會(huì)使用索引的操作符號(hào)163. , =,=,between,in 不帶或者_(dá)開(kāi)頭的 like164.164. 15、使用索引的缺點(diǎn)165. 1 減慢增刪改數(shù)據(jù)的速度;166. 2)占用磁盤(pán)空間;167. 3)增加查詢(xún)優(yōu)化器的負(fù)擔(dān);168. 當(dāng)查詢(xún)優(yōu)化器生成執(zhí)行計(jì)劃時(shí),會(huì)考慮索引,太多的索引會(huì)給查詢(xún)優(yōu)化器 增加工作量,導(dǎo)致無(wú)法選擇最優(yōu)的查詢(xún)方案;170.169. 16、分析索引效率170. 方法:在一般的 SQL 語(yǔ)句前加上 explain;171. 分析結(jié)果的含義:172. 1)table :表名;173. 2)type :連接的類(lèi)型,(ALL/Range/Ref。其中 ref
18、 是最理想的;174. 3)possible_keys 查詢(xún)可以利用的索引名;175. 4)key :實(shí)際使用的索引;176. 5)key_len:索引中被使用部分的長(zhǎng)度(字節(jié));177. 6)ref :顯示列名字或者const(不明白什么意思);178. 7) rows :顯示 MySQL 認(rèn)為在找到正確結(jié)果之前必須掃描的行數(shù);181.8)extra : MySQL 的建議;182.183. 17、使用較短的定長(zhǎng)列184. 1)盡可能使用較短的數(shù)據(jù)類(lèi)型;185. 2)盡可能使用定長(zhǎng)數(shù)據(jù)類(lèi)型;186. a)用 char 代替 varchar,固定長(zhǎng)度的數(shù)據(jù)處理比變長(zhǎng)的快些;187. b )對(duì)于
19、頻繁修改的表, 磁盤(pán)容易形成碎片, 從而影響數(shù)據(jù)庫(kù)的整體性 能; 188.c )萬(wàn)一出現(xiàn)數(shù)據(jù)表崩潰,使用固定長(zhǎng)度數(shù)據(jù)行的表更容易重新構(gòu)造。使 用固定長(zhǎng)度的數(shù)據(jù)行,每個(gè)記錄的開(kāi)始位置都是固定記錄長(zhǎng)度的倍數(shù),可以很容易被檢 測(cè)到,但是使用可變長(zhǎng)度的數(shù)據(jù)行就不一定了;189. d ) 對(duì)于 MylSAM 類(lèi)型的數(shù)據(jù)表, 雖然轉(zhuǎn)換成固定長(zhǎng)度的數(shù)據(jù)列可以提 高性能,但是占據(jù)的空間也大;190.190. 18、使用 not null 和 enum191. 盡量將列定義為 not null,這樣可使數(shù)據(jù)的出來(lái)更快,所需的空間更少, 而且在查詢(xún)時(shí),MySQL 不需要檢查是否存在特例,即 null 值,從而優(yōu)化
20、查詢(xún);192. 如果一列只含有有限數(shù)目的特定值,如性別,是否有效或者入學(xué)年份等, 在這種情況下應(yīng)該考慮將其轉(zhuǎn)換為 enum 列的值,MySQL 處理的更快,因?yàn)樗械?en um值在系統(tǒng)內(nèi)都是以標(biāo)識(shí)數(shù)值來(lái)表示的;194.193. 19、使用 optimize table194. 對(duì)于經(jīng)常修改的表, 容易產(chǎn)生碎片, 使在查詢(xún)數(shù)據(jù)庫(kù)時(shí)必須讀取更多的磁 盤(pán)塊,降低查詢(xún)性能。具有可變長(zhǎng)的表都存在磁盤(pán)碎片問(wèn)題,這個(gè)問(wèn)題對(duì)blob 數(shù)據(jù)類(lèi)型更為突出,因?yàn)槠涑叽缱兓浅4???梢酝ㄟ^(guò)使用optimize table 來(lái)整理碎片,保證數(shù)據(jù)庫(kù)性能不下降,優(yōu)化那些受碎片影響的數(shù)據(jù)表。optimize table 可
21、以用于MylSAM 和 BDB 類(lèi)型的數(shù)據(jù)表。實(shí)際上任何碎片整理方法都是用mysqldump 來(lái)轉(zhuǎn)存數(shù)據(jù)表,然后使用轉(zhuǎn)存后的文件并重新建數(shù)據(jù)表;197.195. 20、使用 procedure analyse(196. 可以使用 procedure analyse 顯示最佳類(lèi)型的建議,使用很簡(jiǎn)單,在select語(yǔ)句后面加上 procedure analyse 就可以了;例如:197. select * from stude nts procedure an alyse(;198. select * from stude nts procedure an alyse(16,256;199. 第二
22、條語(yǔ)句要求 procedure analyse 不要建議含有多于 16 個(gè)值,或者含有 多于256 字節(jié)的 enum 類(lèi)型,如果沒(méi)有限制,輸出可能會(huì)很長(zhǎng);203.200. 21、使用查詢(xún)緩存201. 1)查詢(xún)緩存的工作方式:202. 第一次執(zhí)行某條 select 語(yǔ)句時(shí),服務(wù)器記住該查詢(xún)的文本內(nèi)容和查詢(xún)結(jié) 果,存儲(chǔ)在緩存中,下次碰到這個(gè)語(yǔ)句時(shí),直接從緩存中返回結(jié)果;當(dāng)更新數(shù)據(jù)表后,該 數(shù)據(jù)表的任何緩存查詢(xún)都變成無(wú)效的,并且會(huì)被丟棄。203. 2)配置緩存參數(shù):204. 變量:query_cache _type 查詢(xún)緩存的操作模式。有 3 中模式,0:不緩 存;1:緩存查詢(xún),除非與 select
23、 sql_no_cacheT 頭;2:根據(jù)需要只緩存那些以select sql_cache 開(kāi)頭的查詢(xún); query_cache_size 設(shè)置查詢(xún)緩存的最大結(jié)果集 的大小,比這個(gè)值大的不會(huì)被緩存。209.205. 22、調(diào)整硬件206. 1)在機(jī)器上裝更多的內(nèi)存;207. 2)增加更快的硬盤(pán)以減少 I/O 等待時(shí)間;208. 尋道時(shí)間是決定性能的主要因素, 逐字地移動(dòng)磁頭是最慢的, 一旦磁頭定 位,從磁道讀則很快;209. 3)在不同的物理硬盤(pán)設(shè)備上重新分配磁盤(pán)活動(dòng);210. 如果可能,應(yīng)將最繁忙的數(shù)據(jù)庫(kù)存放在不同的物理設(shè)備上,這跟使用同一 物理設(shè)備的不同分區(qū)是不同的,因?yàn)樗鼈儗?zhēng)用相同的物
24、理資源(磁頭)230.216.217. 一、連接 MYSQL。218.218. 格式:mysql -h 主機(jī)地址-u 用戶(hù)名一 p 用戶(hù)密碼220.221. 1、例 1:連接到本機(jī)上的 MYSQL。222.223. 首先在打開(kāi) DOS 窗口,然后進(jìn)入目錄 mysqlbin,再鍵入命令 mysql -uroot -p,回車(chē)后提示你輸密碼,如果剛安裝好 MYSQL,超級(jí)用戶(hù) root 是沒(méi)有密碼的,故直接回車(chē)即可進(jìn)入到 MYSQL 中了,MYSQL 的提示符是:mysql 224.224. 2、例 2:連接到遠(yuǎn)程主機(jī)上的 MYSQL。假設(shè)遠(yuǎn)程主機(jī)的 IP 為:110.110.110.11Q用戶(hù)名為
25、 root,密碼為 abcd123o 則鍵入以下命令:226.225. mysql -h110.110.110.110 -uroot -pabcd123228.229.(注:u 與 root 可以不用加空格,其它也一樣)246.231.3、退出 MYSQL 命令:exit (回車(chē))232.233. 二、修改密碼。234.234. 格式:mysqladmin -u 用戶(hù)名-p 舊密碼 password 新密碼236.235. 1、例 1:給 root 加個(gè)密碼 ab12。首先在 DOS 下進(jìn)入目錄 mysqlbin,然后鍵入以下命令238.236. mysqladmin -uroot -pass
26、word ab12240.237. 注:因?yàn)殚_(kāi)始時(shí) root 沒(méi)有密碼,所以-p 舊密碼一項(xiàng)就可以省略了。242.238. 2、例 2:再將 root 的密碼改為 djg345。244.239. mysqladm in -uroot -pab12 password djg345247. 三、增加新用戶(hù)。(注意:和上面不同,下面的因?yàn)槭?MYSQL 環(huán)境中 的命令,所以后面都帶一個(gè)分號(hào)作為命令結(jié)束符)248.248.格式:grant select on 數(shù)據(jù)庫(kù).* to 用戶(hù)名 登錄主機(jī) identified by 密碼250.249. 例 1、增加一個(gè)用戶(hù) test1 密碼為 abc,讓他可以
27、在任何主機(jī)上登錄,并對(duì) 所有數(shù)據(jù)庫(kù)有查詢(xún)、插入、修改、刪除的權(quán)限。首先用以root 用戶(hù)連入 MYSQL,然后鍵入以下命令:252.250.grant select nsert,update,delete on *.* to test1% Identified by abc;254.251. 但例 1 增加的用戶(hù)是十分危險(xiǎn)的,你想如某個(gè)人知道testl 的密碼,那么他就可以在 in ternet 上的任何一臺(tái)電腦上登錄你的 mysql 數(shù)據(jù)庫(kù)并對(duì)你的數(shù)據(jù)可以為所 欲為了,解決辦法見(jiàn)例 2。256.252. 例 2、增加一個(gè)用戶(hù) test2 密碼為 abc,讓他只可以在 localhost 上登
28、錄,并 可以對(duì)數(shù)268.據(jù)庫(kù) mydb 進(jìn)行查詢(xún)、插入、修改、刪除的操作(localhost 指本地主機(jī),即 MYSQL數(shù)據(jù)庫(kù)所在的那臺(tái)主機(jī)),這樣用戶(hù)即使用知道 test2 的密碼,他也無(wú)法 從 in ternet 上直接訪問(wèn)數(shù)據(jù)庫(kù),只能通過(guò) MYSQL 主機(jī)上的 web 頁(yè)來(lái)訪問(wèn)了。258.253. grant selectnsert,update,delete on mydb.* to test2localhost identified by abc;260.254. 如果你不想 test2 有密碼,可以再打一個(gè)命令將密碼消掉。262.255. grant select,insert,u
29、pdate,delete on mydb.* to test2localhost identified by J264.256. 在上篇我們講了登錄、增加用戶(hù)、密碼更改等問(wèn)題。下篇我們來(lái)看看MYSQL 中有關(guān)數(shù)據(jù)庫(kù)方面的操作。注意:你必須首先登錄到MYSQL 中,以下操作都是在 MYSQL 的提示符下進(jìn)行的,而且每個(gè)命令以分號(hào)結(jié)束。266.267. 一、操作技巧269. 1 如果你打命令時(shí),回車(chē)后發(fā)現(xiàn)忘記加分號(hào),你無(wú)須重打一遍命令,只 要打個(gè)分號(hào)回車(chē)就可以了。也就是說(shuō)你可以把一個(gè)完整的命令分成幾行來(lái)打,完后用分 號(hào)作結(jié)束標(biāo)志就 0K。270.271.2、你可以使用光標(biāo)上下鍵調(diào)出以前的命令。但以
30、前我用過(guò)的一個(gè)MYSQL 舊版本不支持。我現(xiàn)在用的是 mysql- 3.23.27-beta-win。272.273. 二、顯示命令274.274. 1、顯示數(shù)據(jù)庫(kù)列表。276.275. show databases;278.276. 剛開(kāi)始時(shí)才兩個(gè)數(shù)據(jù)庫(kù):mysql 和 test。mysql 庫(kù)很重要它里面有MYSQL 的系統(tǒng)信息,我們改密碼和新增用戶(hù),實(shí)際上就是用這個(gè)庫(kù)進(jìn)行操作。280.281.2、顯示庫(kù)中的數(shù)據(jù)表:282.300.283. use mysq; /打開(kāi)庫(kù),學(xué)過(guò) FOXBASE284.284. show tables;286.285. 3、顯示數(shù)據(jù)表的結(jié)構(gòu):288.286.
31、describe 表名;290.291.4、建庫(kù):292.293. create database!名 ;294.294. 5、建表:296.295. use 庫(kù)名;298.定不會(huì)陌生吧282.301.296. create table 表名(字段設(shè)定列表;301.6、刪庫(kù)和刪表:302.303. drop database 庫(kù)名;304.304. drop table 表名;306.305. 7、將表中記錄清空:308.306. delete from 表名;310.311.8、顯示表中的記錄:312.313. select * from 表名;314.314. 三、一個(gè)建庫(kù)和建表以及插入數(shù)
32、據(jù)的實(shí)例316.315. drop database if exists school;如果存在 SCHOOL 則刪除318.316. create database school;建立庫(kù) SCHOOL320.338.321. use school; /打開(kāi)庫(kù) SCHOOL322.322. create table teacher 建立表 TEACHER324.323. (326.324. id in t(3 auto_i ncreme nt not null primary key,328.325. name char(10 not null,330.326. address varchar
33、(50 default 深圳,332.327. year date334.328. ; 建表結(jié)束336.329. 以下為插入字段只要將/的注釋去掉即可使用)O340.341. insert into teacher values(深圳一中ja,ck 9,2-23;342.342. 注:在建表中(1)將 ID 設(shè)為長(zhǎng)度為 3 的數(shù)字字段:int(3 并讓它每個(gè)記錄 自動(dòng)加一:auto_increment 并不能為空:not null 而且讓他成為主字段 primary key (2)將NAME 設(shè)為長(zhǎng)度為 10 的字符字段(3)將 ADDRESS 設(shè)為長(zhǎng)度 50 的字符字段,而 且缺省值為深圳。
34、varchar 和 char 有什么區(qū)別呢,只有等以后的文章再說(shuō)了。(4)將 YEAR 設(shè)為日期字段。344.343. 如果你在 mysql 提示符鍵入上面的命令也可以,但不方便調(diào)試。你可以將 以上命令原樣寫(xiě)入一個(gè)文本文件中假設(shè)為 school.sql,然后復(fù)制到下,并在 DOS狀態(tài)進(jìn)入目錄mysqlbin,然后鍵入以下命令:346.344. mysql -uroot -p 密碼 school.bbb367.368. 注釋:將數(shù)據(jù)庫(kù) school 備份到 school.bbb 文件,school.bbb 是一個(gè)文本文 件,文件名任取,打開(kāi)看看你會(huì)有新發(fā)現(xiàn)。369.370.371.369. my
35、sql 命令行常用命令373.370. 第一招、mysql 服務(wù)的啟動(dòng)和停止371. net stop mysql372. net start mysql373. 第二招、登陸 mysql374. 語(yǔ)法如下:mysql -u 用戶(hù)名-p 用戶(hù)密碼375. 鍵入命令 mysql -uroot -p,回車(chē)后提示你輸入密碼,輸入 12345,然后回 車(chē)即可進(jìn)入到 mysql 中了,mysql 的提示符是:376. mysql 377.注意, 如果是連接到另外的機(jī)器上,則需要加入一個(gè)參數(shù)-h 機(jī)器 IP378.第三招、增加新用戶(hù)379. 格式:grant 權(quán)限 on 數(shù)據(jù)庫(kù).* to 用戶(hù)名登錄主機(jī)
36、identified by 密碼380. 如,增加一個(gè)用戶(hù) userl 密碼為 password!讓其可以在本機(jī)上登錄,并對(duì)所有數(shù)據(jù)庫(kù)有查詢(xún)、插入、修改、刪除的權(quán)限。首先用以root 用戶(hù)連入 mysql,然后鍵入以下命令:381. grant select,insert,update,delete on *.* to user1localhost Identified by passwordl;382. 如果希望該用戶(hù)能夠在任何機(jī)器上登陸mysql,則將 localhost 改為%。383.如果你不想 userl 有密碼,可以再打一個(gè)命令將密碼去掉。384. grant select,ins
37、ert,update,delete on mydb.* to user1localhost identified by ;385. 第四招:操作數(shù)據(jù)庫(kù)386. 登錄到 mysql 中,然后在 mysql 的提示符下運(yùn)行下列命令,每個(gè)命令以分 號(hào)結(jié)束。391. 1、顯示數(shù)據(jù)庫(kù)列表。392. show databases;393. 缺省有兩個(gè)數(shù)據(jù)庫(kù):mysql 和 test。mysql 庫(kù)存放著 mysql 的系統(tǒng)和用戶(hù) 權(quán)限信息,我們改密碼和新增用戶(hù),實(shí)際上就是對(duì)這個(gè)庫(kù)進(jìn)行操作。394. 2、顯示庫(kù)中的數(shù)據(jù)表:395. use mysql;396. show tables;397. 3、顯示數(shù)據(jù)
38、表的結(jié)構(gòu):398. describe 表名;399. 4、建庫(kù)與刪庫(kù):400. create database!名;401. drop database?名;402. 5、建表:403. use 庫(kù)名;404. create table 表名(字段列表;405. drop table 表名;406.6、清空表中記錄:407. delete from 表名;408. 7、顯示表中的記錄:409. select * from 表名;410. 第五招、導(dǎo)出和導(dǎo)入數(shù)據(jù)411. 1.導(dǎo)出數(shù)據(jù):412. mysqldump -opt test mysql.test431.413.即將數(shù)據(jù)庫(kù) test 數(shù)據(jù)
39、庫(kù)導(dǎo)出到 mysql.test 文件,后者是一個(gè)文本文件 414.如: mysqldump -u root -p123456 -databases dbname mysql.dbname 41 就是把數(shù) 據(jù)庫(kù) dbname 導(dǎo)出到文件 mysql.dbname 中。416. 2.導(dǎo)入數(shù)據(jù):417. mysqlimport -u root -p123456 4 指 ID 大于 4 的都顯示出來(lái)481. select * from test.text where id4 指 ID 不等于 4 的都出來(lái)482. select * from test.text where id =1 指 ID 等于
40、1 的出來(lái)483. select * from test.text where id in(1,3,5 指找出 ID 為 1 3 5 的 not in ()則相 反484. select * from test.text where uid like %王%指 UID 里只要帶王字的都出來(lái)%王表示什么王,王表示王什么。485. select * from test.text where remark like %學(xué)%指 remark 里帶學(xué)的都出來(lái)486. select * from test.text where id between 1 and 10 and uid like 8 王 %表
41、示ID 1-10 并且 UID 帶王字的出來(lái)487. select * from test.text where id not between 1 and 4 旨 ID 不在 1-4 里面的 出來(lái)488. ( 1 and 2 表示滿(mǎn)足 1 且滿(mǎn)足 2 1 or 2 表示滿(mǎn)足 1 和滿(mǎn)足 2)and or 可以連 接很多條件489. select * from test.text group by remark 顯示列出 remark 有多少類(lèi)別 如圖J有5類(lèi) group by 就是分組命令493.490. select * from test.text order by regdate as
42、把 regdate 按從小到大排列 495.ASC 不打就是默認(rèn)從小到大 DESC 表示從大到小 如 order desc496. select * from test.text order by regdate asc,id des 這樣就查詢(xún)出日期從小到大然后在滿(mǎn)足日期的排列后 ID 從大到小排列497. select * from test.text limit 0,5 表示取 5 條記錄 如果是 3, 6 那就是第 4-第 9條記錄被取出如圖J498. 如過(guò)只寫(xiě)一個(gè) 6 那就等于 0, 6499. select * from test.text group by remark orde
43、r by regdate limit 6 先分組 再排 序LIMIT 放最后 這是語(yǔ)法不能顛倒。500. select co un t(id from test.text cou nt 表示查詢(xún)有多少條信息 這樣根據(jù)表顯示出10 條501. select max(regdate from test.text max 查詢(xún)最大值 只能針對(duì)數(shù)字 包括日期根據(jù)表顯示出 2008-10-22 14:41:30502. select min(regdatefrom test.text min 查詢(xún)最小值 只能針對(duì)數(shù)字 包括日期 根 據(jù)表顯示出 2008-10-07 13:21:32503. select
44、 avg(id from test.text avg 查詢(xún)平均值 也只針對(duì)數(shù)字 包括日期 顯示出 5.5如算平均分?jǐn)?shù)504. select sum(id from test.text sum 查詢(xún)累計(jì)值 數(shù)字包括日期 顯示出55 1+2+3+。10=55 如算總分?jǐn)?shù)505. i nsert 插入語(yǔ)句521.506. insert into text(id,uid,regdate,remarkvalues(null,ken,now(,學(xué)生其中 null 就是沒(méi)有 now(就是時(shí)間日期自動(dòng)生成507. 字段的類(lèi)型要設(shè)計(jì)好。特別注意!508.509.510.511.508. Update 更改語(yǔ)句5
45、09. Update 表名 set 字段二二值 where 條件 LIMIT (可省略)510. update test.text set uid =kenchen where id =1 意思是把 ID 是 11 的 UID 改 成kenchen515.511. Delete 刪除語(yǔ)句512. Delete from 表命 where limit513. Delete from text where id =3 意思是把 ID =3 的信息條刪除!519.514. mysql 字段類(lèi)型說(shuō)明-534.522.523. MySQL 支持大量的列類(lèi)型,它可以被分為 3 類(lèi):數(shù)字類(lèi)型、日期和時(shí)間 類(lèi)
46、型以及字符串(字符類(lèi)型。本節(jié)首先給出可用類(lèi)型的一個(gè)概述,并且總結(jié)每個(gè)列類(lèi)型 的存儲(chǔ)需求,然后提供每個(gè)類(lèi)中的類(lèi)型性質(zhì)的更詳細(xì)的描述。概述有意簡(jiǎn)化,更詳 細(xì)的說(shuō)明應(yīng)該考慮到有關(guān)特定列類(lèi)型的附加信息,例如你能為其指定值的允許格 式。524.525. 由 MySQL 支持的列類(lèi)型列在下面。下列代碼字母用于描述中:526.526. M527. 指出最大的顯示尺寸。最大的合法的顯示尺寸是255。528. D529. 適用于浮點(diǎn)類(lèi)型并且指出跟隨在十進(jìn)制小數(shù)點(diǎn)后的數(shù)碼的數(shù)量。最大可能 的值是30,但是應(yīng)該不大于 M-2。530. 方括號(hào)(“和“指出可選的類(lèi)型修飾符的部分。532.531. 注意,如果你指定一個(gè)
47、了為 ZEROFILL , MySQL 將為該列自動(dòng)地增加UNSIGNED屬性。535. TINYINT(M UNSIGNED ZEROFILL536. 個(gè)很小的整數(shù)。有符號(hào)的范圍是-128 到 127,無(wú)符號(hào)的范圍是 0 到255。537.538.539. SMALLINT(M UNSIGNED ZEROFILL540. 一個(gè)小整數(shù)。有符號(hào)的范圍是-32768 到 32767,無(wú)符號(hào)的范圍是 0 到65535。 541.542. MEDIUMINT(M UNSIGNED ZEROFILL543. 一個(gè)中等大小整數(shù)。有符號(hào)的范圍是-8388608 到 8388607,無(wú)符號(hào)的范圍 是 0到16
48、777215,544.544. INT(M UNSIGNED ZEROFILL545. 一個(gè)正常大小整數(shù)。有符號(hào)的范圍是 -2147483648 到 2147483647,無(wú)符號(hào) 的范圍是 0 到 4294967295547.546. INTEGER(M UNSIGNED ZEROFILL547. 這是 INT 的一個(gè)同義詞。548. BIGINT(M UNSIGNED ZEROFILL549. 個(gè)大整數(shù)。有符號(hào)的范圍是-9223372036854775808 到9223372036854775807無(wú)符號(hào)的范圍是 0 到550. 18446744073709551615 注意,所有算術(shù)運(yùn)算用
49、有符號(hào)的 BIGINT 或DOUBLE 值完成,因此你不應(yīng)該使用大于 9223372036854775807( 63 位的有符號(hào) 大整數(shù),除了位函數(shù)!注意,當(dāng)兩個(gè)參數(shù)是 INTEGER 值時(shí),-、+和*將使用 BIGINT 運(yùn)算!這 意味著如果你乘 2 個(gè)大整數(shù)(或來(lái)自于返回整數(shù)的函數(shù),如果結(jié) 果大于9223372036854775807 你可以得到意外的結(jié)果。一個(gè)浮點(diǎn)數(shù)字,不能是 無(wú)符號(hào)的,對(duì)一個(gè)單精度浮點(diǎn)數(shù),其精度可以是=24,對(duì)一個(gè)雙精度浮點(diǎn)數(shù),是 在 25 和 53 之間,這些類(lèi)型如 FLOAT 和 DOUBLE 類(lèi)型馬上在下面描述。 FLOAT(X 有對(duì)應(yīng)的 FLOAT 和DOUBL
50、E 相同的范圍, 但是顯示尺寸和小數(shù)位數(shù) 是未定義的。MySQL3.23 在中,這是一個(gè)真正的浮點(diǎn)值。在更早的MySQL 版本中,F(xiàn)LOAT(precision 總是有 2 位小數(shù)。該句法為了 ODBC 兼容性而提供。553.554. FLOAT(M,D ZEROFILL 555. 一個(gè)小(單精密浮點(diǎn)數(shù)字。不能無(wú)符號(hào)。允許 的值是-3.402823466E+38 到-1.175494351E-38, 0 和 1.175494351E-38 到3.402823466E+3& M 是顯示寬度而 D 是小數(shù)的位數(shù)。沒(méi)有參數(shù)的 FLOAT 或有 24 的一個(gè)參數(shù)表示一個(gè)單精密浮點(diǎn) 數(shù)字。556
51、. DOUBLE(M,D ZEROFILL 557. 一個(gè)正常大小(雙精密浮點(diǎn)數(shù)字。不能無(wú)符號(hào)。允許的值是-1.7976931348623157E+308 到 -2.2250738585072014E-308 0 和2.2250738585072014E-308 到 1.7976931348623157E+308 是顯示寬度而 D 是 M 小 數(shù)位數(shù)。沒(méi)有一個(gè)參數(shù)的 DOUBLE 或 FLOAT(X (25 = X = 53)代表一個(gè)雙精 密浮點(diǎn)數(shù)字。558. DOUBLE PRECISION(M,D ZEROFILL 559. REAL(M,D ZEROFILL 560.這些是 DOUBLE
52、 同義詞。561. DECIMAL(M,D ZEROFILL562. 一個(gè)未壓縮(unpack 的浮點(diǎn)數(shù)字。不能無(wú)符號(hào)。行為如同一個(gè)CHAR 列:朱壓縮”意味著數(shù)字作為一個(gè)字符串被存儲(chǔ),值的每一位使用一個(gè)字符。小數(shù)點(diǎn),并 且對(duì)于負(fù)數(shù),-”符號(hào)不在 M 中計(jì)算。如果 D 是 0,值將沒(méi)有小數(shù)點(diǎn)或小數(shù)部分。DECIMAL 值的最大范圍與 DOUBLE 相同,但是對(duì)一個(gè)給定的 DECIMAL 列,實(shí)際的范圍可以通過(guò) M 和 D 的選擇被限制。如果 D 被省略,它被設(shè)置為 0。如果 M 被省掉,它被 設(shè)置為 10。注意,在 MySQL3.22 里,M參數(shù)包括符號(hào)和小數(shù)點(diǎn)。563. 564. 565. NUMERIC(M,D ZEROFILL 566.這是 DECIMAL 的一個(gè)同義詞。 DATE567. 一
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 鄉(xiāng)村振興可行性研究報(bào)告(5篇)
- 結(jié)算協(xié)議書(shū)范本(10篇)
- 關(guān)于禮儀廣播稿(18篇)
- 體育營(yíng)銷(xiāo)與社會(huì)責(zé)任-洞察分析
- 《客服新人培訓(xùn)》課件
- 網(wǎng)絡(luò)擁塞緩解策略-洞察分析
- 水泥生產(chǎn)線能耗監(jiān)測(cè)-洞察分析
- 微生物酶催化合成研究-洞察分析
- 同學(xué)聚會(huì)策劃方案范文
- 無(wú)人駕駛汽車(chē)在物流配送中的應(yīng)用-洞察分析
- GB/T 45076-2024再生資源交易平臺(tái)建設(shè)規(guī)范
- 四川省巴中市2021-2022學(xué)年九年級(jí)上學(xué)期期末語(yǔ)文試題(解析版)
- 冬季防凍培訓(xùn)課件
- 職業(yè)衛(wèi)生監(jiān)督檢查表
- 幼兒系列故事繪本課件貝貝熊系列-受人冷落-
- 消防水池 (有限空間)作業(yè)安全告知牌及警示標(biāo)志
- 2022年中醫(yī)藥人才培養(yǎng)工作總結(jié)
- 精美小升初簡(jiǎn)歷小學(xué)生自我介紹歐式word模板[可編輯]
- 采礦學(xué)課程設(shè)計(jì)陳四樓煤礦1.8mta新井設(shè)計(jì)(全套圖紙)
- 201X最新離婚協(xié)議書(shū)(簡(jiǎn)潔版)
- 標(biāo)簽打印流程
評(píng)論
0/150
提交評(píng)論