版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、MYSQL 的常用命令和增刪改查語(yǔ)句和數(shù)據(jù)類型 1.連接命令:mysql -h主機(jī)地址 -u用戶名 -p用戶密碼 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. 創(chuàng)建數(shù)據(jù)表:CREATE TABLE 表名(字段名 字段類型(字段要求 字段參數(shù), .;7. 顯示數(shù)據(jù)表字段:describe 表名;8. 當(dāng)前庫(kù)數(shù)據(jù)表結(jié)構(gòu):show tables;9. 更改表格10. ALTER TABLE 表名 ADD COLUMN 字段名 DATATYPE11
2、. 說(shuō)明:增加一個(gè)欄位(沒(méi)有刪除某個(gè)欄位的語(yǔ)法。12. ALTER TABLE 表名 ADD PRIMARY KEY (字段名13. 說(shuō)明:更改表得的定義把某個(gè)欄位設(shè)為主鍵。14. ALTER TABLE 表名 DROP PRIMARY KEY (字段名15. 說(shuō)明:把主鍵的定義刪除。16. 顯示當(dāng)前表字段:show columns from tablename;17. 刪庫(kù):drop database 庫(kù)名;18. 刪表:drop table 表名;19. 數(shù)據(jù)操作20. 添加:INSERT INTO 表名 VALUES('','',.順序排列的數(shù)據(jù);21.
3、查詢: SELECT * FROM 表名 WHERE (條件;22. 建立索引: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 表名 < input.sql29. 2. 數(shù)據(jù)傳入命令 load data local infile &quo
4、t;文件名" into table 表名;30. 備份數(shù)據(jù)庫(kù):(dos下31. mysqldump -opt school>school.bbb32. 提示:常用MySQL 命令以"" 結(jié)束, 有少量特殊命令不能加"" 結(jié)束,如備份數(shù)據(jù)庫(kù)33. 一. 增刪改查操作=34. 1. 增:35. insert into 表名 values(0,'測(cè)試'36. 注:如上語(yǔ)句,表結(jié)構(gòu)中有自動(dòng)增長(zhǎng)的列,也必須為其指定一個(gè)值,通常為037. insert into 表名(id,name values(0,'尹當(dāng)'-同上3
5、8. 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 表名 set 列名='新的值,非數(shù)字加單引號(hào)' where id =6;48. 4. 查:49. 查詢所有的數(shù)據(jù)
6、:select *from 表名;50. 帶條件的查詢:51. select *from 表名 where 列名=條件值;52. Select * from 表名 where 列名 not like(like ) '字符值'53. 分頁(yè)查詢: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. 新建數(shù)據(jù)庫(kù):create database 數(shù)據(jù)庫(kù)名;60. 5.
7、操作指定數(shù)據(jù)庫(kù):use 數(shù)據(jù)庫(kù)名;61. 6. 新建數(shù)據(jù)表(先use 操作庫(kù);62. create table 表名(規(guī)范為tbl_表名63. (64. id int auto_increment primary key,( auto_increment為自動(dòng)增長(zhǎng)65. name varchar(20 primary key66. ENGINE =InnoDB DEFAULT CHARSET =gbk /支持事務(wù)和設(shè)置表的編碼67. 6.2添加主外鍵:68. alter table 外表名 add constraint FK_名稱 foreign key(外列 references 主表名(主
8、列69. 如現(xiàn)有兩表 主表tbl_order 子表tbl_orderdetail 現(xiàn)子表tbl_orderdetail的oid 列引用了主表tbl_order的oid 列70. 則命令如下:71. alter table tbl_orderdetail add constraint FK_oid foreign key(oid references tbl_order(oid72. 7. 導(dǎo)出表,備份到一個(gè)文件中,如.txt,.doc73. cmd 命令窗口:mysqldump -u 用戶名 -p 需要備份的數(shù)據(jù)庫(kù)名 >備份的文件的保存路徑和文件名74. 注:如指定的文件不存在,mysq
9、l 會(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)操作81. =82. 1. 打開(kāi)服務(wù):net start mysql(mysql為配置時(shí),可自定名稱83. 2. 關(guān)閉服務(wù):net stop mysql84. 3. 從cmd 模式進(jìn)入mysql85. (1.mysql -u 用戶名 -p 回車>輸入正確密碼&
10、gt;進(jìn)入歡迎86. (2.mysql -h IP(本機(jī)localhost -u 用戶名 -p 回車>輸入正確密碼>進(jìn)入歡迎87. 3. 退出:exit/quit;88. 4. 修改用戶密碼:mysqladmin -u 用戶名 -p password 新密碼89. 5. 處理中文亂碼:90. (1.在D:MySQL MySQL Server 5.0data的操作數(shù)據(jù)為文件中查看是否為以下:91. default-character-set =gbk92. default-collation =gbk_chinese_ci93.94. (2.查看安裝文件默認(rèn)編碼:D:MySQLMyS
11、QL Server 5.0>my >default-character-set =gbk95. =96. 啟動(dòng):net start mySql;97. 進(jìn)入:mysql -u root -p/mysql -h localhost -u root -p databaseName;98. 列出數(shù)據(jù)庫(kù):show databases;99. 選擇數(shù)據(jù)庫(kù):use databaseName;100. 列出表格:show tables;101. 顯示表格列的屬性:show columns from tableName;102. 建立數(shù)據(jù)庫(kù):source fileName.txt;103. 匹配字
12、符:可以用通配符_代表任何一個(gè)字符,代表任何字符串;104. 增加一個(gè)字段:alter table tabelName add column fieldName dateType; 105. 增加多個(gè)字段:alter table tabelName add column fieldName1 dateType,add columns fieldName2 dateType;106. 多行命令輸入:注意不能將單詞斷開(kāi); 當(dāng)插入或更改數(shù)據(jù)時(shí),不能將字段的字符串展開(kāi)到多行里,否則硬回車將被儲(chǔ)存到數(shù)據(jù)中;107. 增加一個(gè)管理員帳戶:grant all on *.* to userlocalhost
13、identified by "password"108. 每條語(yǔ)句輸入完畢后要在末尾填加分號(hào)'' ,或者填加'g'也可以;109. 查詢時(shí)間:select now(;110. 查詢當(dāng)前用戶:select user(;111. 查詢數(shù)據(jù)庫(kù)版本:select version(;112. 查詢當(dāng)前使用的數(shù)據(jù)庫(kù):select database(;113.114. 1、刪除student_course數(shù)據(jù)庫(kù)中的students 數(shù)據(jù)表:115. rm -f student_course/students.*116.117. 2、備份數(shù)據(jù)庫(kù):(將數(shù)據(jù)庫(kù)t
14、est 備份118. mysqldump -u root -p test>c:test.txt119. 備份表格:(備份test 數(shù)據(jù)庫(kù)下的mytable 表格120. mysqldump -u root -p test mytable>c:test.txt121. 將備份數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫(kù):(導(dǎo)回test 數(shù)據(jù)庫(kù)122. mysql -u root -p test123.124. 3、創(chuàng)建臨時(shí)表:(建立臨時(shí)表zengchao125. create temporary table zengchao(name varchar(10;126.127. 4、創(chuàng)建表是先判斷表是否存在128.
15、 create table if not exists students(;129.130. 5、從已經(jīng)有的表中復(fù)制表的結(jié)構(gòu)131. create table table2 select * from table1 where 1<>1;132.133. 6、復(fù)制表134. create table table2 select * from table1;135.136. 7、對(duì)表重新命名137. alter table table1 rename as table2;138.139. 8、修改列的類型140. alter table table1 modify id int un
16、signed;/修改列id 的類型為int unsigned 141. alter table table1 change id sid int unsigned;/修改列id 的名字為sid ,而且把屬性修改為int unsigned142.143. 9、創(chuàng)建索引144. alter table table1 add index ind_id (id;145. create index ind_id on table1 (id;146. create unique index ind_id on table1 (id;/建立唯一性索引147.148. 10、刪除索引149. drop ind
17、ex idx_id on table1;150. alter table table1 drop index ind_id;151.152. 11、聯(lián)合字符或者多個(gè)列(將列id 與":"和列name 和"="連接153. select concat(id,':',name,'=' from students;154.155. 12、limit(選出10到20條 <第一個(gè)記錄集的編號(hào)是0>156. select * from students order by id limit 9,10;157.158. 13、
18、MySQL 不支持的功能159. 事務(wù),視圖,外鍵和引用完整性,存儲(chǔ)過(guò)程和觸發(fā)器160.161.162. 14、MySQL 會(huì)使用索引的操作符號(hào)163. <, <=,>=,>,=,between,in,不帶%或者_(dá)開(kāi)頭的like164.165. 15、使用索引的缺點(diǎn)166. 1 減慢增刪改數(shù)據(jù)的速度;167. 2)占用磁盤空間;168. 3)增加查詢優(yōu)化器的負(fù)擔(dān);169. 當(dāng)查詢優(yōu)化器生成執(zhí)行計(jì)劃時(shí),會(huì)考慮索引,太多的索引會(huì)給查詢優(yōu)化器增加工作量,導(dǎo)致無(wú)法選擇最優(yōu)的查詢方案;170.171. 16、分析索引效率172. 方法:在一般的SQL 語(yǔ)句前加上explain ;
19、173. 分析結(jié)果的含義:174. 1)table :表名;175. 2)type :連接的類型,(ALL/Range/Ref。其中ref 是最理想的;176. 3)possible_keys:查詢可以利用的索引名;177. 4)key :實(shí)際使用的索引;178. 5)key_len:索引中被使用部分的長(zhǎng)度(字節(jié));179. 6)ref :顯示列名字或者"const" (不明白什么意思);180. 7)rows :顯示MySQL 認(rèn)為在找到正確結(jié)果之前必須掃描的行數(shù);181. 8)extra :MySQL 的建議;182.183. 17、使用較短的定長(zhǎng)列184. 1)盡可能
20、使用較短的數(shù)據(jù)類型;185. 2)盡可能使用定長(zhǎng)數(shù)據(jù)類型;186. a )用char 代替varchar ,固定長(zhǎng)度的數(shù)據(jù)處理比變長(zhǎng)的快些;187. b )對(duì)于頻繁修改的表,磁盤容易形成碎片,從而影響數(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ì)于MyISAM 類型的數(shù)據(jù)表,雖然轉(zhuǎn)換成固定長(zhǎng)度的數(shù)據(jù)列可以提高性能,但是占據(jù)的空間也大;190.191. 18、使用not null和enum192. 盡量將列定義為
21、not null,這樣可使數(shù)據(jù)的出來(lái)更快,所需的空間更少,而且在查詢時(shí),MySQL 不需要檢查是否存在特例,即null 值,從而優(yōu)化查詢;193. 如果一列只含有有限數(shù)目的特定值,如性別,是否有效或者入學(xué)年份等,在這種情況下應(yīng)該考慮將其轉(zhuǎn)換為enum 列的值,MySQL 處理的更快,因?yàn)樗械膃num 值在系統(tǒng)內(nèi)都是以標(biāo)識(shí)數(shù)值來(lái)表示的;194.195. 19、使用optimize table196. 對(duì)于經(jīng)常修改的表,容易產(chǎn)生碎片,使在查詢數(shù)據(jù)庫(kù)時(shí)必須讀取更多的磁盤塊,降低查詢性能。具有可變長(zhǎng)的表都存在磁盤碎片問(wèn)題,這個(gè)問(wèn)題對(duì)blob 數(shù)據(jù)類型更為突出,因?yàn)槠涑叽缱兓浅4蟆?梢酝ㄟ^(guò)使用opt
22、imize table來(lái)整理碎片,保證數(shù)據(jù)庫(kù)性能不下降,優(yōu)化那些受碎片影響的數(shù)據(jù)表。 optimize table可以用于MyISAM 和BDB 類型的數(shù)據(jù)表。實(shí)際上任何碎片整理方法都是用mysqldump 來(lái)轉(zhuǎn)存數(shù)據(jù)表,然后使用轉(zhuǎn)存后的文件并重新建數(shù)據(jù)表;197.198. 20、使用procedure analyse(199. 可以使用procedure analyse(顯示最佳類型的建議,使用很簡(jiǎn)單,在select 語(yǔ)句后面加上procedure analyse(就可以了;例如:200. select * from students procedure analyse(;201. sele
23、ct * from students procedure analyse(16,256;202. 第二條語(yǔ)句要求procedure analyse(不要建議含有多于16個(gè)值,或者含有多于256字節(jié)的enum 類型,如果沒(méi)有限制,輸出可能會(huì)很長(zhǎng);203.204. 21、使用查詢緩存205. 1)查詢緩存的工作方式:206. 第一次執(zhí)行某條select 語(yǔ)句時(shí),服務(wù)器記住該查詢的文本內(nèi)容和查詢結(jié)果,存儲(chǔ)在緩存中,下次碰到這個(gè)語(yǔ)句時(shí),直接從緩存中返回結(jié)果;當(dāng)更新數(shù)據(jù)表后,該數(shù)據(jù)表的任何緩存查詢都變成無(wú)效的,并且會(huì)被丟棄。207. 2)配置緩存參數(shù):208. 變量:query_cache _type,
24、查詢緩存的操作模式。有3中模式,0:不緩存;1:緩存查詢,除非與 select sql_no_cache開(kāi)頭;2:根據(jù)需要只緩存那些以select sql_cache開(kāi)頭的查詢; query_cache_size:設(shè)置查詢緩存的最大結(jié)果集的大小,比這個(gè)值大的不會(huì)被緩存。209.210. 22、調(diào)整硬件211. 1)在機(jī)器上裝更多的內(nèi)存;212. 2)增加更快的硬盤以減少I/O等待時(shí)間;213. 尋道時(shí)間是決定性能的主要因素,逐字地移動(dòng)磁頭是最慢的,一旦磁頭定位,從磁道讀則很快;214. 3)在不同的物理硬盤設(shè)備上重新分配磁盤活動(dòng);215. 如果可能,應(yīng)將最繁忙的數(shù)據(jù)庫(kù)存放在不同的物理設(shè)備上,這
25、跟使用同一物理設(shè)備的不同分區(qū)是不同的,因?yàn)樗鼈儗?zhēng)用相同的物理資源(磁頭)。216.217. 一、連接MYSQL 。218.219. 格式: mysql -h主機(jī)地址 -u用戶名 p 用戶密碼220.221. 1、例1:連接到本機(jī)上的MYSQL 。222.223. 首先在打開(kāi)DOS 窗口,然后進(jìn)入目錄 mysqlbin,再鍵入命令mysql -uroot -p,回車后提示你輸密碼,如果剛安裝好MYSQL ,超級(jí)用戶root 是沒(méi)有密碼的,故直接回車即可進(jìn)入到MYSQL 中了,MYSQL 的提示符是:mysql >224.用戶名為 root,密碼為abcd123。則鍵入以下命令:226.2
26、28.229. (注:u與root 可以不用加空格,其它也一樣)230.231. 3、退出MYSQL 命令: exit (回車)232.233. 二、修改密碼。234.235. 格式:mysqladmin -u用戶名 -p舊密碼 password 新密碼236.237. 1、例1:給root 加個(gè)密碼ab12。首先在DOS 下進(jìn)入目錄mysqlbin ,然后鍵入以下命令238.239. mysqladmin -uroot -password ab12240.241. 注:因?yàn)殚_(kāi)始時(shí)root 沒(méi)有密碼,所以-p 舊密碼一項(xiàng)就可以省略了。242.243. 2、例2:再將root 的密碼改為djg3
27、45。244.245. mysqladmin -uroot -pab12 password djg345246.247. 三、增加新用戶。(注意:和上面不同,下面的因?yàn)槭荕YSQL 環(huán)境中的命令,所以后面都帶一個(gè)分號(hào)作為命令結(jié)束符)248.249. 格式:grant select on 數(shù)據(jù)庫(kù).* to 用戶名登錄主機(jī) identified by "密碼" 250.251. 例1、增加一個(gè)用戶test1密碼為abc ,讓他可以在任何主機(jī)上登錄,并對(duì)所有數(shù)據(jù)庫(kù)有查詢、插入、修改、刪除的權(quán)限。首先用以root 用戶連入MYSQL ,然后鍵入以下命令:252.253. grant
28、 select,insert,update,delete on *.* to test1"%" Identified by "abc" 254.255. 但例1增加的用戶是十分危險(xiǎn)的,你想如某個(gè)人知道test1的密碼,那么他就可以在internet 上的任何一臺(tái)電腦上登錄你的mysql 數(shù)據(jù)庫(kù)并對(duì)你的數(shù)據(jù)可以為所欲為了,解決辦法見(jiàn)例2。256.257. 例 2、增加一個(gè)用戶test2密碼為abc, 讓他只可以在localhost 上登錄,并可以對(duì)數(shù)據(jù)庫(kù)mydb 進(jìn)行查詢、插入、修改、刪除的操作(localhost 指本地主機(jī),即MYSQL 數(shù)據(jù)庫(kù)所在的那
29、臺(tái)主機(jī)),這樣用戶即使用知道test2的密碼,他也無(wú)法從 internet上直接訪問(wèn)數(shù)據(jù)庫(kù),只能通過(guò)MYSQL 主機(jī)上的web 頁(yè)來(lái)訪問(wèn)了。258.259. grant select,insert,update,delete on mydb.* to test2localhost identified by "abc"260.261. 如果你不想test2有密碼,可以再打一個(gè)命令將密碼消掉。262.263. grant select,insert,update,delete on mydb.* to test2localhost identified by "&q
30、uot;264.265. 在上篇我們講了登錄、增加用戶、密碼更改等問(wèn)題。下篇我們來(lái)看看MYSQL 中有關(guān)數(shù)據(jù)庫(kù)方面的操作。注意:你必須首先登錄到MYSQL 中,以下操作都是在MYSQL 的提示符下進(jìn)行的,而且每個(gè)命令以分號(hào)結(jié)束。266.267. 一、操作技巧268.269. 1、如果你打命令時(shí),回車后發(fā)現(xiàn)忘記加分號(hào),你無(wú)須重打一遍命令,只要打個(gè)分號(hào)回車就可以了。也就是說(shuō)你可以把一個(gè)完整的命令分成幾行來(lái)打,完后用分號(hào)作結(jié)束標(biāo)志就OK 。270.271. 2、你可以使用光標(biāo)上下鍵調(diào)出以前的命令。但以前我用過(guò)的一個(gè)MYSQL 舊版本272.273. 二、顯示命令274.275. 1、顯示數(shù)據(jù)庫(kù)列表。
31、276.277. show databases;278.279. 剛開(kāi)始時(shí)才兩個(gè)數(shù)據(jù)庫(kù):mysql 和test 。mysql 庫(kù)很重要它里面有MYSQL 的系統(tǒng)信息,我們改密碼和新增用戶,實(shí)際上就是用這個(gè)庫(kù)進(jìn)行操作。280.281. 2、顯示庫(kù)中的數(shù)據(jù)表:282.283. use mysql; 打開(kāi)庫(kù),學(xué)過(guò)FOXBASE 的一定不會(huì)陌生吧284.285. show tables;286.287. 3、顯示數(shù)據(jù)表的結(jié)構(gòu):288.289. describe 表名;290.291. 4、建庫(kù):292.293. create database 庫(kù)名;294.295. 5、建表:296.297. use
32、 庫(kù)名;298.299. create table 表名 (字段設(shè)定列表 ;300.301. 6、刪庫(kù)和刪表:302.303. drop database 庫(kù)名;304.305. drop table 表名;306.307. 7、將表中記錄清空:308.309. delete from 表名;310.311. 8、顯示表中的記錄:312.313. select * from 表名;314.315. 三、一個(gè)建庫(kù)和建表以及插入數(shù)據(jù)的實(shí)例316.317. drop database if exists school; /如果存在SCHOOL 則刪除318.319. create database
33、school; /建立庫(kù)SCHOOL320.321. use school; /打開(kāi)庫(kù)SCHOOL322.323. create table teacher /建立表TEACHER324.325. (326.327. id int(3 auto_increment not null primary key,328.329. name char(10 not null,330.331. address varchar(50 default 深圳,332.333. year date334.335. ; /建表結(jié)束336.337. /以下為插入字段338.339. insert into teac
34、her values(,glchengang,深圳一中,1976-10-10;340.341. insert into teacher values(,jack,深圳一中,1975-12-23;342.343. 注:在建表中(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的字符字段,而且缺省值為深圳。varchar 和char 有什么區(qū)別呢,只有等以后的文章再說(shuō)了。(4)將YEAR 設(shè)為日期字段。3
35、44.345. 如果你在mysql 提示符鍵入上面的命令也可以,但不方便調(diào)試。你可以將以上命令原樣寫入一個(gè)文本文件中假設(shè)為 school.sql,然后復(fù)制到c:下,并在DOS 狀態(tài)進(jìn)入目錄mysqlbin,然后鍵入以下命令:346.347. mysql -uroot -p密碼 < c:school.sql348.349. 如果成功,空出一行無(wú)任何顯示;如有錯(cuò)誤,會(huì)有提示。(以上命令已經(jīng)調(diào)試,你只要將/的注釋去掉即可使用)。350.351. 四、將文本數(shù)據(jù)轉(zhuǎn)到數(shù)據(jù)庫(kù)中352.353. 1、文本數(shù)據(jù)應(yīng)符合的格式:字段數(shù)據(jù)之間用tab 鍵隔開(kāi),null 值用n來(lái)代替. 354.355. 例:3
36、56.357. 3 rose 深圳二中 1976-10-10358.359. 4 mike 深圳一中 1975-12-23360.361. 2、數(shù)據(jù)傳入命令 load data local infile "文件名" into table 表名;362.363. 注意:你最好將文件復(fù)制到mysqlbin目錄下,并且要先用use 命令打表所在的庫(kù)。364.365. 五、備份數(shù)據(jù)庫(kù):(命令在DOS 的mysqlbin目錄下執(zhí)行)366. mysqldump -opt school>school.bbb367.368. 注釋:將數(shù)據(jù)庫(kù)school 備份到school.bbb
37、文件,school.bbb 是一個(gè)文本文件,文件名任取,打開(kāi)看看你會(huì)有新發(fā)現(xiàn)。369.370.371.372. mysql 命令行常用命令373.374. 第一招、mysql 服務(wù)的啟動(dòng)和停止375. net stop mysql376. net start mysql377. 第二招、登陸mysql378. 語(yǔ)法如下: mysql -u用戶名 -p用戶密碼379. 鍵入命令mysql -uroot -p, 回車后提示你輸入密碼,輸入12345,然后回車即可進(jìn)入到mysql 中了,mysql 的提示符是:380. mysql >381. 注意,如果是連接到另外的機(jī)器上,則需要加入一個(gè)參數(shù)
38、-h 機(jī)器IP382. 第三招、增加新用戶383. 格式:grant 權(quán)限 on 數(shù)據(jù)庫(kù).* to 用戶名登錄主機(jī) identified by "密碼"384. 如,增加一個(gè)用戶user1密碼為password1,讓其可以在本機(jī)上登錄, 并對(duì)所有數(shù)據(jù)庫(kù)有查詢、插入、修改、刪除的權(quán)限。首先用以root 用戶連入mysql ,然后鍵入以下命令:385. grant select,insert,update,delete on *.* to user1localhost Identified by "password1"386. 如果希望該用戶能夠在任何機(jī)器上
39、登陸mysql ,則將localhost 改為"%"。 387. 如果你不想user1有密碼,可以再打一個(gè)命令將密碼去掉。388. grant select,insert,update,delete on mydb.* to user1localhost identified by ""389. 第四招: 操作數(shù)據(jù)庫(kù)390. 登錄到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ù)存放著
40、mysql 的系統(tǒng)和用戶權(quán)限信息,我們改密碼和新增用戶,實(shí)際上就是對(duì)這個(gè)庫(kù)進(jìn)行操作。394. 2、 顯示庫(kù)中的數(shù)據(jù)表:395. use mysql;396. show tables;397. 3、 顯示數(shù)據(jù)表的結(jié)構(gòu):398. describe 表名;399. 4、 建庫(kù)與刪庫(kù):400. create database 庫(kù)名;401. drop database 庫(kù)名;402. 5、 建表:403. use 庫(kù)名;404. create table 表名(字段列表;405. drop table 表名;406. 6、 清空表中記錄:407. delete from 表名;408. 7、 顯示表中
41、的記錄:409. select * from 表名;410. 第五招、導(dǎo)出和導(dǎo)入數(shù)據(jù)411. 1. 導(dǎo)出數(shù)據(jù):412. mysqldump -opt test > mysql.test413. 即將數(shù)據(jù)庫(kù)test 數(shù)據(jù)庫(kù)導(dǎo)出到mysql.test 文件,后者是一個(gè)文本文件 414. 如:mysqldump -u root -p123456 -databases dbname > mysql.dbname 415. 就是把數(shù)據(jù)庫(kù)dbname 導(dǎo)出到文件mysql.dbname 中。416. 2. 導(dǎo)入數(shù)據(jù):417. mysqlimport -u root -p123456 <
42、mysql.dbname 。418. 不用解釋了吧。419. 3. 將文本數(shù)據(jù)導(dǎo)入數(shù)據(jù)庫(kù):420. 文本數(shù)據(jù)的字段數(shù)據(jù)之間用tab 鍵隔開(kāi)。421. use test;422. load data local infile "文件名" into table 表名;423.424. SQL 常用命令使用方法:425.426. (1 數(shù)據(jù)記錄篩選:427.428. sql ="select * from 數(shù)據(jù)表 where 字段名=字段值 order by 字段名 desc" 429.430. sql ="select * from 數(shù)據(jù)表 whe
43、re 字段名 like '%字段值%' order by 字段名 desc"431.432. sql ="select top 10 * from 數(shù)據(jù)表 where 字段名 order by 字段名 desc" 433.434. sql ="select * from 數(shù)據(jù)表 where 字段名 in ('值1',' 值2',' 值3'"435.436. sql ="select * from 數(shù)據(jù)表 where 字段名 between 值1 and 值2"4
44、37.438. (2 更新數(shù)據(jù)記錄:439.440. sql ="update 數(shù)據(jù)表 set 字段名=字段值 where 條件表達(dá)式"441.442. sql ="update 數(shù)據(jù)表 set 字段1=值1, 字段2=值2 字段n=值n where 條件表達(dá)式"443.444. (3 刪除數(shù)據(jù)記錄:445.446. sql ="delete from 數(shù)據(jù)表 where 條件表達(dá)式"447.448. sql ="delete from 數(shù)據(jù)表" (將數(shù)據(jù)表所有記錄刪除449.450. (4 添加數(shù)據(jù)記錄:451.
45、452. sql ="insert into 數(shù)據(jù)表 (字段1, 字段2, 字段3 valuess (值1, 值2, 值3 " 453.454. sql ="insert into 目標(biāo)數(shù)據(jù)表 select * from 源數(shù)據(jù)表" (把源數(shù)據(jù)表的記錄添加到目標(biāo)數(shù)據(jù)表455.456. (5 數(shù)據(jù)記錄統(tǒng)計(jì)函數(shù):457.458. AVG(字段名 得出一個(gè)表格欄平均值459. COUNT(*|字段名 對(duì)數(shù)據(jù)行數(shù)的統(tǒng)計(jì)或?qū)δ骋粰谟兄档臄?shù)據(jù)行數(shù)統(tǒng)計(jì) 460. MAX(字段名 取得一個(gè)表格欄最大的值461. MIN(字段名 取得一個(gè)表格欄最小的值462. SUM(字
46、段名 把數(shù)據(jù)欄的值相加463.464. 引用以上函數(shù)的方法:465.466. sql ="select sum(字段名 as 別名 from 數(shù)據(jù)表 where 條件表達(dá)式"467. set rs =conn .excute(sql468.469. 用 rs("別名" 獲取統(tǒng)的計(jì)值,其它函數(shù)運(yùn)用同上。470.471. (6 數(shù)據(jù)表的建立和刪除:472.473. CREATE TABLE 數(shù)據(jù)表名稱(字段1 類型1(長(zhǎng)度, 字段2 類型2(長(zhǎng)度 474.475. 例:CREATE TABLE tab01(name varchar(50,datetime d
47、efault now( 476.477. DROP TABLE 數(shù)據(jù)表名稱 (永久性刪除一個(gè)數(shù)據(jù)表478.479.480.481. select * from test.text where 1 *表示所有欄目 test指數(shù)據(jù)庫(kù)名text 指表名 where指條件482. Select remark as r id,uid from test.text where 指id uid 2欄顯示 as 就是給欄目命名483. select * from test.text where id>4 指ID 大于4的都顯示出來(lái)484. select * from test.text where id
48、<>4 指ID 不等于4的都出來(lái)485. select * from test.text where id =1 指ID 等于1的出來(lái)486. select * from test.text where id in(1,3,5 指找出ID 為1 3 5的 not in()則相反487. select * from test.text where uid like "%王%" 指UID 里只要帶王字的都出來(lái) %王 表示什么王 ,王%表示 王什么。488. select * from test.text where remark like "%學(xué)%&quo
49、t; 指remark 里帶學(xué)的都出來(lái) 489. select * from test.text where id between 1 and 10 and uid like "%王%"表示ID 1-10 并且 UID帶王字的出來(lái)490. select * from test.text where id not between 1 and 4 指ID 不在1-4里面的 出來(lái)491. (1 and 2 表示滿足1且滿足2 1 or 2 表示滿足1和滿足2 )and or可以連接很多條件492. select * from test.text group by remark 顯示
50、列出remark 有多少類別 如圖 有5類 group by 就是分組命令493.494. select * from test.text order by regdate asc 把regdate 按從小到大排列 495. ASC 不打就是默認(rèn)從小到大 DESC表示從大到小 如 order desc496. select * from test.text order by regdate asc,id desc 這樣就查詢出日期從小到大 然后在滿足日期的排列后 ID從大到小排列497. select * from test.text limit 0,5 表示取5條記錄 如果是3,6 那就是第
51、4-第9條記錄被取出 如圖498. 如過(guò)只寫一個(gè)6那就等于0,6499. select * from test.text group by remark order by regdate limit 6 先分組 再排序 LIMIT放最后 這是語(yǔ)法不能顛倒。500. select count(id from test.text count(表示查詢有多少條信息 這樣根據(jù)表顯示出10條501. select max(regdate from test.text max( 查詢最大值 只能針對(duì)數(shù)字 包括日期 根據(jù)表顯示出2008-10-22 14:41:30502. select min(regda
52、tefrom test.text min( 查詢最小值 只能針對(duì)數(shù)字 包括日期 根據(jù)表顯示出2008-10-07 13:21:32503. select avg(id from test.text avg( 查詢平均值 也只針對(duì)數(shù)字 包括日期 顯示出5.5 如算平均分?jǐn)?shù)504. select sum(id from test.text sum( 查詢累計(jì)值 數(shù)字包括日期 顯示出55 1+2+3+。10=55 如算總分?jǐn)?shù)505. insert 插入語(yǔ)句506. insert into text(id,uid,regdate,remarkvalues(null,'ken',now(
53、,'學(xué)生' 其中null 就是沒(méi)有 now(就是時(shí)間日期自動(dòng)生成507. 字段的類型要設(shè)計(jì)好。特別注意!508.509.510.511.512. Update 更改語(yǔ)句513. Update 表名 set 字段=值 where 條件 LIMIT(可省略)514. update test.text set uid ='kenchen' where id =11 意思是把ID 是11的UID 改成kenchen515.516. Delete 刪除語(yǔ)句517. Delete from 表命 where limit518. Delete from text where
54、id =3 意思是把ID =3的信息條刪除!519.520. mysql 字段類型說(shuō)明- -521.522.523. MySQL 支持大量的列類型,它可以被分為3類:數(shù)字類型、日期和時(shí)間類型以及字符串(字符 類型。本節(jié)首先給出可用類型的一個(gè)概述,并且總結(jié)每個(gè)列類型的存儲(chǔ)需求,然后提供每個(gè)類中的類型性質(zhì)的更詳細(xì)的描述。概述有意簡(jiǎn)化,更詳細(xì)的說(shuō)明應(yīng)該考慮到有關(guān)特定列類型的附加信息,例如你能為其指定值的允許格式。 524.525. 由MySQL 支持的列類型列在下面。下列代碼字母用于描述中:526.527. M528. 指出最大的顯示尺寸。最大的合法的顯示尺寸是 255 。529. D530. 適用
55、于浮點(diǎn)類型并且指出跟隨在十進(jìn)制小數(shù)點(diǎn)后的數(shù)碼的數(shù)量。最大可能的值是30,但是應(yīng)該不大于M-2。531. 方括號(hào)(“”和“”指出可選的類型修飾符的部分。532.533. 注意,如果你指定一個(gè)了為ZEROFILL ,MySQL 將為該列自動(dòng)地增加UNSIGNED屬性。534.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到16777215。544.545. IN
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 語(yǔ)言引導(dǎo)目標(biāo)檢測(cè)算法研究
- 二零二五年度建筑防水系統(tǒng)設(shè)計(jì)施工合同2篇
- 現(xiàn)代農(nóng)業(yè)產(chǎn)業(yè)園風(fēng)險(xiǎn)評(píng)估與應(yīng)對(duì)措施
- 冶金行業(yè)業(yè)務(wù)員工作總結(jié)
- 應(yīng)急響應(yīng)機(jī)制的建立
- 餐飲服務(wù)行業(yè)員工激勵(lì)策略
- 二零二五年度個(gè)人房地產(chǎn)居間傭金分配合同范本4篇
- 二零二五年度電子商務(wù)平臺(tái)商鋪入駐合作協(xié)議2篇
- 二零二五年度個(gè)人股份質(zhì)押合同樣本:有限責(zé)任公司股權(quán)融資專用2篇
- 部編版一年級(jí)語(yǔ)文下冊(cè)第18課《棉花姑娘》精美課件
- 英漢互譯單詞練習(xí)打印紙
- 2023湖北武漢華中科技大學(xué)招聘實(shí)驗(yàn)技術(shù)人員24人筆試參考題庫(kù)(共500題)答案詳解版
- 一氯二氟甲烷安全技術(shù)說(shuō)明書(shū)MSDS
- 母嬰護(hù)理員題庫(kù)
- 老年人預(yù)防及控制養(yǎng)老機(jī)構(gòu)院內(nèi)感染院內(nèi)感染基本知識(shí)
- SWITCH暗黑破壞神3超級(jí)金手指修改 版本號(hào):2.7.6.90885
- 2023高考語(yǔ)文全國(guó)甲卷詩(shī)歌閱讀題晁補(bǔ)之《臨江仙 身外閑愁空滿眼》講評(píng)課件
- 物流簽收回執(zhí)單
- 鋼結(jié)構(gòu)廠房造價(jià)指標(biāo)
- 安徽涵豐科技有限公司年產(chǎn)6000噸磷酸酯阻燃劑DOPO、4800噸磷酸酯阻燃劑DOPO衍生品、12000噸副產(chǎn)品鹽酸、38000噸聚合氯化鋁、20000噸固化劑項(xiàng)目環(huán)境影響報(bào)告書(shū)
- 寧騷公共政策學(xué)完整版筆記
評(píng)論
0/150
提交評(píng)論