日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > 数据库 >内容正文

数据库

mysql中数据定义语言_SQL数据定义语言(DDL)

發(fā)布時(shí)間:2024/7/5 数据库 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql中数据定义语言_SQL数据定义语言(DDL) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

數(shù)據(jù)庫(kù)模式定義語(yǔ)言DDL(DataDefinition Language),是用于描述數(shù)據(jù)庫(kù)中要存儲(chǔ)的現(xiàn)實(shí)世界實(shí)體的語(yǔ)言。一個(gè)數(shù)據(jù)庫(kù)模式包含該數(shù)據(jù)庫(kù)中所有實(shí)體的描述定義。這些定義包括結(jié)構(gòu)定義、操作方法定義等。

DDL描述的模式,必須由計(jì)算機(jī)軟件進(jìn)行編譯,轉(zhuǎn)換為便于計(jì)算機(jī)存儲(chǔ)、查詢和操縱的格式,完成這個(gè)轉(zhuǎn)換工作的程序稱為模式編譯器。

模式編譯器處理模式定義主要產(chǎn)生兩種類型的數(shù)據(jù):數(shù)據(jù)字典以及數(shù)據(jù)類型和結(jié)構(gòu)定義。

數(shù)據(jù)字典和數(shù)據(jù)庫(kù)內(nèi)部結(jié)構(gòu)信息是創(chuàng)建該模式所對(duì)應(yīng)的數(shù)據(jù)庫(kù)的依據(jù),根據(jù)這些信息創(chuàng)建每個(gè)數(shù)據(jù)庫(kù)對(duì)應(yīng)的邏輯結(jié)構(gòu);對(duì)數(shù)據(jù)庫(kù)數(shù)據(jù)的訪問(wèn)、查詢也根據(jù)模式信息決定數(shù)據(jù)存取的方式和類型,以及數(shù)據(jù)之間的關(guān)系和對(duì)數(shù)據(jù)的完整性約束。

數(shù)據(jù)字典是模式的內(nèi)部信息表示,數(shù)據(jù)字典的存儲(chǔ)方式對(duì)不同的DBMS各不相同。

數(shù)據(jù)類型和結(jié)構(gòu)的定義,是指當(dāng)應(yīng)用程序與數(shù)據(jù)庫(kù)連接操作時(shí),應(yīng)用程序需要了解產(chǎn)生和提取的數(shù)據(jù)類型和結(jié)構(gòu)。是為各種宿主語(yǔ)言提供的用戶工作區(qū)的數(shù)據(jù)類型和結(jié)構(gòu)定義,使用戶工作區(qū)和數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)相一致,減少數(shù)據(jù)的轉(zhuǎn)換過(guò)程,這種數(shù)據(jù)類型和結(jié)構(gòu)的定義通常用一個(gè)頭文件來(lái)實(shí)現(xiàn)。

數(shù)據(jù)庫(kù)模式的定義通常有兩種方式: 交互方式定義模式和通過(guò)數(shù)據(jù)描述語(yǔ)言 DDL 描述文本定義模式。

數(shù)據(jù)庫(kù)模式定義語(yǔ)言DDL(DataDefinition Language),是用于描述數(shù)據(jù)庫(kù)中要存儲(chǔ)的現(xiàn)實(shí)世界實(shí)體的語(yǔ)言。

DDL主要用于創(chuàng)建和刪除數(shù)據(jù)庫(kù),表和索引。

一,基本的數(shù)據(jù)庫(kù)操作:

1,創(chuàng)建(create)、修改(alter)、刪除(drop)

2,數(shù)據(jù)庫(kù)包括:

系統(tǒng)數(shù)據(jù)庫(kù)

master:記錄系統(tǒng)級(jí)的信息。

model:為用戶創(chuàng)建數(shù)據(jù)庫(kù)提供模板。

msdb:代理調(diào)度警報(bào)作業(yè)、記錄操作。

tempdb:臨時(shí)表、臨時(shí)數(shù)據(jù)庫(kù)。

用戶數(shù)據(jù)庫(kù)

二,詳解:

1,表的創(chuàng)建:

建立一個(gè)“學(xué)生選課”表SC,它由學(xué)號(hào)Sno、課程號(hào)Cno,修課成績(jī)Grade課程名Cname組成,其中(Sno, Cno)為主碼。

CREATETABLE

