欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      數(shù)據(jù)庫(kù)總結(jié)

      時(shí)間:2019-05-15 13:56:45下載本文作者:會(huì)員上傳
      簡(jiǎn)介:寫寫幫文庫(kù)小編為你整理了多篇相關(guān)的《數(shù)據(jù)庫(kù)總結(jié)》,但愿對(duì)你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫(kù)還可以找到更多《數(shù)據(jù)庫(kù)總結(jié)》。

      第一篇:數(shù)據(jù)庫(kù)總結(jié)

      數(shù)據(jù)庫(kù)總結(jié):共三天的課程

      數(shù)據(jù)庫(kù)的概念:數(shù)據(jù)庫(kù)是一組有序的數(shù)據(jù)的集合; 數(shù)據(jù)庫(kù)的作用:為了有效的管理數(shù)據(jù); 數(shù)據(jù)類型:

      一 字符串相關(guān)的類型:一般用于人名、大于2147483647(10位數(shù))的數(shù)字、地址等字符信息

      使用格式:字段名 char(存放字符的長(zhǎng)度)

      或者

      字段名

      varchar(存放字符的長(zhǎng)度)Char:代表的是定長(zhǎng)的字符串類型,定義了多長(zhǎng),就分配多長(zhǎng)的存儲(chǔ)空間,只要不超過定義的長(zhǎng)度,分配給char的空間長(zhǎng)度就不會(huì)改變,余下的部分用空格代替;

      Varchar:代表的是可變長(zhǎng)度的字符串類型,定義的長(zhǎng)度可以理解為是虛擬的空間,只要字符串的長(zhǎng)度不超過定義的長(zhǎng)度,那么varchar的分配空間長(zhǎng)度就是字符串實(shí)際的長(zhǎng)度,余下的部分自動(dòng)消失; 二 數(shù)字相關(guān)的類型:一般用于工資、人數(shù)統(tǒng)計(jì)等方面; 使用格式:字段名

      int/float/double 【此處不用定義字段的長(zhǎng)度】 int :取值的范圍-2147483648~2147483647,后面可以設(shè)置主鍵及自增長(zhǎng);

      float/double:用于帶有小數(shù)的數(shù)據(jù)定義 decimal:多用于金錢的數(shù)據(jù) 三 時(shí)間相關(guān)的數(shù)據(jù)類型:一般用于時(shí)間的統(tǒng)計(jì),例如登錄時(shí)間、修改時(shí)間、退出時(shí)間等;

      使用格式:字段名

      date/time/datetime/timestamp 【此處不用定義字段的長(zhǎng)度】,插入表的時(shí)候格式與字符串的插入格式一樣,都是用單引號(hào)插入

      date:日期類型

      格式:yyyy-MM-dd time:時(shí)間類型

      格式:hh:mm:ss Datetime:日期時(shí)間

      格式:yyyy-MM-dd hh:mm:ss Timestamp:時(shí)間戳

      格式:yyyy-MM-dd hh:mm:ss 數(shù)據(jù)庫(kù)的操作:

      一 查看所有數(shù)據(jù)庫(kù):select databases;二 查看所有表:select tables;三 創(chuàng)建數(shù)據(jù)庫(kù):create database 數(shù)據(jù)庫(kù)名稱;

      use 數(shù)據(jù)庫(kù)名稱;

      四 創(chuàng)建表:create table 表名(字段1

      類型(長(zhǎng)度)[約束], 字段2

      類型(長(zhǎng)度)[約束], 字段n

      類型(長(zhǎng)度)[約束])注:字段n的結(jié)尾處不需要用逗號(hào)分隔

      五 刪除當(dāng)前表/數(shù)據(jù)庫(kù):drop table 表名/ 數(shù)據(jù)庫(kù)名;

      六 向表中插入數(shù)據(jù):insert into 表名(字段1,字段2,字段n)values(值1,值2,值n),(值1,值2,值n),(值1,值2,值n),(值1,值2,值n)...注:此處的插入數(shù)據(jù)可以用逗號(hào)隔開,想要插入幾條數(shù)據(jù)就插入幾個(gè)值。

      七 查看當(dāng)前表的值:select * from 表名

      注:*是通配符,代表全部的意思,此處*還可以用表中的字段名代替,那么查看就是相應(yīng)的字段名下的數(shù)據(jù)。

      約束:

      一 主鍵約束:primary key 代表的是唯

      一、不重復(fù),非空的約束 使用格式: 字段名

      類型(長(zhǎng)度)primary key 自增長(zhǎng):auto_increment 必須與主鍵約束一同使用,字段的類型是整型,插入數(shù)據(jù)的時(shí)候可以不用向設(shè)置自增長(zhǎng)的字段添加數(shù)據(jù),起始的默認(rèn)數(shù)字是:1 二 唯一約束:unique 不可以重復(fù),唯一 使用格式: 字段名

      類型(長(zhǎng)度)unique 注:空格是不可以作為字符串使用的,空格相當(dāng)于null,如果向設(shè)置unique的字段內(nèi)插入數(shù)據(jù)是存在【‘空格’、null、(‘’)】當(dāng)中兩個(gè)或兩個(gè)以上的時(shí)候就會(huì)報(bào)錯(cuò)【’null’是字符串,不是空】 三 非空約束:not null 插入數(shù)據(jù)時(shí)必須要為設(shè)置not null的字段插入數(shù)據(jù),這個(gè)字段不能為空

      使用格式: 字段名

      類型(長(zhǎng)度)not null 注:空格是不可以作為字符串使用的,空格相當(dāng)于null,如果向設(shè)置not null的字段內(nèi)插入數(shù)據(jù)是存在【‘空格’、null、(‘’)】當(dāng)中一個(gè)或一個(gè)以上的時(shí)候就會(huì)報(bào)錯(cuò)

      四 默認(rèn)約束:default 為字段設(shè)置默認(rèn)值,當(dāng)不為設(shè)置默認(rèn)約束的字段插入數(shù)據(jù)是,系統(tǒng)自動(dòng)將默認(rèn)值賦予這個(gè)字段 使用格式: 字段名

      類型(長(zhǎng)度)default 值 五 檢查約束:check(檢查的內(nèi)容)使用格式: 字段名

      類型(長(zhǎng)度)check(檢查的內(nèi)容)注:在SQL語句中沒有實(shí)際的含義,但是需要會(huì)用

      六 外鍵約束:foreign key 必須是另一個(gè)表的主鍵(唯一的),設(shè)置了外鍵的字段,受到關(guān)聯(lián)表中相應(yīng)主鍵的字段的約束,當(dāng)要為外鍵約束插入數(shù)據(jù)的時(shí)候,必須先為被關(guān)聯(lián)的表插入相應(yīng)主鍵的數(shù)據(jù);

      使用格式: 創(chuàng)建表時(shí)候就設(shè)置外鍵約束

      字段名

      類型(長(zhǎng)度),F(xiàn)oreign key(字段名)references 表名(對(duì)應(yīng)主鍵的字段名)表已經(jīng)創(chuàng)建完,插入外鍵約束

      Alter table 表名 add constraint fk_f foreign key(要設(shè)置外鍵的字段名)references 被關(guān)聯(lián)的表名(被關(guān)聯(lián)的字段名);表的結(jié)構(gòu):

      查看表結(jié)構(gòu):desc/describe 表名;修改表名:alter table 表名 rename 新表名 添加新字段:alter table 表名 add 字段名 類型(長(zhǎng)度)修改字段:alter table 表名 change 舊字段 新字段 新字段類型(長(zhǎng)度)刪除字段:alter table 表名 drop 字段名

      記錄的操作:

      一 插入記錄:insert into 表名(字段名1,字段名n)values(值1,值n)二 修改記錄:update 表名 set 字段名=值 where 條件

      注:這里如果不加where條件,那么這個(gè)表的這個(gè)字段名下的數(shù)據(jù)全部賦值成為“值”

      三 刪除記錄:delete from表名 where 條件

      注:此處刪除的是表中的符合where條件的整條記錄 注意:使用delete和update的時(shí)候要千萬注意,必須要寫where條件語句,要不然就會(huì)將當(dāng)前表中的所有數(shù)據(jù)改變,在想改回來的話會(huì)非常非常費(fèi)勁?。?!

      四 查詢記錄:select 字段名1,字段名n from 表名 where 查詢條件 查詢?nèi)サ糁貜?fù)的值:關(guān)鍵字 distinct 格式:select distinct 字段名1,字段名n from 表名命別名/賦值表: 關(guān)鍵字 as 命別名:select 字段名 as ‘自定義名’

      from 表名 賦值表:create table 新表名 as select * from 舊表名 3 查詢條件語句的范圍:in(等值判斷)/not in select 字段名1,字段名n from 表名 where 字段名

      in/not in(值1,值n)4 模糊查詢:like

      匹配標(biāo)識(shí)符:’_’代表一個(gè)字符、%代表多個(gè)字符

      Select 字段名 from 表名 where 字段名 like ‘_sth%’ 注:like后面的判斷值如果是數(shù)字的話要加單引號(hào),例如想要查詢的條件是12345,可以這樣寫:’%3%’,單引號(hào)必須加 5 區(qū)間查詢:limit m,n

      查詢從第m個(gè)記錄開始,一共n條記錄,這里的m指的是類似Java數(shù)組里的下標(biāo),計(jì)數(shù)從0開始

      Limit m

      查詢從頭開始的一共m條記錄

      Select */字段名 from 表名 limit m,n 6 查詢值是否存在某段區(qū)間內(nèi):between 最大值 and 最小值(int 型的最大值、最小值)Select 字段名1,字段名n from 表名

      where 字段名 between 最大值

      and 最小值:

      注意這里面的條件含有等于最大值和等于最小值

      字段名 between 最大值 and 最小值= 字段名>=最小值 and 字段名<=最大值

      邏輯運(yùn)算符在此處可通用:<

      <=

      >

      >=

      =

      !=

      集合函數(shù): 使用方法與Java中的方法的使用類似,注意的是函數(shù)名后面緊跟著(),中間不能有空格 一 符合條件的記錄的個(gè)數(shù):countil

      Select count(字段名)from 表名

      where 查詢條件 二 求某個(gè)字段的值的總和:sum Select sum(字段名)from 表名

      where 查詢條件 三 求某個(gè)字段的值的平均值:avg Select avg(字段名)from 表名

      where 查詢條件 四 求某個(gè)字段的值的最大值:max Select max(字段名)from 表名

      where 查詢條件 五 求某個(gè)字段的值的最大值:min Select min(字段名)from 表名

      where 查詢條件

      多表查詢:

      笛卡爾積:select(字段1,字段n)from 表1,表n 自己想要的查詢(找到所有被查詢的表的相同的字段): Select(a.字段1,a.字段n,b.字段1,b.字段n)from 表名 as a,表名 as b where a.字段名=b.字段名;

      聯(lián)合查詢:

      左連接:select 字段名/* from 左表名

      left join 右表名

      on 左表名.字段名=右表名.字段名

      查詢結(jié)果:左表全部顯示,右表與左表相同的字段名的部分顯示 右連接:select 字段名/* from 左表名

      right join 右表名

      on 左表名.字段名=右表名.字段名

      查詢結(jié)果:右表全部顯示,左表與右表相同的字段名的部分顯示 內(nèi)連接:select 字段名/* from 左表名

      inner join 右表名

      on 左表名.字段名=右表名.字段名

      查詢結(jié)果:只有左表與右表相同的部分才顯示

      全連接:select 字段名/* from 左表名

      full join 右表名 查詢結(jié)果:’*’的結(jié)果是笛卡爾積

      ‘字段名’的結(jié)果是這個(gè)字段名下的笛卡爾積

      函數(shù):函數(shù)名與小括號(hào)之間不能有空格,字符串必須用單引號(hào)圈起來

      一 求字符串長(zhǎng)度:length Select

      length(字符串)二 字符串的截?。簊ubstring(字符串,m)/(字符串,m,n)Select

      substring(字符串,m)/(字符串,m,n)三 小寫轉(zhuǎn)大寫:upper Select

      upper(字符串)四 大寫轉(zhuǎn)小寫:lower Select

      lower(字符串)五 加密:MD5 Select

      MD5(字符串)六 顯示現(xiàn)在的時(shí)間:now Select

      now()

      迷糊中: group by

      order by 子查詢

      第二篇:數(shù)據(jù)庫(kù)總結(jié)

      數(shù)據(jù)庫(kù)老師畫的重點(diǎn)

      數(shù)據(jù)庫(kù):數(shù)據(jù)庫(kù)是長(zhǎng)期存儲(chǔ)在計(jì)算機(jī)內(nèi)、有組織、可共享的大數(shù)據(jù)集合。數(shù)據(jù)庫(kù)操縱功能:查詢select、插入insert、刪除delete、修改update 數(shù)據(jù)庫(kù)系統(tǒng)的特點(diǎn):1數(shù)據(jù)結(jié)構(gòu)化2數(shù)據(jù)的共享高,冗余度低,易擴(kuò)充3數(shù)據(jù)獨(dú)

      立性高4數(shù)據(jù)由DBMS統(tǒng)一管理和控制

      數(shù)據(jù)模型的組成要素:數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作、完整性約束 概念模型:要出大體,畫圖 信息世界中的基本概念————

      1、實(shí)體:客觀存在并可以相互區(qū)別的事物稱為實(shí)體

      2、屬性:實(shí)體所具有的某一特性

      3、碼(key):唯一標(biāo)識(shí)實(shí)體的屬性集稱為碼

      4、域(domain):域是一組具有相同數(shù)據(jù)類型的集合

      5、實(shí)體型(entity type):具有相同屬性的實(shí)體必然具有共同的特征和性質(zhì)。用實(shí)體名

      及屬性名集合來抽象和刻畫同類實(shí)體,稱為實(shí)體型。

      6、實(shí)體集(entity set):同一類型的實(shí)體的集合

      7、聯(lián)系:在現(xiàn)實(shí)世界中,事物內(nèi)部以及事物之間是有聯(lián)系的,這些聯(lián)系在信息世界中

      反應(yīng)為實(shí)體(型)內(nèi)部的聯(lián)系和實(shí)體(型)之間的聯(lián)系。實(shí)體內(nèi)部的聯(lián)系通常是指

      組成實(shí)體的各屬性之間的聯(lián)系;實(shí)體之間的聯(lián)系通常是指不同實(shí)體集之間的聯(lián)系

      最常用的數(shù)據(jù)模型:

      1、層次模型(Hierarchical Model)

      2、網(wǎng)狀模型(Network Model)

      3、關(guān)系模型(Relational Model)

      4、面向?qū)ο竽P停∣bject Oriented Model)

      5、對(duì)象關(guān)系模型(Object Relational Model)其中層次模型和網(wǎng)狀模型統(tǒng)稱為格式化模型

      數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式結(jié)構(gòu):

      1、模式(scheme):模式也稱邏輯模式,是數(shù)據(jù)庫(kù)中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,是所有用戶的公共數(shù)據(jù)視圖。他是數(shù)據(jù)庫(kù)系統(tǒng)模式結(jié)構(gòu)的中間層,既不設(shè)計(jì)涉及數(shù)據(jù)的物理存儲(chǔ)細(xì)節(jié)和硬件環(huán)境,也與具體的應(yīng)用程

      序、所使用的應(yīng)用開發(fā)工具及高級(jí)程序設(shè)計(jì)語言無關(guān)。

      2、外模式(external schema):外模式也稱為子模式(subschema)或用戶模式,他是數(shù)

      據(jù)庫(kù)用戶(包括應(yīng)用程序員和最終用戶)能看見和使用

      的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,是數(shù)據(jù)庫(kù)用戶的數(shù)據(jù)視圖,是與某一應(yīng)用有關(guān)的數(shù)據(jù)的邏輯表示。

      3、內(nèi)模式(internal scheme):內(nèi)模式也稱存儲(chǔ)模式(storage schema),一個(gè)數(shù)據(jù)庫(kù)只有

      一個(gè)內(nèi)模式。他是數(shù)據(jù)庫(kù)物理結(jié)構(gòu)和存儲(chǔ)方式的描述,是

      數(shù)據(jù)在數(shù)據(jù)庫(kù)內(nèi)部的表達(dá)方式。數(shù)據(jù)庫(kù)的二級(jí)映像功能與數(shù)據(jù)庫(kù)獨(dú)立性————

      為了能夠在系統(tǒng)內(nèi)部實(shí)現(xiàn)這3個(gè)抽象層次的聯(lián)系和轉(zhuǎn)換,數(shù)據(jù)庫(kù)管理系統(tǒng)在這三個(gè)模式之間提供了兩層映像:

      ·外模式/模式 映像 ·模式/內(nèi)模式 映像

      正是這兩層映像保證了數(shù)據(jù)庫(kù)系統(tǒng)中的數(shù)據(jù)能夠具有較高的邏輯獨(dú)立性和物理獨(dú)立性 關(guān)系(relation):D1*D2*D3··*Dn的子集叫做在域D1、D2、D3···Dn上的關(guān)系,表示

      為R(D1、D2、D3···Dn)

      這里的的R表示關(guān)系的名字,n是關(guān)系的目或度(degree)關(guān)系中每個(gè)元素是關(guān)系中的元組,通常用t表示 當(dāng)n=1時(shí),稱關(guān)系為單元關(guān)系(unary relation),或一元關(guān)系 當(dāng)n=2時(shí),稱該關(guān)系為二元關(guān)系(binary relation)

      關(guān)系是笛卡爾積的有限子集,所以關(guān)系也是一個(gè)二維表,表的每行對(duì)應(yīng)一個(gè)元組,表的每列對(duì)應(yīng)一個(gè)域。由于域可以相同,為了加以區(qū)分,必須對(duì)每列起一個(gè)名字,稱為屬性(attribute)。n目關(guān)系必有n個(gè)屬性。

      若關(guān)系中的某一屬性組的值能夠唯一的標(biāo)識(shí)一個(gè)元組,則稱該屬性組為候選碼(candidate key)

      若一個(gè)關(guān)系有多個(gè)候選碼,則選定其中一個(gè)為主碼(primary key)候選碼的諸屬性稱為主屬性(prime attribute)。不包含在任何候選碼中的屬性稱為非主屬性(non-prime attribute)或非碼屬性(non-key attribute)P46 沒有搞明白干嘛使得?。。。。。。。。。?!

      關(guān)系的三類完整性約束:實(shí)體完整性、參照完整性、用戶定義的完整性 實(shí)體完整性和參照完整性被稱作關(guān)系的兩個(gè)不變性

      1、實(shí)體完整性(entity integrity):主碼中的屬性即主屬性不能取空值

      2、參照完整性(referential integrity):

      若屬性(或?qū)傩越M)F是基本關(guān)系R的外碼,它與基本關(guān)系S的的主碼K相對(duì)應(yīng)(基

      本關(guān)系R和S不一定是不同的關(guān)系),則對(duì)于R中每個(gè)元組在F上的值必須為:

      ·或者取空值(F的每個(gè)屬性值均為空值)·或者等于S中某個(gè)元組的主碼值

      SQL(Structured Query Language),即結(jié)構(gòu)化查詢語言,是關(guān)系數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)語言。SQL 的特點(diǎn):

      1、綜合統(tǒng)一

      2、高度非過程化

      3、面向集合的操作方式

      4、以同一種語法結(jié)構(gòu)提供多種使用方式

      5、語言簡(jiǎn)潔、易學(xué)易用 SQL的動(dòng)詞:

      數(shù)據(jù)查詢:select 數(shù)據(jù)定義:create、drop、alter(房間)修改表

      數(shù)據(jù)操縱:insert、update(家具)修改數(shù)據(jù)、delete 數(shù)據(jù)控制:grant、revoke

      繪制ER圖————

      在ER圖中有如下四個(gè)成分:

      矩形框:表示實(shí)體,在框中記入實(shí)體名。菱形框:表示聯(lián)系,在框中記入聯(lián)系名。

      橢圓形框:表示實(shí)體或聯(lián)系的屬性,將屬性名記入框中。對(duì)于主屬性名,則在其名稱下

      劃一下劃線。

      連線:實(shí)體與屬性之間;實(shí)體與聯(lián)系之間;聯(lián)系與屬性之間用直線相連,并在直線上

      標(biāo)注聯(lián)系的類型。(對(duì)于一對(duì)一聯(lián)系,要在兩個(gè)實(shí)體連線方向各寫1; 對(duì)于一對(duì)

      多聯(lián)系,要在一的一方寫1,多的一方寫N;對(duì)于多對(duì)多關(guān)系,則要在兩個(gè)實(shí)體

      連線方向各寫N,M。

      基本表是本身獨(dú)立存在的表,在SQL中一個(gè)關(guān)系就對(duì)應(yīng)一個(gè)基本表。一個(gè)(或多個(gè))基本表對(duì)應(yīng)一個(gè)存儲(chǔ)文件,一個(gè)表可以帶若干索引,索引也可以放在存儲(chǔ)文件中。存儲(chǔ)文件的邏輯結(jié)構(gòu)組成了關(guān)系數(shù)據(jù)庫(kù)的內(nèi)模式。存儲(chǔ)文件的物理結(jié)構(gòu)是任意的,對(duì)用戶是透明的。

      視圖是從一個(gè)或幾個(gè)基本表導(dǎo)出的表。它本身不獨(dú)立存儲(chǔ)在數(shù)據(jù)庫(kù)中,即數(shù)據(jù)庫(kù)中只存放視圖的定義而不存放視圖對(duì)應(yīng)的數(shù)據(jù)。這些數(shù)據(jù)仍存放在導(dǎo)出視圖的基本表中,因此視圖是一個(gè)虛表。視圖在概念上與基本表等同,用戶可以在視圖上再定義視圖。

      基本表的定義、刪除與修改:

      1、定義基本表:create table ***()

      2、定義主鍵:Primary key == not null(中間不用連接符號(hào))unique

      3、定義外碼的語句:foreign key(某個(gè)字段)references 某表(某字段)

      4、定義主碼語句:primary key(***,***)

      5、修改基本表:alter table 某表名 add 列名<數(shù)據(jù)類型>[完整性約束]

      drop <完整性約束名>(字段名)

      alter column<列名><數(shù)據(jù)類型>

      6、刪除表:drop table 表名[restrict | cascade級(jí)聯(lián)刪除]

      7、建立索引:create [unique] [clustered] index 索引名

      on 表名(列名[asc | desc],······)·clustered 表示是聚簇索引

      ·unique表明此索引的每一個(gè)索引值只對(duì)應(yīng)唯一的數(shù)據(jù)記錄 ·用戶可以在最經(jīng)常查詢的列上建立聚簇索引以提高查詢效率 ·在一個(gè)基本表上只能建立一個(gè)聚簇索引

      ·建立局促索引后,更新該索引列上的數(shù)據(jù)時(shí),往往導(dǎo)致表中記

      錄的物理順序的額變更,代價(jià)較大,因此對(duì)于經(jīng)常更新的列不

      宜建立聚簇索引

      8、刪除索引:drop index <索引名>

      上機(jī)的時(shí)候不太一樣:drop index 表名。索引名字

      9、數(shù)據(jù)的查詢:

      select [all | distinct] <目標(biāo)列表達(dá)式>,······ from 表名或者視圖名,··· where 條件表達(dá)式

      group by 列名1 [having 條件表達(dá)式] order by 列名2 [asc | desc] ·如果有g(shù)roup by 子句,則結(jié)果按“列名1”的值進(jìn)行分組,該屬性列值相

      等的元組為一個(gè)組。通常會(huì)在每組中作用聚集函數(shù)。如果group by 子句帶

      having短語,則只有滿足指定條件的組才予以輸出。

      ·如果有order by 子句,則結(jié)果表按“列名2”的值的升序或降序排序 ·select Sname Name,‘Year of Birth:’Birth,2013-Sage Birthday,lower

      (Sdept)Department

      from Student

      lower表示小寫

      常用的查詢條件————

      較:大于、等于、小于、不等于(< >/!=)、大于/小于等于、不小于、不大于、not+上述比較運(yùn)算符

      確定范圍:between and,not between and 確定集合:in,not in 字符匹配:like,not like 空

      值:is null,is not null 多重條件(邏輯運(yùn)算):and,or,not

      例子————

      ·select Sname,Sage

      from Student

      where Sdept(not)in(‘cs’,‘ma’,‘is’)

      字符匹配:[not] like ‘字符串’[escape‘換嗎字符’] 百分號(hào)表示任意長(zhǎng)度、下劃線表

      示任意單個(gè)字符 聚集函數(shù)————

      count([distinct | all] *)

      統(tǒng)計(jì)元組個(gè)數(shù) count([distinct| all] 列名)

      統(tǒng)計(jì)一列中值的個(gè)數(shù) sum([distinct| all] 列名)

      計(jì)算一列值的總和(此列必須是數(shù)值型)avg([distinct| all] 列名)

      計(jì)算一列的平局值(此列必須是數(shù)值型)max([distinct| all] 列名)

      求一列中的最大值 min ·如果指定distinct短語,則表示在計(jì)算時(shí)要取消指定列中的重復(fù)值。如果不指定distinct

      短語或者指定all短語(all為缺省值),則表示不取消重復(fù)。

      ·注意在聚集函數(shù)遇到空值時(shí),除count(*)外,都跳過空值而只處理非空值?!ぷ⒁鈝here子句中不能用聚集函數(shù)作為條件表達(dá)式

      group by子句————

      where 子句與having 短語的區(qū)別在于作用對(duì)象不同。Where 子句作用對(duì)象作用于基本表或試圖,從中選擇條件的元組。Having短語作用于組,從中選擇滿足條件的組。

      例子:select Sno from SC

      group by Sno having count(*)>3 查詢了選修3門以上課程的學(xué)生學(xué)號(hào) 鏈接查詢—————— 例子:

      非自然鏈接

      ·select Student.*,SC.*

      from Student,SC

      Where Student.Sno=SC.Sno

      自然鏈接

      ·select Student.Sno,Sname,Ssex,Sage,Sdept,Cno,Grade

      from Student,SC

      where Student.Sno=SC.Sno

      自身鏈接

      ·select FIRST.Cno,SECOND.Cpno

      from Course FIRST,Course SECOND

      where FIRST.Cpno=SECOND.Cpno

      外連接

      ·select Student.Sno,Sname,Sage,Sdept,Cno,Grade

      from Student left outer join SC

      on Student.Sno=SC.Sno ·左外鏈接列出左邊關(guān)系中所有的元組,右外連接列出右邊關(guān)系中的所有元組

      嵌套查詢

      ·select Sname from Student

      where Sno in(select Sno from SC where Cno=‘2’)

      ·找出每個(gè)學(xué)生超過他選修課程平均成績(jī)的課程號(hào)

      Select Sno,Cno From SC x Where Grade >=(select avg(Grade)

      From SC y Where y.Sno=x.Sno)

      授權(quán)————

      Grant 權(quán)限,····· On 對(duì)象類型 對(duì)象名,····· To 用戶,·····

      [with grant option]只一句表示權(quán)限的傳遞

      例子: ·Grant all privileges

      On Student,Course

      To U1,U2

      ·grant update(Sno),select

      on Student

      to u4

      ·revoke update(Sno)

      on table Student

      from u4

      一個(gè)滿足BCNF的關(guān)系模式有:

      ·所有非主屬性對(duì)每一個(gè)碼都是完全函數(shù)依賴

      3NF 編輯

      3NF,即第三范式是要求一個(gè)數(shù)據(jù)庫(kù)表中不包含已在其它表中已包含的非主關(guān)鍵字信息。例如,存在一個(gè)部門信息表,其中每個(gè)部門有部門編號(hào)(dept_id)、部門名稱、部門簡(jiǎn)介等信息。那么在員工信息表中列出部門編號(hào)后就不能再將部門名稱、部門簡(jiǎn)介等與部門有關(guān)的信息再加入員工信息表中。如果不存在部門信息表,則根據(jù)第三范式(3NF)也應(yīng)該構(gòu)建它,否則就會(huì)有大量的數(shù)據(jù)冗余。簡(jiǎn)而言之,第三范式就是屬性不依賴于其它非主屬性。滿足第三范式(3NF)必須先滿足第二范式(2NF)

      2NF(第二范式)

      第二范式(2NF)是在第一范式(1NF)的基礎(chǔ)上建立起來的,即滿足第二范式(2NF)必須先滿足第一范式(1NF)。第二范式(2NF)要求數(shù)據(jù)庫(kù)表中的每個(gè)實(shí)例或行必須可以被唯一地區(qū)分。為實(shí)現(xiàn)區(qū)分通常需要為表加上一個(gè)列,以存儲(chǔ)各個(gè)實(shí)例的唯一標(biāo)識(shí)。如圖3-2 員工信息表中加上了員工編號(hào)(emp_id)列,因?yàn)槊總€(gè)員工的員工編號(hào)是唯一的,因此每個(gè)員工可以被唯一區(qū)分。這個(gè)惟一屬性列被稱為主關(guān)鍵字或主鍵、主碼。

      第三篇:數(shù)據(jù)庫(kù)總結(jié)(簡(jiǎn)答題)

      數(shù)據(jù)的定義 :描述事物的符號(hào)記錄

      數(shù)據(jù)庫(kù)的定義:數(shù)據(jù)庫(kù)(Database,簡(jiǎn)稱DB)是長(zhǎng)期儲(chǔ)存在計(jì)算機(jī)內(nèi)、有組織的、可共享的大量數(shù)據(jù)集合

      DBMS的定義:數(shù)據(jù)庫(kù)管理系統(tǒng)(Database Management System,簡(jiǎn)稱DBMS):位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件(系統(tǒng)軟件)。

      DBMS的用途:

      (1)科學(xué)地組織和存儲(chǔ)數(shù)據(jù)(2)高效地獲取和維護(hù)數(shù)據(jù) DBMS的主要功能:

      (1)數(shù)據(jù)定義功能:提供數(shù)據(jù)定義語言(DDL)定義數(shù)據(jù)庫(kù)中的數(shù)據(jù)對(duì)象

      (2)數(shù)據(jù)操縱功能:提供數(shù)據(jù)操縱語言(DML),實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的基本操作(查詢、插入、刪除和修改)。

      (3)數(shù)據(jù)庫(kù)的運(yùn)行管理:在數(shù)據(jù)庫(kù)建立、運(yùn)用和維護(hù)時(shí)對(duì)數(shù)據(jù)庫(kù)進(jìn)行統(tǒng) 一控制,以保證數(shù)據(jù)的完整性、安全性、并在多用戶同時(shí)使用數(shù)據(jù)庫(kù)時(shí)進(jìn)行并發(fā)控制,且在數(shù)據(jù)庫(kù)系統(tǒng)發(fā)生故障后對(duì)系統(tǒng)進(jìn)行恢復(fù)。

      (4)數(shù)據(jù)庫(kù)的建立和維護(hù)功能(實(shí)用程序):數(shù)據(jù)庫(kù)數(shù)據(jù)批量裝載、數(shù)據(jù)庫(kù)轉(zhuǎn)儲(chǔ)、恢復(fù)、數(shù)據(jù)庫(kù)的重組織、性能監(jiān)視等

      (5)數(shù)據(jù)庫(kù)系統(tǒng)(Database System,簡(jiǎn)稱DBS):指在計(jì)算機(jī)系統(tǒng)中引入數(shù)據(jù)庫(kù)后的系統(tǒng) 在不引起混淆的情況下常常把數(shù)據(jù)庫(kù)系統(tǒng)簡(jiǎn)稱為數(shù)據(jù)庫(kù)

      數(shù)據(jù)庫(kù)系統(tǒng)的構(gòu)成(1)數(shù)據(jù)庫(kù)

      (2)數(shù)據(jù)庫(kù)管理系統(tǒng)(及其開發(fā)工具)

      應(yīng)用系統(tǒng)

      數(shù)據(jù)庫(kù)管理員(DBA)和用戶

      數(shù)據(jù)管理是指對(duì)數(shù)據(jù)的組織、分類、編碼、存儲(chǔ)、檢索和維護(hù)。數(shù)據(jù)管理技術(shù)的發(fā)展過程 人工管理階段特點(diǎn):

      (1)數(shù)據(jù)不保存

      (2)系統(tǒng)沒有專用的軟件對(duì)數(shù)據(jù)進(jìn)行管理

      (3)數(shù)據(jù)不共享

      (4)數(shù)據(jù)不具有獨(dú)立性 文件系統(tǒng)階段特點(diǎn):

      (1)數(shù)據(jù)以文件形式長(zhǎng)期保存(2)數(shù)據(jù)由文件系統(tǒng)統(tǒng)一管理(3)應(yīng)用程序直接訪問數(shù)據(jù)文件(4)數(shù)據(jù)的存取基本上以記錄為單位 缺點(diǎn):(1)數(shù)據(jù)冗余度大(2)數(shù)據(jù)獨(dú)立性低(2)數(shù)據(jù)一致性差

      數(shù)據(jù)庫(kù)系統(tǒng)階段特點(diǎn):(1)數(shù)據(jù)共享性高、冗余少(2)數(shù)據(jù)結(jié)構(gòu)化(3)數(shù)據(jù)獨(dú)立性高

      (4)由DBMS進(jìn)行統(tǒng)一的數(shù)據(jù)控制功能 A)數(shù)據(jù)的安全性(security)控制 B)數(shù)據(jù)的完整性(integrity)控制 C)并發(fā)(concurrency)控制 D)數(shù)據(jù)恢復(fù)(recovery)

      數(shù)據(jù)模型分成兩個(gè)不同的層次:

      (1)概念模型(概念層數(shù)據(jù)模型,也稱信息模型):它是按用戶的觀點(diǎn)來 對(duì)數(shù)據(jù)和信息建模。

      (2)數(shù)據(jù)模型(組織層數(shù)據(jù)模型):它是按計(jì)算機(jī)系統(tǒng)的觀點(diǎn)對(duì)數(shù)據(jù)建模,主要用于DBMS的實(shí)現(xiàn)。

      抽象過程---兩步抽象

      (1)現(xiàn)實(shí)世界中的客觀對(duì)象抽象為概念模型;

      (2)把概念模型轉(zhuǎn)換為某一DBMS支持的數(shù)據(jù)模型。

      數(shù)據(jù)模型通常由數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和數(shù)據(jù)的約束條件三個(gè)要素組成(7)聯(lián)系(Relationship)

      實(shí)體內(nèi)部的聯(lián)系:組成實(shí)體的各屬性之間的聯(lián)系。實(shí)體之間的聯(lián)系:不同實(shí)體集之間的聯(lián)系。(1)一對(duì)一(2)一對(duì)多(3)多對(duì)多 目前最常用的數(shù)據(jù)模型有

      層次模型(Hierarchical Model)網(wǎng)狀模型(Network Model)關(guān)系模型(Relational Model)面向?qū)ο蟮臄?shù)據(jù)模型(5)關(guān)系模型的優(yōu)缺點(diǎn) 優(yōu)點(diǎn):

      1)建立在嚴(yán)格的數(shù)學(xué)概念的基礎(chǔ)上

      2)數(shù)據(jù)結(jié)構(gòu)簡(jiǎn)單、清晰,用戶易懂易用實(shí)體和各類聯(lián)系都用關(guān)系來表示。

      3)關(guān)系模型的存取路徑對(duì)用戶透明具有更高的數(shù)據(jù)獨(dú)立性,更好的安全保密性簡(jiǎn)化了程序員的工作和數(shù)據(jù)庫(kù)開發(fā)建立的工作 缺點(diǎn)

      1)存取路徑對(duì)用戶透明, 導(dǎo)致查詢效率往往不如非關(guān)系數(shù)據(jù)模型 2)為提高性能,必須對(duì)用戶的查詢請(qǐng)求進(jìn)行優(yōu)化 三級(jí)模式結(jié)構(gòu): 外模式:是數(shù)據(jù)庫(kù)中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述

      概念模式:是數(shù)據(jù)庫(kù)用戶使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述 內(nèi)模式:是數(shù)據(jù)物理結(jié)構(gòu)和存儲(chǔ)方式的描述

      二級(jí)映象

      (1)外模式/模式映象:定義外模式與模式之間的對(duì)應(yīng)關(guān)系 用途: 保證數(shù)據(jù)的邏輯獨(dú)立性

      (2)模式/內(nèi)模式映象:模式/內(nèi)模式映象定義了數(shù)據(jù)全局邏輯結(jié)構(gòu)與存儲(chǔ)結(jié)構(gòu)之間的對(duì)應(yīng)關(guān)系。

      用途:保證數(shù)據(jù)的物理獨(dú)立性 關(guān)系數(shù)據(jù)庫(kù)的規(guī)范化理論主要包括三個(gè)方面的內(nèi)容: 函數(shù)信賴

      范式(Normal Form)模式設(shè)計(jì)和模式分解

      進(jìn)行數(shù)據(jù)庫(kù)的操作時(shí),會(huì)出現(xiàn)以下幾方面的問題: 1.數(shù)據(jù)冗余

      2.插入異常 3.刪除異常 4.更新異常

      一個(gè)好的關(guān)系模式應(yīng)該具備以下四個(gè)條件: 1.盡可能少的數(shù)據(jù)冗余 2.沒有插入異常 3.沒有刪除異常 4.沒有更新異常

      1.第一范式

      第一范式(First Normal Form)是最基本的規(guī)范形式,即關(guān)系中每個(gè)屬性都是不可再分的簡(jiǎn)單項(xiàng)。

      2.第二范式

      定義:如果關(guān)系模式R∈1NF,并且R中的每個(gè)非主屬性都完全函數(shù)依賴于主碼,則R∈2NF。存在問題:(1)數(shù)據(jù)冗余

      (2)插入異常(3)刪除異常(4)更新異常

      之所以存在這些問題,是由于在S-L表中存在著非主屬性對(duì)主碼的傳遞依賴。3.第三范式

      定義:如果R(U,F)∈2NF,并且所有非主屬性都不傳遞依賴于主碼,則 R(U,F)∈3NF。

      關(guān)系模式S-L由2NF分解為3NF后,既沒有非主屬性對(duì)主碼的部分依賴,也沒有非主屬性對(duì)主碼的傳遞依賴,解決了2NF中存在的四個(gè)問題。(1)數(shù)據(jù)冗余降低(2)不存在插入異常(3)不存在刪除異常(4)不存在更新異常值

      4.BC范式

      (BCNF)

      定義:若關(guān)系模式R∈1NF,對(duì)于關(guān)系R的每個(gè)函數(shù)依賴X→Y且Y?X,X必含有候選碼,則R∈BCNF。

      即每個(gè)決定屬性集都包含候選碼。

      關(guān)系規(guī)范化的目的:解決關(guān)系模式中存在的插入、刪除、更新操作異常,數(shù)據(jù)冗余問題.關(guān)系規(guī)范化的方法:圍繞函數(shù)依賴的主線,對(duì)一個(gè)關(guān)系模式進(jìn)行分解,使關(guān)系從較低級(jí)范式變換到較高級(jí)范式。模式分解的準(zhǔn)則:(1)無損連接性(2)保持函數(shù)依賴 SQL語言特點(diǎn)

      (1)高度非過程化的語言(2)面向集合的語言(3)能以多種方式使用

      (4)具有查詢、操作、定義和控制四種語言一體化的特點(diǎn)(5)語言簡(jiǎn)潔、易學(xué)易用

      SQL按其功能可分為四大部分:數(shù)據(jù)定義功能、數(shù)據(jù)控制功能、數(shù)據(jù)查詢功能和數(shù)據(jù)操縱功能。

      (1)數(shù)據(jù)定義功能用于定義、刪除和修改數(shù)據(jù)庫(kù)中的對(duì)象;(2)數(shù)據(jù)查詢功能用于實(shí)現(xiàn)查詢數(shù)據(jù)的功能;

      (3)數(shù)據(jù)操縱功能用于實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)數(shù)據(jù)的增加、刪除和修改;(4)數(shù)據(jù)控制功能用于實(shí)現(xiàn)控制用戶對(duì)數(shù)據(jù)庫(kù)的操作權(quán)限 索引:記錄的關(guān)鍵字與其相應(yīng)地址的對(duì)應(yīng)表。

      視圖(view): 是從一個(gè)或者多個(gè)表或視圖中導(dǎo)出的表。它與基本表不同的是:

      (1)基本表(base table):獨(dú)立存在的表, 基本表中的數(shù)據(jù)是存在數(shù)據(jù)庫(kù)中。(2)視圖是一個(gè)虛表。即視圖所對(duì)應(yīng)的數(shù)據(jù)不實(shí)際存放在數(shù)據(jù)庫(kù)中

      (3)在數(shù)據(jù)庫(kù)中只存放視圖的定義,不存放視圖包含的數(shù)據(jù),這些數(shù)據(jù)仍存放在原來的基本表中。

      (4)基表中的數(shù)據(jù)發(fā)生變化,從視圖中查詢出的數(shù)據(jù)也隨之改變。視圖作用

      (1)簡(jiǎn)化數(shù)據(jù)查詢語句

      (2)使用戶能從多角度看到同一數(shù)據(jù)(3)提高了數(shù)據(jù)的安全性

      (4)提供了一定程度的邏輯獨(dú)立性

      一、SQL嵌入到主語言要解決的問題 ①如何識(shí)別SQL ②數(shù)據(jù)傳遞

      ③解決SQL一次一集合的操作與主語言一次一記錄操作的矛盾.用游標(biāo)解決。

      四、使用游標(biāo)的步驟

      1、說明游標(biāo)

      格式:exec SQL declear <游標(biāo)名> cursor for

      <object id="fwlom"></object>

      <span id="fwlom"></span><dfn id="fwlom"></dfn>

        <object id="fwlom"></object>