mysql學(xué)習(xí)總結(jié).doc_第1頁
mysql學(xué)習(xí)總結(jié).doc_第2頁
mysql學(xué)習(xí)總結(jié).doc_第3頁
mysql學(xué)習(xí)總結(jié).doc_第4頁
mysql學(xué)習(xí)總結(jié).doc_第5頁
已閱讀5頁,還剩62頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、mysql學(xué)習(xí)筆記mysqldump 備份備份單獨庫下面的所有表mysqldump -uuname -ppassword db 地址+備份文件名稱備份某庫下的幾個表mysqldump -uuname -ppassword db table1 table2 table3 等 地址+備份文件名稱備份多個數(shù)據(jù)庫mysqldump -uuname -ppassword -B db1 db2 地址+備份文件名稱備份所有數(shù)據(jù)庫mysqldump -uuname -ppassword -A導(dǎo)出的是 建表語句和 insert語句注意:恢復(fù)文件的 地址形式 如 e:library.sql文件名稱 后沒有分號!恢

2、復(fù)1 登陸到 mysql命令行的狀態(tài)下庫級文件的恢復(fù)mysql source 備份文件地址表級文件的恢復(fù)mysql use 庫名mysql source 備份文件地址2 不登陸的情況下庫級的mysql -u用戶名 -p密碼 備份文件地址表級mysql -u用戶名 -p密碼 庫名通配任意字符_ -通配一個字符練習(xí):1 % -通配任意字符2 _ -通配一個字符笛卡爾積與連接查詢連接查詢 (左連接 右連接 內(nèi)連接)笛卡爾乘積集合特性: 確定性 無序性 唯一性一張表可以看做是一個集合,每行數(shù)據(jù)相當(dāng)于集合的一個元素Union時 去掉重復(fù)原理 就是集合元素的唯一性表中存在完全相同的兩行 是因為表內(nèi)部存在r

3、owid進行區(qū)分笛卡爾積如果aA, bBA*B = ( a, b);例如A=(1,2,3,4,5);B=(11,12);那么A*B(1,11), (2,11), (3,11), (4,11), (5,11),(1,12), (2,12), (3,12), (4,12), (5,12);A有M個元素B有N個元素那么A*B有M*N個元素同理表A有M行 表B有N行那么A*B有M*N行例如:ta tb兩表笛卡爾積通過分析可以看出tb表的ab cd每個分別和ta的a b c d組合一遍左連接1連上表2連接條件例如:selectgood_id,goods.cat_id,goods_name,shop_pr

4、icefromgoods left join categoryon good.cat_id = category.cat_id;字段名重復(fù)那么需要加表前綴,否則會報錯;error 1052(23000) column * in field list is ambiguous最后兩行可以看 作是一張表。左連接語法:select列1,列2,列Nfromtable 1left jointable 2ontable 1列= table 2列;on后面的條件只要是條件就可以 可以不是等于 但是常用是等于。將from后面的當(dāng)做一個普通表看待。右連接語法:select列1,列2,列Nfromtable 1r

5、ight jointable 2ontable 1列= table 2列;內(nèi)連接innerselect列1,列2,列Nfromtable 1inner jointable 2ontable 1列= table 2列;左連接 右連接 內(nèi)連接的區(qū)別和聯(lián)系:左連接和右連接 是以左邊的表為基準(zhǔn)。通俗的講,先將左邊的表全部顯示出來,然后右邊的表id與左邊表id相同的記錄就“拼接”上去,比如說id為1的記錄。如果沒有匹配的id,比如說t1中id為2的t2中就沒有。那邊就以null顯示。右外連接過程正好相反。內(nèi)連接 只有一條記錄。內(nèi)連接就是只取出符合過濾條件的記錄 也就是t1.id=t2.id 那么符合t1

6、.id=t2.id的記錄只有id=1這一條,所以只顯示一條。 不像外連接,是將你作為基準(zhǔn)的表(左外連接就是左邊表為基準(zhǔn),右外連接就是右邊表為基準(zhǔn))的所有行都顯示出來。以下為網(wǎng)上的一點資料(粘貼的)LEFT JOIN操作用于在任何的 FROM 子句中,組合來源表的記錄。使用 LEFT JOIN 運算來創(chuàng)建一個左邊外部聯(lián)接。左邊外部聯(lián)接將包含了從第一個(左邊)開始的兩個表中的全部記錄,即使在第二個(右邊)表中并沒有相符值的記錄。語法:FROM table1 LEFT JOIN table2 ON table1.field1 compopr table2.field2說明:table1, table

7、2參數(shù)用于指定要將記錄組合的表的名稱。field1, field2參數(shù)指定被聯(lián)接的字段的名稱。且這些字段必須有相同的數(shù)據(jù)類型及包含相同類型的數(shù)據(jù),但它們不需要有相同的名稱。compopr參數(shù)指定關(guān)系比較運算符:=, , = 或 。如果在INNER JOIN操作中要聯(lián)接包含Memo 數(shù)據(jù)類型或 OLE Object 數(shù)據(jù)類型數(shù)據(jù)的字段,將會發(fā)生錯誤mysql新的學(xué)習(xí)模式1 通過備份數(shù)據(jù)庫文件查看備份代碼學(xué)習(xí)sql 語句!你會發(fā)現(xiàn) 備份的語句和你 原本 建表語句是 略有不同的 更加標(biāo)準(zhǔn) 和 詳細2 備份的語句更加規(guī)范并且通過其文本明白備份原理;即 通過將建表 建庫 inser 語句等 進行備份并且

8、 可以表示文檔注釋 等等。子查詢(完整)from把內(nèi)層的查詢結(jié)果作為外層查詢比較查詢例:查最新商品(以goods_id最大為最新)1 select * from goods where goods_id =最大的gooods_id;2 select * from goods where goods_id = (select max(goods_id) from goods);where表達式則取出哪一行表達式在哪一行成立=,!= ,=in ,between andor,and,nothaving表達式數(shù)據(jù)在表中,表在硬盤或者內(nèi)存中以文件的形式存在where就是針對文件發(fā)生作用查詢結(jié)果,也可以看

9、做是一張表,去文件一般臨時存在于緩沖區(qū)having就是針對查詢結(jié)果發(fā)揮著作用group by分組一般和統(tǒng)計函數(shù)(sum ,avg,min,max)結(jié)合使用order by默認是升序的如果想顯示聲明升序排列可用asc來聲明可以字段名 desc來聲明降序排可以用來查詢商品等價格以及新舊注:可以按照多條件排序,前面的條件優(yōu)先!order by列1asc/desc,列2 asc/desc;exists把外層的查詢結(jié)果代入內(nèi)層,看內(nèi)層是否成立查詢商品欄目select * from category where exists(select * from goods where goods.cat_id =

10、categor.cat_id);cat_id字段相同需要加上表前綴limit在語句的最后起到限制顯示結(jié)果條目個數(shù)limit offset,N;offset表示偏移量(跳過幾個)N表示取出的條目個數(shù)如果offset不寫相當(dāng)于0#在mysql里表示注釋列操作(增加修改刪除列)列操作(增加 修改 刪除列)創(chuàng)建表單表單描述增加列1alter table列名add列聲明;列聲明列名稱 列類型 【列屬性】列默認值增加的列默認在表的的最后一列2alter table列名add列聲明after列;聲明 新增的列在原來哪個列后面3alter table列名add列聲明first;如果放在第一列 那么 在列聲明后

11、加first即可發(fā)現(xiàn)問題auto_increment的問題插入id使用auto_increment時要求列聲明里列必須被定義為key修改列alter table表名change被改變的列 列聲明原來:修改列:刪除列alter table表名drop列名 ;mysqlunion的用法union的用法(一般用于多張表的union)合并查詢結(jié)果將兩次或者兩次以上的結(jié)果合并在一起要求:兩次查詢的列數(shù)一致推薦,查詢每一列,相對應(yīng)的列類型是一樣的多次sql語句取出的列名可以不一致,此時以取第一個sql的列名為準(zhǔn)。如果不同的語句中取出的行有每個列的值都相同,那么相同的行將被合并成一行(去重復(fù))如果不想去重復(fù)

