1、選取最適用的字段屬性,盡可能減少定義字段長度,盡量把字段設(shè)置NOT NULL,例如'省份,性別',最好設(shè)置為ENUM
創(chuàng)新互聯(lián)公司專注于高青網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供高青營銷型網(wǎng)站建設(shè),高青網(wǎng)站制作、高青網(wǎng)頁設(shè)計(jì)、高青網(wǎng)站官網(wǎng)定制、微信小程序服務(wù),打造高青網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供高青網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
2、使用連接(JOIN)來代替子查詢:
a.刪除沒有任何訂單客戶:DELETE FROM customerinfo WHERE customerid NOT in(SELECT customerid FROM orderinfo)
b.提取所有沒有訂單客戶:SELECT FROM customerinfo WHERE customerid NOT in(SELECT customerid FROM orderinfo)
c.提高b的速度優(yōu)化:SELECT FROM customerinfo LEFT JOIN orderid customerinfo.customerid=orderinfo.customerid
WHERE orderinfo.customerid IS NULL
3、使用聯(lián)合(UNION)來代替手動(dòng)創(chuàng)建的臨時(shí)表
a.創(chuàng)建臨時(shí)表:SELECT name FROM `nametest` UNION SELECT username FROM `nametest2`
4、事務(wù)處理:
a.保證數(shù)據(jù)完整性,例如添加和修改同時(shí),兩者成立則都執(zhí)行,一者失敗都失敗
mysql_query("BEGIN");
mysql_query("INSERT INTO customerinfo (name) VALUES ('$name1')";
mysql_query("SELECT * FROM `orderinfo` where customerid=".$id");
mysql_query("COMMIT");
5、鎖定表,優(yōu)化事務(wù)處理:
a.我們用一個(gè) SELECT 語句取出初始數(shù)據(jù),通過一些計(jì)算,用 UPDATE 語句將新值更新到表中。
包含有 WRITE 關(guān)鍵字的 LOCK TABLE 語句可以保證在 UNLOCK TABLES 命令被執(zhí)行之前,
不會(huì)有其它的訪問來對(duì) inventory 進(jìn)行插入、更新或者刪除的操作
mysql_query("LOCK TABLE customerinfo READ, orderinfo WRITE");
mysql_query("SELECT customerid FROM `customerinfo` where id=".$id);
mysql_query("UPDATE `orderinfo` SET ordertitle='$title' where customerid=".$id);
mysql_query("UNLOCK TABLES");
6、使用外鍵,優(yōu)化鎖定表
a.把customerinfo里的customerid映射到orderinfo里的customerid,
任何一條沒有合法的customerid的記錄不會(huì)寫到orderinfo里
CREATE TABLE customerinfo
(
customerid INT NOT NULL,
PRIMARY KEY(customerid)
)TYPE = INNODB;
CREATE TABLE orderinfo
(
orderid INT NOT NULL,
customerid INT NOT NULL,
PRIMARY KEY(customerid,orderid),
FOREIGN KEY (customerid) REFERENCES customerinfo
(customerid) ON DELETE CASCADE
)TYPE = INNODB;
注意:'ON DELETE CASCADE',該參數(shù)保證當(dāng)customerinfo表中的一條記錄刪除的話同時(shí)也會(huì)刪除order
表中的該用戶的所有記錄,注意使用外鍵要定義事務(wù)安全類型為INNODB;
7、建立索引:
a.格式:
(普通索引)-
創(chuàng)建:CREATE INDEX 索引名 ON tablename (索引字段)
修改:ALTER TABLE tablename ADD INDEX [索引名] (索引字段)
創(chuàng)表指定索引:CREATE TABLE tablename([...],INDEX[索引名](索引字段))
(唯一索引)-
創(chuàng)建:CREATE UNIQUE 索引名 ON tablename (索引字段)
修改:ALTER TABLE tablename ADD UNIQUE [索引名] (索引字段)
創(chuàng)表指定索引:CREATE TABLE tablename([...],UNIQUE[索引名](索引字段))
(主鍵)-
它是唯一索引,一般在創(chuàng)建表是建立,格式為:
CREATA TABLE tablename ([...],PRIMARY KEY[索引字段])
8、優(yōu)化查詢語句
a.最好在相同字段進(jìn)行比較操作,在建立好的索引字段上盡量減少函數(shù)操作
例子1:
SELECT * FROM order WHERE YEAR(orderDate)2008;(慢)
SELECT * FROM order WHERE orderDate"2008-01-01";(快)
例子2:
SELECT * FROM order WHERE addtime/724;(慢)
SELECT * FROM order WHERE addtime24*7;(快)
例子3:
SELECT * FROM order WHERE title like "%good%";
SELECT * FROM order WHERE title="good" and name"good";
你好
修改表的數(shù)據(jù)一般使用update語句
具體的話參考相關(guān)SQL文檔吧
不是幾句話能說明白的
祝你好運(yùn)
望采納
1、在mysql安裝完成后,要修改數(shù)據(jù)庫存儲(chǔ)的位置,比如從安裝目錄下的E:\Program
Files
(x86)\MySQL\data文件夾轉(zhuǎn)移到D:\mydata文件夾。
2、在D:\下新建mydata文件夾
3、cmd進(jìn)入dos窗口,輸入net
stop
mysql停止MySQL服務(wù),將C:\ProgramData\MySQL\MySQL
Server
5.5\data(其中ProgramData為隱藏文件夾)下的文件夾和文件一起拷貝到D:\mydata文件夾下
4、在安裝目錄下找到my.ini文件,找到:
#Path
to
the
database
root
datadir="C:/ProgramData/MySQL/MySQL
Server
5.5/Data/"
將datadir的值更改為datadir="D:/mydata/"
5、保存后,cmd進(jìn)入dos窗口,輸入net
start
mysql重新啟動(dòng)mySQL服務(wù)即可。
名稱欄目:mysql數(shù)據(jù)庫怎么調(diào)整 mysql數(shù)據(jù)庫怎么修改數(shù)據(jù)
當(dāng)前地址:http://jinyejixie.com/article16/hpcigg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、品牌網(wǎng)站設(shè)計(jì)、商城網(wǎng)站、做網(wǎng)站、虛擬主機(jī)、網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)