SC(

SnoCHAR(7),

CnoCHAR(4),

Gradeint,

CnameCHAR(10),?NOTNULLUNIQUE

Primarykey?(Sno,Cno)

Foreignkey?(Sno)?Referencesstudent(Sno).

Foreignkey?(Cno)?ReferencesCourse?(Cno)

);

基本表的創(chuàng)建-說(shuō)明

1、建表的同時(shí)可以定義與該表有關(guān)的完整性約束,這些約束條件被存入系統(tǒng)的數(shù)據(jù)字典中,當(dāng)用戶操作表時(shí),DBMS會(huì)自動(dòng)檢查該操作是否有違背完整約束條件.

2、建立約束的考慮:如果完整性約束條件涉及到該表的多個(gè)屬性列,則必須定義在表級(jí)上;否則既可以定義在列級(jí)上也可以定義在表級(jí)上。

3、表名、列名是不區(qū)分大小寫的。

4、對(duì)一個(gè)用戶而言,表名必須唯一;一個(gè)表中,列名必須唯一。

5、表名、列名必須以字母開頭,長(zhǎng)度不超過(guò)30個(gè)字符。

常用完整性約束

1、主碼約束:??? PRIMARY?KEY

2、唯一性約束:UNIQUE

3、非空值約束:NOTNULL

4、參照完整性約束:FOREIGNKEY

常用數(shù)據(jù)類型:(不同DBMS數(shù)據(jù)類型不完全相同)

T-SQL數(shù)據(jù)類型:(SQL 程式設(shè)計(jì)語(yǔ)言的增強(qiáng)版,它是用來(lái)讓應(yīng)用程式與SQL Server 溝通的主要語(yǔ)言。T-SQL提供標(biāo)準(zhǔn) SQL的DDL 和 DML 功能,加上延伸的函數(shù)、系統(tǒng)預(yù)存程序以及程式設(shè)計(jì)結(jié)構(gòu)(例如 IF 和 WHILE)讓程式設(shè)計(jì)更有彈性。)

2,刪除基本表:

DROPTABLEtable_name

3,修改基本表——添加列:

ALTERTABLEtable_name

ADDnew_column_name?datatype

[constraints]

例:向Student表增加“入學(xué)時(shí)間”(SCome),數(shù)據(jù)類型為日期型。

ALTERTABLEstudent

ADDScomeDATE

4,修改基本表——改變列的數(shù)據(jù)類型:

ALTERTABLEtable_name

ALTERCOLUMNcolumn_name?new_datatype

例:將年齡的數(shù)據(jù)類型改為半字長(zhǎng)整數(shù)。

ALTERTABLEStudent

ALTERCOLUMNSageSMALLINT

5,修改基本表——?jiǎng)h除完整性約束

ALTERTABLEtable_name

DROPconstraint

例:刪除學(xué)生姓名必須取唯一值的約束。

ALTERTABLEstudent

DROPunique(sname)

6,建立索引:

CREATEINDEXindex_nameONtable_name(column_name)

7,將某個(gè)字段設(shè)為主鍵:

ALTERTABLEtable_nameADDPRIMARYKEY(column_name)

8,將某個(gè)字段的主鍵定義取消:

ALTERTABLEtable_nameDROPPRIMARYKEY(column_name)

約束是為了數(shù)據(jù)的完整性而存在的,而數(shù)據(jù)的完整性是指數(shù)據(jù)的可靠性和準(zhǔn)確性。

根據(jù)數(shù)據(jù)完整性大致可以分為四種:

1.實(shí)體完整性

就是說(shuō)每個(gè)表代表一個(gè)實(shí)體,每個(gè)表與他所代表的實(shí)體一致,特定表的唯一實(shí)體。

實(shí)現(xiàn)實(shí)體完整性的的方法:索引(index),唯一約束(unique),主鍵約束(primarykey),標(biāo)識(shí)列屬性

2.域完整性

給每個(gè)列定義輸入的有效性

實(shí)現(xiàn)域完整性的的方法: 限制數(shù)據(jù)類型,格式,外鍵約束(foreign key references),檢查約束(check(? between? and )),默認(rèn)值定義(default ' '),非空(not null)約束。

3.引用完整性

在輸入或刪除記錄時(shí),表與表之間已定義的關(guān)系

實(shí)現(xiàn)域完整性的的方法: 通過(guò)外鍵與主鍵的關(guān)系,外鍵與唯一鍵之間的關(guān)系,外鍵與檢查約束

4.用戶自定義完整性

所有的完整性都支持用戶自定義完整性

注意:

1.在SQL中有個(gè)自動(dòng)增長(zhǎng)的自動(dòng)編號(hào)列identity

2. MySQL不支持檢查約束

3.索引就像字典的目錄,把索引加在頻繁的以某個(gè)字符段查詢的的上面,在表上創(chuàng)建索引雖然會(huì)提高select語(yǔ)句的速度,但也會(huì)降低delete,update,insert語(yǔ)句執(zhí)行的速度,如果一個(gè)表中太多的索引會(huì)降低數(shù)據(jù)庫(kù)的整體性能

4.primary key = unique+not null(加primary key 要比加unique和not null效率膏,因?yàn)榧觩rimarykey時(shí)會(huì)自動(dòng)加索引,加快了效率)

5.在SQL server中正在實(shí)用的數(shù)據(jù)庫(kù)不能被刪除(除非切換數(shù)據(jù)庫(kù)才能被刪除),mySQl中可以刪除正在實(shí)用的數(shù)據(jù)庫(kù)

總結(jié)

以上是生活随笔為你收集整理的mysql中数据定义语言_SQL数据定义语言(DDL)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美大片免费看 | 国产视频999 | 国产高清精品一区二区三区 | 欧美人与禽猛交乱配视频 | av2014天堂网 | 国产欧美一区二区精品性色 | 9色视频在线观看 | 国产妇女馒头高清泬20p多 | 欧美大片免费 | 日韩二区 | 91av毛片 | 中国女人高潮hd | 天天爽夜夜爽夜夜爽精品 | 亚洲精品免费av | jlzzjlzz国产精品久久 | 误杀1电影免费观看高清完整版 | 成人涩涩网站 | 日本动漫艳母 | 亚洲日本网站 | 亚洲成人自拍网 | 第一章激情艳妇 | 在线亚洲不卡 | 一区二区在线观看视频 | 影音先锋中文在线 | 国产精品第100页 | www.xxx国产| 伊人91视频 | 国产伦精品一区二区三区视频我 | 日韩熟妇一区二区三区 | 四虎精品影视 | 与亲女洗澡时伦了毛片 | 97人人超| 国内成人综合 | 日韩精品一区二区亚洲av性色 | 国产激情久久久久久熟女老人av | 色噜噜狠狠一区二区三区 | 国产又色又爽无遮挡免费 | 亚洲国产精品免费视频 | 男女午夜网站 | 黄色茄子视频 | 欧美婷婷 | www.xxxx国产| 国内久久精品视频 | 汗汗视频| 欧美性猛交xxxx乱大交hd | 国产黄色录像片 | 国产一区=区 | 欧美一级淫片免费视频魅影视频 | 日韩av在线播放网址 | 美女亚洲一区 | www久久99 | 亚洲乱色熟女一区二区三区 | 国产美女主播在线观看 | 久久成人午夜 | chien国产乱露脸对白 | jizzjizz美国| 91在线免费视频观看 | 欧洲女性下面有没有毛发 | 国产东北女人做受av | 艳妇臀荡乳欲伦交换在线看 | 国产男女无套免费网站 | 国产精品一区久久久 | 久久人| 久久免费看 | 调教女m荡骚贱淫故事 | 无码国产精品高潮久久99 | 日韩精品无码一区二区三区久久久 | 国产综合视频一区二区 | 欧美人吸奶水吃奶水 | 久久亚洲一区 | 日韩一区免费 | 扩阴视频| 插插插插综合 | 就去吻亚洲 | 欧美xxxxx高潮喷水麻豆 | 亚洲精品久久夜色撩人男男小说 | 色就是色欧美色图 | 四色成人av永久网址 | 亚洲视频网址 | www日本com | 国产精选毛片 | xxxxwww一片 | 五月婷婷小说 | 天天夜夜草 | 久久久久免费 | 免费在线看黄色片 | 桃谷绘里香在线观看 | 另类视频一区 | 色偷偷av | 国产精品老熟女一区二区 | 中文字幕第一区 | 一本大道一区二区 | 久久偷看各类wc女厕嘘嘘偷窃 | 欧美老肥熟 | www.中文字幕在线观看 | 优优色影院 | 激情欧美一区 | 99热偷拍| 日韩一三区|