來自MySQL的學(xué)習(xí)筆記,寫的不對的地方大家多多指教哦
創(chuàng)新互聯(lián)建站長期為1000+客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為團(tuán)風(fēng)企業(yè)提供專業(yè)的成都網(wǎng)站建設(shè)、成都做網(wǎng)站,團(tuán)風(fēng)網(wǎng)站改版等技術(shù)服務(wù)。擁有十年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
SELECT、DISTINCT、FROM、JOIN、ON、WHERE、GROUP BY、HAVING、SUM、COUNT、MAX、AVG、ORDER BY、LIMIT
SELECT-DISTINCT-FROM-JOIN-ON-WHERE-GROUP BY-HAVING-ORDER BY-LIMIT
必須字段:SELECT、FROM
可選字段:DISTINCT、JOIN、ON、WHERE、GROUP BY、HAVING、SUM、COUNT、MAX、AVG、ORDER BY、LIMIT
FROM-ON-JOIN-WHERE-GROUP BY(開始使用SELECT中的別名,后面的語句中都可以使用別名)-SUM、COUNT、MAX、AVG-HAVING-SELECT-DISTINCT-ORDER BY-LIMIT
FROM:從哪個表中檢索數(shù)據(jù)
ON:關(guān)聯(lián)條件,與join一起使用
JOIN:對需要關(guān)聯(lián)的表進(jìn)行關(guān)聯(lián)
WHERE:過濾數(shù)據(jù)條件,執(zhí)行順序:自下而上、從右到左
GROUP BY:將過濾的數(shù)據(jù)進(jìn)行分組,執(zhí)行順序:從左往右
SUM:求和
COUNT:數(shù)量統(tǒng)計
MAX:最大值
AVG:求平均值
HAVING:對分組的數(shù)據(jù)過濾條件,與group by一起使用
SELECT:查看結(jié)果集
DISTINCT:結(jié)果集去重
ORDER BY:排序,升序:ASC;降序:DESC
LIMIT:截取出目標(biāo)頁數(shù)據(jù)
詳細(xì)用法會在后面進(jìn)行補充
首先創(chuàng)建一張表,添加字段,表名字為:goodsmaster
添加數(shù)據(jù)的語法結(jié)構(gòu)為:
添加數(shù)據(jù)可以是插入數(shù)據(jù)或插入查詢的結(jié)果
1.1 插入數(shù)據(jù)
運行語句,查詢結(jié)果:SELECT * FROM goodsmaster
部分字段有做非空約束,那么這邊插入部分?jǐn)?shù)據(jù),驗證下非空約束
上面的語句運行之后會報錯,錯誤內(nèi)容為“[Err] 1364 - Field 'barcode' doesn't have a default value”,即“barcode”這個字段有創(chuàng)建非空約束,表示這個字段不能為空,如果插入數(shù)據(jù)時不給這個字段賦值,那么就需要給它一個默認(rèn)值。
部分字段沒有默認(rèn)值,可以為空,那么現(xiàn)在驗證一下插入數(shù)據(jù)時,這些字段不進(jìn)行賦值會有什么結(jié)果
運行語句,查詢結(jié)果:SELECT * FROM goodsmaster
仔細(xì)看會發(fā)現(xiàn),上面的語句中插入數(shù)據(jù)也沒有插入“itemnumber”字段,這個字段有添加主鍵約束,不能為空,但由于設(shè)置了自增約束,所以沒有賦值也會自動在當(dāng)前字段最大值+1,這就是自增約束;
上面的語句顯示沒有進(jìn)行賦值的字段會默認(rèn)顯示Null。
1.2 插入查詢結(jié)果
MySQL 支持把查詢的結(jié)果插入到數(shù)據(jù)表中,我們可以指定字段,甚至是數(shù)值,插入到數(shù)據(jù)表中。
語法結(jié)構(gòu)為:
刪除語句使用DELETE刪除,語法結(jié)構(gòu)為:
刪除記錄可以使用WHERE來篩選刪除的數(shù)據(jù),下面為刪除“barcode”字段數(shù)據(jù)為006的記錄
由于部分?jǐn)?shù)據(jù)可以為空,所以再刪除的時候,WHERE的過濾條件必須用到主鍵約束或者唯一性約束的字段。MySQL 的這種安全性設(shè)置,主要就是為了防止刪除或者修改數(shù)據(jù)時出現(xiàn)誤操作,導(dǎo)致刪除或修改了不相關(guān)的數(shù)據(jù)。
刪除表中的全部數(shù)據(jù)
MySQL中用UPDATE來修改數(shù)據(jù),語法結(jié)構(gòu)為:
注意:不要修改主鍵字段的值。因為主鍵是數(shù)據(jù)記錄的唯一標(biāo)識,如果修改了主鍵的值,就有可能會破壞數(shù)據(jù)的完整性。
語法結(jié)構(gòu):
具體需要用到的關(guān)鍵字查看本文第一部分即可
數(shù)據(jù)庫中增刪改查基本語句:INSERT INTO,表名字段列表。
數(shù)據(jù)庫是存放數(shù)據(jù)的倉庫。它的存儲空間很大,可以存放百萬條、千萬條、上億條數(shù)據(jù)。但是數(shù)據(jù)庫并不是隨意地將數(shù)據(jù)進(jìn)行存放,是有一定的規(guī)則的,否則查詢的效率會很低。
當(dāng)今世界是一個充滿著數(shù)據(jù)的互聯(lián)網(wǎng)世界,充斥著大量的數(shù)據(jù)。即這個互聯(lián)網(wǎng)世界就是數(shù)據(jù)世界。數(shù)據(jù)的來源有很多,比如出行記錄、消費記錄、瀏覽的網(wǎng)頁、發(fā)送的消息等等。除了文本類型的數(shù)據(jù),圖像、音樂、聲音都是數(shù)據(jù)。
在數(shù)據(jù)庫的發(fā)展歷史上,數(shù)據(jù)庫先后經(jīng)歷了層次數(shù)據(jù)庫、網(wǎng)狀數(shù)據(jù)庫和關(guān)系數(shù)據(jù)庫等各個階段的發(fā)展,數(shù)據(jù)庫技術(shù)在各個方面的快速的發(fā)展。特別是關(guān)系型數(shù)據(jù)庫已經(jīng)成為目前數(shù)據(jù)庫產(chǎn)品中最重要的一員。
80年代以來,幾乎所有的數(shù)據(jù)庫廠商新出的數(shù)據(jù)庫產(chǎn)品都支持關(guān)系型數(shù)據(jù)庫,即使一些非關(guān)系數(shù)據(jù)庫產(chǎn)品也幾乎都有支持關(guān)系數(shù)據(jù)庫的接口。
這主要是傳統(tǒng)的關(guān)系型數(shù)據(jù)庫可以比較好的解決管理和存儲關(guān)系型數(shù)據(jù)的問題。隨著云計算的發(fā)展和大數(shù)據(jù)時代的到來,關(guān)系型數(shù)據(jù)庫越來越無法滿足需要,這主要是由于越來越多的半關(guān)系型和非關(guān)系型數(shù)據(jù)需要用數(shù)據(jù)庫進(jìn)行存儲管理。
mysql的增刪改查語句是怎么寫的,跟sql有什么區(qū)別,基本沒區(qū)別,都差不多,特殊的查詢有區(qū)別。比如限制結(jié)果就不是top了,而是limit 3,5。mysql數(shù)據(jù)庫備份跟附加是不是必須要關(guān)閉tomcat,這個沒必要,直接可以操作,不過如果程序做過映射,那要重新裝載。
往數(shù)據(jù)中插入數(shù)據(jù),在詢問框中填寫 ?INSERT INTO biao1(name1,age) VALUES('新增加1','1000')然后點擊執(zhí)行按鈕 ,如果成功會顯示執(zhí)行一條語句,在運行查詢所有語句會發(fā)現(xiàn)新插入的信息也能查詢出來。
圖書簡介
MySQL數(shù)據(jù)庫是以“客戶端/服務(wù)器”模式實現(xiàn)的,是一個多用戶、多線程的小型數(shù)據(jù)庫。MySQL因其穩(wěn)定、可靠、快速、管理方便以及支持眾多系統(tǒng)平臺的特點。
成為世界范圍內(nèi)最流行的開源數(shù)據(jù)庫之一?!禡ySQL數(shù)據(jù)庫入門》就是面向數(shù)據(jù)庫初學(xué)者特地推出的一本進(jìn)階學(xué)習(xí)的入門教材,本教材站在初學(xué)者的角度,以形象的比喻、豐富的圖解、實用的案例、通俗易懂的語言詳細(xì)講解了MySQL的開發(fā)和管理技術(shù)。
你可以安裝一個MySQL-Front,用它來連接你的mysql數(shù)據(jù)庫,操作如同mssql的查詢分析器,在里面可以執(zhí)行一下你上述的sql語句,看看到底是哪里出錯了
增加語句是insert,例如insert into ttt(id) values(1,2,3);
刪除語句是delete,例如delete from ttt where id=1;
修改語句是update,力圖update ttt set id=4 where id=2;