12、union加上all創(chuàng)建表格create table ta(id char(1) default null,num int not null default 0) engine=InnoDBcharset=utf8;insert into ta(id,num)values(a,10),(b,20),(c,30),(d,40);create table tb(id char(1) default null,num int not null default 0) engine=InnoDBcharset=utf8;insert into tb(id,num)values(a,50),(b,60),

13、(c,70),(d,80);1合并 兩張表格2 合并兩張表單把相同id下的數(shù)值sum求和發(fā)現(xiàn)問題使用聚合函數(shù)時不許有空格Sum(num)Sum (num)將會把sum識別為表報該數(shù)據(jù)庫下不存在該表單錯誤Error 1630(42000)注意:如果子句里有order by | limit需要union兩邊加小括號例如(selectgood_id,cat_id,goods_name,shop_price from goods _id =where cat_id = 4 order byshop_price desc)union (selectgood_id,cat_id,goods_name,sh

14、op_price from goods _id =wherecat_id = 5 order by shop_price desc);但是容易有誤解決方案1order by盡量放在最后使用即歲最終合并后的結(jié)果進行排序(selectgood_id,cat_id,goods_name,shop_price from goods _id =where cat_id = 4)union(selectgood_id,cat_id,goods_name,shop_price from goods _id =where cat_id = 5order byshop_price desc;2每個子語句加上li

15、mitmysql視圖視圖的定義:視圖 就是由查詢結(jié)果組成的一張?zhí)摂M表視圖的創(chuàng)建語法:create view視圖名asselect 語句;顯示表 將會被顯示出來可以看到“表結(jié)構(gòu)”和視圖內(nèi)容刪除視圖語法:drop view視圖名;視圖修改alter view視圖名 as select語句;創(chuàng)建視圖的原因:1、 簡化查詢2、可以進行權(quán)限控制比如:可以把 商品名稱 等創(chuàng)建視圖,把商品價格等“隱藏”。把表的權(quán)限保留,只把視圖提供給別人。3、大的數(shù)據(jù)分表時,可以用到數(shù)據(jù)。比如:表的行數(shù)大于200 萬行時,開始變慢,可以把一張表的數(shù)據(jù)拆成4張表(視圖)來存放。4、可以將多張表合并成一張表(視圖)。結(jié)合uni

16、on .注意:1、可以完全把視圖當(dāng)作表看待。2、視圖源于表,如果表的內(nèi)容改變了,那么視圖的內(nèi)容也會跟著發(fā)生改變。3、視圖的增刪改也將會影響表,但是視圖并不是總是可以增刪改的。視圖和表數(shù)據(jù)是一一對應(yīng)時,可以修改。對于視圖insert視圖必須包含所有表中沒有默認值的列。視圖的algorithm(算法)Algorithm = merge/temptable/undefinedmerge當(dāng)引用視圖時,引用視圖的語句和定義視圖的語句合并。意味著,視圖只是一個規(guī)則,當(dāng)查詢視圖時,把查詢視圖的語句(比如where等)與創(chuàng)建時的語句where子句合并分析,形成一條select語句。相當(dāng)于把語句效果疊加。tem

17、ptable當(dāng)引用視圖時,根據(jù)視圖的創(chuàng)建語句,建立一個臨時表。是把 根據(jù)創(chuàng)建時候的語句瞬間創(chuàng)建臨時表,查詢視圖的語句,從該臨時表查詢。undefined未定義自動,讓系統(tǒng)幫你選擇。mysql字符集(CHARACTERSET)和校對集(COLLATE)字符集(CHARACTER SET)和校對集(COLLATE)字符集:可以設(shè)置 服務(wù)器默認字符集數(shù)據(jù)庫默認字符集表默認字符集甚至到列默認字符集某個級別沒有指定,那么繼承上級。mysql4.1及其之后的版本,對字符集的支持分為四個層次:服務(wù)器(server),數(shù)據(jù)庫(database),數(shù)據(jù)表(table)和連接(connection):charac

