Mysql中的大部分sql語句與oracle中的大致相同,像增加數(shù)據(jù)(insert into),刪除數(shù)據(jù)(delete),修改數(shù)據(jù)(update),唯一需要注意的是,刪除數(shù)據(jù), 在oracle中我們會用" * "表示全部,而在MySQL當中,則不需要如此,只需要 ?直接From哪張表即可 ? 語法如:(delete from emp where empno=7788 ?刪除員工,工號是7788的員工);
分頁查詢:
分頁查詢相比與oracle 要簡單的多,oracle中,分頁要先固化rownum,序列,再由序列去篩選出,需要的數(shù)據(jù)與記錄數(shù),這樣會鑲套幾層的select語句;
而MySQL中只需要一段話即可?
關(guān)鍵字:LIMIT 只需在WHERE語句之后添加即可 ?如下例:
SELECT * FROM EMP WHERE empno=7788 LIMIT 3,2; ? 這就實現(xiàn)了分頁查詢,在LIMIT后的 ?"3,2"的意思其實就是,從第三條往后,數(shù)兩條數(shù)據(jù)(記錄),非常簡單,與oracle相比實現(xiàn)分頁時候,就不需要再運用書法,去實現(xiàn)分頁(oracle12c之后也是支持這樣去分頁的);
分頁的概念:
假分頁/邏輯分頁/內(nèi)存分頁:
一次性把數(shù)據(jù)全部查詢出來,存放到內(nèi)存當中,翻頁的時候,只需要從內(nèi)存中去截取指定的條數(shù)即可;
優(yōu)缺點:缺點是:如果數(shù)據(jù)過多,可能造成內(nèi)存溢出;優(yōu)點是:簡單,翻頁速度比較塊(因為是從內(nèi)存中,直接獲取的);
真分頁/物理分頁/數(shù)據(jù)庫分頁:
每次都從數(shù)據(jù)庫中截取指定條數(shù)的數(shù)據(jù)進行實現(xiàn)分頁;
優(yōu)缺點:缺點是太復(fù)雜,分頁比較慢,優(yōu)點 是,不會造成內(nèi)存溢出
分頁的基本算法:(起始頁的)(pageIndex-1)*pageSize
資料例圖1:
MySQL的自增:
說到MySQL的自增,就不得不說起來他的約束了,而一般的約束,基本與oracle的約束功能與約束方法,都是一樣的,
1.非空約束:NOT NULL 不允許表的列為空值;
2.設(shè)置列的默認值:DEFAULT;
設(shè)置列默認值 例圖1:
上圖中NOT NULL也進行了演示;
3.唯一約束:UNIQUE,在該表中,該列的內(nèi)容必須為唯一;(與主鍵不同)
設(shè)置唯一約束 ?例圖2:
4.主鍵約束:PRIMARY KEY,非空并且唯一;(比如兩個員工,名字相同,但是工號必須不同);
設(shè)置主鍵約束 例圖3:
主鍵設(shè)置自增:AUTO_INCREMENT,從1開始,步長為1;
下圖為使用工具,增加自增約束;
工具自增約束 例圖4:
語法的使用,與其相同,只是將主鍵 PRIMARY KEY 后加入 AUTO_INCREMENT 語句即可;
語法自增約束 例題5:
表的基本概念圖 例圖2: