mysql重命名關(guān)鍵字后要按鍵盤tab鍵上面,數(shù)字1左邊的那個按鍵來保存。所有編程語言都有關(guān)鍵字或保留關(guān)鍵字,原因是這些關(guān)鍵字所有語言的語法結(jié)構(gòu)存在,在進行變量命名時盡量避免。
創(chuàng)新互聯(lián),為您提供成都網(wǎng)站建設(shè)公司、成都網(wǎng)站制作、網(wǎng)站營銷推廣、網(wǎng)站開發(fā)設(shè)計,對服務(wù)咖啡廳設(shè)計等多個行業(yè)擁有豐富的網(wǎng)站建設(shè)及推廣經(jīng)驗。創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司成立于2013年,提供專業(yè)網(wǎng)站制作報價服務(wù),我們深知市場的競爭激烈,認真對待每位客戶,為客戶提供賞心悅目的作品。 與客戶共同發(fā)展進步,是我們永遠的責(zé)任!
來自MySQL的學(xué)習(xí)筆記,寫的不對的地方大家多多指教哦
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)的表進行關(guān)聯(lián)
WHERE:過濾數(shù)據(jù)條件,執(zhí)行順序:自下而上、從右到左
GROUP BY:將過濾的數(shù)據(jù)進行分組,執(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ù)
詳細用法會在后面進行補充
首先創(chuàng)建一張表,添加字段,表名字為:goodsmaster
添加數(shù)據(jù)的語法結(jié)構(gòu)為:
添加數(shù)據(jù)可以是插入數(shù)據(jù)或插入查詢的結(jié)果
1.1 插入數(shù)據(jù)
運行語句,查詢結(jié)果:SELECT * FROM goodsmaster
部分字段有做非空約束,那么這邊插入部分數(shù)據(jù),驗證下非空約束
上面的語句運行之后會報錯,錯誤內(nèi)容為“[Err] 1364 - Field 'barcode' doesn't have a default value”,即“barcode”這個字段有創(chuàng)建非空約束,表示這個字段不能為空,如果插入數(shù)據(jù)時不給這個字段賦值,那么就需要給它一個默認值。
部分字段沒有默認值,可以為空,那么現(xiàn)在驗證一下插入數(shù)據(jù)時,這些字段不進行賦值會有什么結(jié)果
運行語句,查詢結(jié)果:SELECT * FROM goodsmaster
仔細看會發(fā)現(xiàn),上面的語句中插入數(shù)據(jù)也沒有插入“itemnumber”字段,這個字段有添加主鍵約束,不能為空,但由于設(shè)置了自增約束,所以沒有賦值也會自動在當(dāng)前字段最大值+1,這就是自增約束;
上面的語句顯示沒有進行賦值的字段會默認顯示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的記錄
由于部分數(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)鍵字查看本文第一部分即可
需要用到的工具:Mysql數(shù)據(jù)庫,Navicate for mysql,步驟如下:
1、首先打開Navicate,連接Mysql數(shù)據(jù)庫,點擊圖中框中的Mysql數(shù)據(jù)庫右鍵即可。
2、Mysql數(shù)據(jù)庫右鍵之后,然后在出現(xiàn)的菜單欄選擇在數(shù)據(jù)庫中查找選項進入。
3、點擊在數(shù)據(jù)庫中查找之后,進入新的界面,輸入要查找的關(guān)鍵字或詞語。
4、輸入完成之后,然后點擊右側(cè)的查找按鈕即可完成。
5、然后就可以看到查找結(jié)果了,這樣就解決了問題。
??首先,不推薦使用MySQL的關(guān)鍵詞來作為字段名,但是有時候的確沒有注意,或者因為之前就這么寫了,沒辦法,那怎么辦呢?
??下面就詳細的說明一下怎樣使用 方法2 來處理。
??上面的測試表是MySQL自動生成的DDL,其實從上面就可以看出,MySQL的引號內(nèi)是說明絕對的保證大小寫和當(dāng)做普通字符串處理。
??這里使用了maxvalue這個不常用的關(guān)鍵詞作為字段名,一樣違反了通常常規(guī)的命名規(guī)則,MySQL無法很好的識別。
??查詢SQL:
??在navicat中可以正常執(zhí)行,沒有任何問題。
??然后再運行insert語句:
??提示下面的錯誤:
??提示錯誤,但是沒有明顯的說明是關(guān)鍵詞不能識別。
??增加引號,使用MySQL的引號“`”,記住不是普通的英文單引號“'”,是傾斜的上撇,不是豎直的上撇。
??鍵盤輸入方式為鍵盤英文字母鍵上面的數(shù)字鍵1最前面的那個波浪線和頓號組成的鍵。也就是ESC下面,TAB鍵上面的按鍵。
??這樣就可以正常運行了。