18、ter_set_server:這是設(shè)置服務(wù)器使用的字符集character_set_client:這是設(shè)置客戶端發(fā)送查詢使用的字符集character_set_connection:這是設(shè)置服務(wù)器需要將收到的查詢串轉(zhuǎn)換成的字符集character_set_results:這是設(shè)置服務(wù)器要將結(jié)果數(shù)據(jù)轉(zhuǎn)換到的字符集,轉(zhuǎn)換后才發(fā)送給客戶端整個過程:-client(如php程序)發(fā)送一個查詢;- 服務(wù)器收到查詢,將查詢串從character_set_client轉(zhuǎn)換到character_set_connection,然后執(zhí)行轉(zhuǎn)換后的查詢;- 服務(wù)器將結(jié)果數(shù)據(jù)轉(zhuǎn)換到character_set_resul

19、ts字符集后發(fā)送回客戶端。1、告訴服務(wù)器發(fā)送的數(shù)據(jù)是什么類型的。character_set_client2、告訴轉(zhuǎn)換器,轉(zhuǎn)換什么編碼character_set_connection3、查詢結(jié)果用什么編碼character_set_results如果三者都是字符集N那么可以簡寫為set names N;例如:客戶端字符集和連接字符集如果connection和服務(wù)器的字符集,比client小時,容易丟失數(shù)據(jù)。create table時的charset是服務(wù)器的字符編碼校對集:可以理解為,排序規(guī)則等。一個字符集可能有多種校對集合;-官方文檔-1、數(shù)據(jù)庫字符集和校對CREATE DATABASEdb_

20、nameDEFAULT CHARACTER SETcharset_nameDEFAULT COLLATEcollation_name例如:CREATE DATABASEdb_nameDEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci;MySQL這樣選擇數(shù)據(jù)庫字符集和數(shù)據(jù)庫校對規(guī)則:如果指定了CHARACTER SET X和COLLATE Y,那么采用字符集X和校對規(guī)則Y。如果指定了CHARACTER SET X而沒有指定COLLATE Y,那么采用CHARACTER SET X和CHARACTER SET X的默認校對規(guī)則。否則,采用服

21、務(wù)器字符集和服務(wù)器校對規(guī)則。2、表字符集和校對每一個表有一個表字符集和一個校對規(guī)則,它不能為空。為指定表字符集和校對規(guī)則,CREATE TABLE和ALTER TABLE語句有一個可選的子句:CREATE TABLEtbl_name(column_list)DEFAULT CHARACTER SETcharset_nameCOLLATEcollation_nameALTER TABLEtbl_nameDEFAULT CHARACTER SETcharset_name COLLATEcollation_nameMySQL按照下面的方式選擇表字符集和校對規(guī)則:如果指定了CHARACTER SET

22、X和COLLATE Y,那么采用CHARACTER SET X和COLLATE Y。如果指定了CHARACTER SET X而沒有指定COLLATE Y,那么采用CHARACTER SET X和CHARACTER SET X的默認校對規(guī)則。否則,采用服務(wù)器字符集和服務(wù)器校對規(guī)則。如果在列定義中沒有指定列字符集和校對規(guī)則,則默認使用表字符集和校對規(guī)則。表字符集和校對規(guī)則是MySQL的擴展;在標(biāo)準(zhǔn)SQL中沒有。3、列字符集和校對每一個“字符”列(即,CHAR、VARCHAR或TEXT類型的列)有一個列字符集和一個列校對規(guī)則,它不能為空。列定義語法有一個可選子句來指定列字符集和校對規(guī)則:col_na

23、meCHAR | VARCHAR | TEXT (col_length)CHARACTER SETcharset_nameCOLLATEcollation_name例如:CREATE TABLE Table1(column1 VARCHAR(5) CHARACTER SET latin1 COLLATE latin1_german1_ci);MySQL按照下面的方式選擇列字符集和校對規(guī)則:如果指定了CHARACTER SET X和COLLATE Y,那么采用CHARACTER SET X和COLLATE Y。如果指定了CHARACTER SET X而沒有指定COLLATE Y,那么采用CHAR

24、ACTER SET X和CHARACTER SET X的默認校對規(guī)則。否則,采用表字符集和服務(wù)器校對規(guī)則。CHARACTER SET和COLLATE子句是標(biāo)準(zhǔn)的SQL。示例1:表和列定義CREATE TABLE t1(c1 CHAR(10) CHARACTER SET latin1 COLLATE latin1_german1_ci) DEFAULT CHARACTER SET latin2 COLLATE latin2_bin;在這里我們有一個列使用latin1字符集和latin1_german1_ci校對規(guī)則。是顯式的定義,因此簡單明了。需要注意的是,在一個latin2表中存儲一個lati

25、n1列不會存在問題。示例2:表和列定義CREATE TABLE t1(c1 CHAR(10) CHARACTER SET latin1) DEFAULT CHARACTER SET latin1 COLLATE latin1_danish_ci;這次我們有一個列使用latin1字符集和一個默認校對規(guī)則。盡管它顯得自然,默認校對規(guī)則卻不是表級。相反,因為latin1的默認校對規(guī)則總是latin1_swedish_ci,列c1有一個校對規(guī)則latin1_swedish_ci(而不是latin1_danish_ci)。示例3:表和列定義CREATE TABLE t1(c1 CHAR(10) DEFA

26、ULT CHARACTER SET latin1 COLLATE latin1_danish_ci;我們有一個列使用一個默認字符集和一個默認校對規(guī)則。在這種情況下,MySQL查找表級別來確定列字符集和校對規(guī)則。因此,列c1的字符集是latin1,它的校對規(guī)則是latin1_danish_ci。示例4:數(shù)據(jù)庫、表和列定義CREATE DATABASE d1DEFAULT CHARACTER SET latin2 COLLATE latin2_czech_ci;USE d1;CREATE TABLE t1(c1 CHAR(10);我們創(chuàng)建了一個沒有指定字符集和校對規(guī)則的列。我們也沒有指定表級字符集

27、和校對規(guī)則。在這種情況下,MySQL查找數(shù)據(jù)庫級的相關(guān)設(shè)置。(數(shù)據(jù)庫的設(shè)置變?yōu)楸淼脑O(shè)置,其后變?yōu)榱械脑O(shè)置。)因此,列c1的字符集為是latin2,它的校對規(guī)則是latin2_czech_ci。在SQL語句中使用COLLATE 使用COLLATE子句,能夠為一個比較覆蓋任何默認校對規(guī)則。COLLATE可以用于多種SQL語句中。下面是一些例子:使用ORDER BY:SELECT kFROM t1ORDER BY k COLLATE latin1_german2_ci;使用AS:SELECT k COLLATE latin1_german2_ci AS k1FROM t1ORDER BY k1;使用

28、GROUP BY:SELECT kFROM t1GROUP BY k COLLATE latin1_german2_ci;使用聚合函數(shù):SELECT MAX(k COLLATE latin1_german2_ci)FROM t1;使用DISTINCT:SELECT DISTINCT k COLLATE latin1_german2_ciFROM t1;使用WHERE:SELECT *FROM t1WHERE _latin1 Mller COLLATE latin1_german2_ci = k;SELECT *FROM t1WHERE k LIKE _latin1 Mller COLLATE

29、latin1_german2_ci;使用HAVING:SELECT kFROM t1GROUP BY kHAVING k = _latin1 Mller COLLATE latin1_german2_ci;COLLATE子句優(yōu)先COLLATE子句有較高的優(yōu)先級(高于|),因此下面兩個表達式是等價的:x | y COLLATE zx | (y COLLATE z)觸發(fā)器(trigger)作用: 可以監(jiān)視 增刪改操作并觸發(fā) 增刪改操作創(chuàng)建觸發(fā)器(delimiter $)create trigger 觸發(fā)器名稱after/before insert/update/delete on 表名for ea

30、ch rowbegin sql 語句一個或者多個語句,范圍在 insert/update/delete內(nèi);end ($)在此需要重新設(shè)置結(jié)束符號delimiter $創(chuàng)建第一個簡單觸發(fā)器:效果g 表 羊自動減少 3只發(fā)現(xiàn)問題:設(shè)置結(jié)尾符號語句 不可帶 分號否則設(shè)置不成功解決方案如何在觸發(fā)器中引用行的值對于insert 而言 ,新增的行用new來表示。行中的每一列的值,用 new.列名來表示。對于delete而言,刪去的行用 old來表示。行中的每一列的值,用old.列名來表示。對于update而言,更新前的行用 old來表示。old.列名表示更新前的引用。更新后的行,用new.列名來表示更新后

