MySQL 數(shù)據(jù)庫(kù)

一、E-R關(guān)系模型

1、Entry 實(shí)體

2、Relationship 關(guān)系

3、一個(gè)實(shí)體轉(zhuǎn)換為數(shù)據(jù)庫(kù)中的一個(gè)表

4、關(guān)系描述兩個(gè)實(shí)體之間的對(duì)應(yīng)規(guī)則:一對(duì)一,一對(duì)多,多對(duì)多

二、數(shù)據(jù)庫(kù)的3范式

? ? ? ? ? ? 1NF :列不可拆分

? ? ? ? ? ? 2NF:唯一標(biāo)識(shí)

? ? ? ? ? ? 3NF:引用主鍵

? ? ? ? ? ? 說(shuō)明:后一個(gè)范式都是在前一個(gè)范式的基礎(chǔ)上建立的。

三、數(shù)據(jù)完整性

? ? 1、數(shù)據(jù)字段的類型:int,decimal,char,varchar,text,datetime,bit

? ? ????eg:decimal(5,2) 一共包含五位數(shù),小數(shù)占兩位

????? ? char和varchar的區(qū)別:char字符數(shù)固定,不夠會(huì)自動(dòng)補(bǔ)齊;varchar字符可變

? ? 2、數(shù)據(jù)字段的約束;primary key,not null,unique,default,foreign key

五、命令腳本操作

MySQL命令????

eg:

? ? select gender,count(*) from Student group by gender having gender=1;

? ? select * from Student where gender=1 and isDelete=0 order by desc;

執(zhí)行順序

六、高級(jí)

1、關(guān)系

? ? ? ? foreign key(stuid) references Student(id),建立外鍵

? ? ? ? 外鍵級(jí)聯(lián)操作

? ? ? ? restrict(限制):默認(rèn)值,拋異常

? ? ? ? cascade(級(jí)聯(lián)):如果主表的記錄刪除,則從表中的相關(guān)聯(lián)的記錄都被刪掉

? ? ? ? set null:將外鍵設(shè)置為空

? ? ? ? no action:啥都不干

2、連接查詢

3、自關(guān)聯(lián)

? ? ? ? create table areas(

? ? ? ? aid int primary key,

? ? ? ? atitle varchar(20),

? ? ? ? pid int,

? ? ? ? foreign key(pid) references areas(id)

????);

4、視圖

????????視圖的本質(zhì)就是對(duì)查詢的一個(gè)封裝,用途就是查詢

? ? ? ? create view stuscore as? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? select students.*,scores.score from scores inner join students on? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? scores.stuid = students.id

5、事務(wù)

? ? ? ? 1>當(dāng)一個(gè)業(yè)務(wù)邏輯需要多個(gè)SQL完成時(shí),如果其中的某條SQL語(yǔ)句出錯(cuò),則希望整個(gè)操作都退回,例如:轉(zhuǎn)賬問(wèn)題;

? ? ? ? 2>使用事務(wù)可以完成退回功能,保證業(yè)務(wù)邏輯的正確性

? ? ? ? 3>四大特性(ASID)原子性,隔離性,一致性,持久性

? ? ? ? 4>要求:表的類型必須是innodb或者bdb類型

? ? ? ? 查看表的創(chuàng)建語(yǔ)句:show create table students;

? ? ? ? 修改表的類型:alter table “表名” engine = innodb;

? ? ? ? 事務(wù)語(yǔ)句:

? ? ? ? 開(kāi)啟 begin;提交 commit;回滾 rollback;

6、索引

? ? ? ? show index from tablename;

? ? ? ? create index indexname on mytable(username(length))

? ? ? ? drop index [indexname] on table;

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 文/Bruce.Liu1 1.建模簡(jiǎn)介 范式:英文名稱是 Normal Form,它是英國(guó)人 E.F.Codd(埃...
    BruceLiu1閱讀 5,870評(píng)論 0 9
  • 增(create)刪(delete)改(update)查(Retrieve) 一、 數(shù)據(jù)庫(kù)(database) 是...
    AAA年華閱讀 1,626評(píng)論 0 0
  • MySQL基本命令 1、啟動(dòng)服務(wù) 說(shuō)明:以管理員身份運(yùn)行cmd 格式:net start 服務(wù)名稱 示...
    kohlgrx閱讀 336評(píng)論 0 0
  • .數(shù)據(jù)庫(kù) 數(shù)據(jù)庫(kù)的發(fā)展: 文件系統(tǒng)(使用磁盤(pán)文件來(lái)存儲(chǔ)數(shù)據(jù))=>第一代數(shù)據(jù)庫(kù)(出現(xiàn)了網(wǎng)狀模型,層次模型的數(shù)據(jù)庫(kù))=...
    小Q逛逛閱讀 1,082評(píng)論 0 2
  • 生活中工作中經(jīng)常犯一些錯(cuò)誤 說(shuō)得好聽(tīng)一點(diǎn)就是性格缺陷粗心 經(jīng)常想當(dāng)然地以為事情是向A方向發(fā)展 實(shí)際卻發(fā)展成B方向了...
    李小花兒_閱讀 335評(píng)論 0 0

友情鏈接更多精彩內(nèi)容