31、的引用。觸發(fā)器的刪除drop trigger 觸發(fā)器名稱觸發(fā)器的顯示清空表單truncate 表名購買下單實例1、創(chuàng)建滿足條件的新的觸發(fā)器2、執(zhí)行 insert(下第一筆訂單 購買 4 號商品,數(shù)量為2)3、查看o訂單4、g商品表中的 對應(yīng)id號得商品減少 完整購買案例1、增加一個訂單,庫存相應(yīng)減少2、刪除一個訂單,庫存相應(yīng)增加3、修改下單時,商品表數(shù)量相應(yīng)發(fā)生變化觸發(fā)器里 after 和 before的區(qū)別after 是先完成數(shù)據(jù)的操作,再出發(fā)時間,不能對前面的增刪改作出影響。如果用的是 before,可以對數(shù)據(jù)進行審查。是先于觸發(fā)再完成增刪改,可以審查、判斷、即將發(fā)生的增刪改操作。befo

32、re應(yīng)用創(chuàng)建觸發(fā)器時即可對插入數(shù)據(jù)進行影響create trigger buybefore insert on ofor each rowbegin if new.much 5 then set new.much=5; end if; update g set num = num -new.much where id = new.gid;end$索引注意:1、 不要過度索引2、 索引條件列(where后面最頻繁的條件列)3、 盡量索引散列值,過于集中的值不要索引。索引類型1、普通索引(index):僅僅是加快查詢速度2、唯一索引(unique index):行上的值不能重復(fù)3、主鍵索引(pri

33、mary key):主鍵不能索引主鍵索引必定是唯一的,唯一索引不一定是主鍵,一張表上只能一個主鍵,可以有一個或者多個唯一索引。4、 全文索引(fulltext index):在mysql 默認情況下對于中文作用不大。查看 一張表上的索引show index from 表名 (/G可以橫著顯示)索引不知道名稱默認以索引的列名作索引建立索引alter table 表名 add index/unique/fulltext 索引名(列名) 索引名可以不寫 ,不寫默認與列名相同。alter table 表名 add primary key (列名)創(chuàng)建索引示例:為 tel列 創(chuàng)建普通索引為email列

34、添加唯一索引為intro列添加全文索引為id列添加主鍵刪除索引alter table drop index 索引名示例:刪除email(唯一)索引刪除主鍵索引全文索引使用查看匹配度select 列名, match (索引) against ( 索引詞) from表名;新發(fā)現(xiàn) as 支持 漢字全文停止字:全文索引,不針對非常頻繁的詞,做索引。針對漢語意義不大,因為因為英文單詞可以依賴空格等標(biāo)點來判斷單詞界限,進而對單詞進行索引,而中文mysql無法識別單詞界限。以下表列出了默認的全文停止字:asableaboutaboveaccordingaccordinglyacrossactuallyaft

35、erafterwardsagainagainstaintallallowallowsalmostalonealongalreadyalsoalthoughalwaysamamongamongstanandanotheranyanybodyanyhowanyoneanythinganywayanywaysanywhereapartappearappreciateappropriatearearentaroundasasideaskaskingassociatedatavailableawayawfullybebecamebecausebecomebecomesbecomingbeenbefore

36、beforehandbehindbeingbelievebelowbesidebesidesbestbetterbetweenbeyondbothbriefbutbycmoncscamecancantcannotcantcausecausescertaincertainlychangesclearlycocomcomecomesconcerningconsequentlyconsiderconsideringcontaincontainingcontainscorrespondingcouldcouldntcoursecurrentlydefinitelydescribeddespitedid

37、didntdifferentdodoesdoesntdoingdontdonedowndownwardsduringeacheduegeighteitherelseelsewhereenoughentirelyespeciallyetetcevenevereveryeverybodyeveryoneeverythingeverywhereexexactlyexampleexceptfarfewfifthfirstfivefollowedfollowingfollowsforformerformerlyforthfourfromfurtherfurthermoregetgetsgettinggi

38、vengivesgogoesgoinggonegotgottengreetingshadhadnthappenshardlyhashasnthavehaventhavingheheshellohelphenceherherehereshereafterherebyhereinhereuponhersherselfhihimhimselfhishitherhopefullyhowhowbeithoweveridillimiveieifignoredimmediateininasmuchincindeedindicateindicatedindicatesinnerinsofarinsteadin

39、toinwardisisntititditllitsitsitselfjustkeepkeepskeptknowknowsknownlastlatelylaterlatterlatterlyleastlesslestletletslikelikedlikelylittlelooklookinglooksltdmainlymanymaymaybememeanmeanwhilemerelymightmoremoreovermostmostlymuchmustmymyselfnamenamelyndnearnearlynecessaryneedneedsneithernevernevertheles

40、snewnextninenonobodynonnonenoonenornormallynotnothingnovelnownowhereobviouslyofoffoftenohokokayoldononceoneonesonlyontoorotherothersotherwiseoughtouroursourselvesoutoutsideoveroverallownparticularparticularlyperperhapsplacedpleasepluspossiblepresumablyprobablyprovidesquequiteqvratherrdrereallyreason

41、ablyregardingregardlessregardsrelativelyrespectivelyrightsaidsamesawsaysayingsayssecondsecondlyseeseeingseemseemedseemingseemsseenselfselvessensiblesentseriousseriouslysevenseveralshallsheshouldshouldntsincesixsosomesomebodysomehowsomeonesomethingsometimesometimessomewhatsomewheresoonsorryspecifieds

42、pecifyspecifyingstillsubsuchsupsuretstaketakentelltendsththanthankthanksthanxthatthatsthatsthetheirtheirsthemthemselvesthenthencetheretheresthereaftertherebythereforethereintheresthereuponthesetheytheydtheylltheyretheyvethinkthirdthisthoroughthoroughlythosethoughthreethroughthroughoutthruthustotoget

43、hertootooktowardtowardstriedtriestrulytrytryingtwicetwoununderunfortunatelyunlessunlikelyuntiluntoupuponususeusedusefulusesusingusuallyvaluevariousveryviavizvswantwantswaswasntwaywewedwellwerewevewelcomewellwentwerewerentwhatwhatswhateverwhenwhencewheneverwherewhereswhereafterwhereaswherebywhereinwh

44、ereuponwhereverwhetherwhichwhilewhitherwhowhoswhoeverwholewhomwhosewhywillwillingwishwithwithinwithoutwontwonderwouldwouldwouldntyesyetyouyoudyoullyoureyouveyouryoursyourselfyourselveszero注意!換服務(wù)器導(dǎo)入數(shù)據(jù):大數(shù)據(jù)量時,先把索引去掉,導(dǎo)入后,統(tǒng)一加上索引。索引加快查詢速度,降低增刪改的速度。額外:show create table 表名 可以查看 創(chuàng)建表的語句發(fā)現(xiàn)問題使用全文索引時加上引擎存儲引擎最常見的

45、是:Mysam和 innoDB數(shù)據(jù)庫的engine顯示MyISAM ,批量插入速度快,不支持事務(wù),鎖表InnoDB 批量插入相對較慢,支持事務(wù),鎖行-官方文檔-beginMySQL插件式存儲引擎的體系結(jié)構(gòu)下述存儲引擎是最常用的:MyISAM:默認的MySQL插件式存儲引擎,它是在Web、數(shù)據(jù)倉儲和其他應(yīng)用環(huán)境下最常使用的存儲引擎之一。注意,通過更改STORAGE_ENGINE配置變量,能夠方便地更改MySQL服務(wù)器的默認存儲引擎。InnoDB:用于事務(wù)處理應(yīng)用程序,具有眾多特性,包括ACID事務(wù)支持。BDB:可替代InnoDB的事務(wù)引擎,支持COMMIT、ROLLBACK和其他事務(wù)特性。Memory:將所有數(shù)據(jù)保存在RAM中,在需要快速查找引用和其他類似

溫馨提示

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

評論

0/150

提交評論