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

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

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

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

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

      優(yōu)化MySchool數(shù)據(jù)庫設計總結

      時間:2019-05-12 07:02:25下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關的《優(yōu)化MySchool數(shù)據(jù)庫設計總結》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《優(yōu)化MySchool數(shù)據(jù)庫設計總結》。

      第一篇:優(yōu)化MySchool數(shù)據(jù)庫設計總結

      優(yōu)化MySchool數(shù)據(jù)庫設計總結

      第一章 :數(shù)據(jù)庫設計

      1,什么是數(shù)據(jù)庫設計

      數(shù)據(jù)庫設計就是將數(shù)據(jù)庫中的數(shù)據(jù)實體以及這些數(shù)據(jù)實體之間的光系,進行規(guī)劃和結構化的過程。

      2.數(shù)據(jù)庫的設計步驟

      (1)收集信息

      (2)標識實體

      (3)標識每個實體需要存儲的詳細信息

      (4)標識實體之間的關系 3.繪制E-R圖

      實體,屬性,聯(lián)系,映射基數(shù): 一對一 一對多 多對一 多對多

      實體關系圖 矩形表示實體集

      橢圓形表示屬性

      菱形表示聯(lián)系集

      直線用來連接屬性和實體集,也用來連接實體集和聯(lián)系集

      4.繪制數(shù)據(jù)庫模型圖

      (1),使用pdm工具新建一個數(shù)據(jù)庫模型圖

      (2),添加實體

      (3),添加數(shù)據(jù)列及相應的屬性

      (4),添加實體之間的映射關系

      5.規(guī)范數(shù)據(jù)庫設計三大范式:(1),第一范式

      (確保每列的原子性,都是不可再分的最小數(shù)據(jù)單元)

      (2),第二范式

      (確保表中的每列都和主鍵相關,并且除了主鍵以外其他列都依賴該主鍵)

      (3),第三范式

      (確保每列都和主鍵直接相關,而不是間接相關)

      第二章:數(shù)據(jù)庫的實現(xiàn)

      1:

      使用SQL語句創(chuàng)建和刪除數(shù)據(jù)庫

      If exists(select * from sysodatabases where name=’ 數(shù)據(jù)庫名’)Drop database數(shù)據(jù)庫名

      Create database 數(shù)據(jù)庫名

      On primary

      (name =’

      Filename=’

      ’ Size= Maxsize= Filegrowth=)Log on(name=’

      ’ Filename=’

      ‘ Size= Filegrowth=)Go 1.2 :刪除數(shù)據(jù)庫

      Drop database 數(shù)據(jù)庫名

      2:

      使用SQL語句創(chuàng)建和刪除表

      If exists(select * from sysobjects where name=’表名’)表名

      Create table 表名

      (列名 屬性 非空 主鍵 自動增長)Go 2.2刪除表 Drop table 表名

      3:

      使用SQL語句創(chuàng)建和刪除約束

      All table 表名

      Add constraint 約束名 約束類型 具體的約束說明 1,主鍵約束(primary key 列名)2,非空約束(not null)3,唯一約束(unique 列名)4,檢查約束(check 列名)5,默認約束(default 列名)6,外鍵約束(foreign key 列名)

      3.2:刪除約束

      Alter table 表名 rop constraint 約束名

      第三章:SQL編程

      1.變量

      1.1 局部變量聲明

      Declare 變量名(前面加一@符號)類型 Set.賦值變量指定的數(shù)據(jù)常量 Select.賦值一般從表中查詢數(shù)據(jù) 1.2 全局變量系統(tǒng)自帶

      2.輸出語句

      print :輸出局部變量和字符串,必須是字符串類型。

      Select:一般使用在查詢輸出。3.數(shù)據(jù)類型轉換

      Cast(表達式 as 數(shù)據(jù)類型)Convert(數(shù)據(jù)類型[(長度)],表達式[,樣式])Cast()和convert()函數(shù)都可以將某種數(shù)據(jù)類型的表達式顯示的轉換為另一種數(shù)據(jù)類型,但是convert()函數(shù)可以通過第三個參數(shù)指定轉化后的字符樣式。不同的樣式顯示格式不同。4.邏輯控制語句

      1,Begin –end 相當我們C#語言的大括號 2.if-else條件語句根據(jù)條件是否成立來確定程序的執(zhí)行方向,需要與begin-end結合使用。

      3.while.循環(huán)語句更具條件重復執(zhí)行,一般在事情要多次執(zhí)行的時候使用,break跳出循環(huán),contiune跳過contiune后面語句,回到while第一條語句,準備下次循環(huán)。

      語法: While(條件)Begin 語句塊 [break,continue] End 4.case多分支語句與C#開關結構類似 語法: Case When 條件1 then 結果1 When 條件2 then 結果 2 Else 其他結果 End 第四章 :高級查詢

      1.子查詢

      表連接查詢可以代替所有的子查詢,但是子查詢不可以代替所有的表查詢。2.in和not in子查詢

      使用in關鍵字可以使主查詢匹配子查詢返回多個單列值

      使用not in查詢取in查詢相反的結果 3.exists 和not exists子查詢

      Exists關鍵字是檢測子查詢語句,如果子查詢結果非空返回真,否則返回假。

      使用Not exists 查詢取exists查詢相反結果。

      第六章:事務,視圖和索引 1.事務

      事務是一種機制,一個操作序列,它包含了一組數(shù)據(jù)庫操作命令,并且把所有的命令作為一個整體一起向系統(tǒng)提交或撤銷操作請求,即這一組數(shù)據(jù)要么都執(zhí)行要么都不執(zhí)行。

      事務四大屬性 1.原子性

      (事務是一個完整的操作,事務的個元素是不可在分的)

      2.一致性

      (當事務完成時,數(shù)據(jù)必須處于一致狀態(tài)。)3.隔離性

      (對數(shù)據(jù)進行操作時所有的并發(fā)事務是彼此隔離的)4.持久性

      (事務成功完成后,它對于數(shù)據(jù)庫的改變是永久性的。)執(zhí)行事務語法

      Begin transaction(標記事務起始點)Commit transaction(提交事物)Rall back transaction(回滾事務)2.視圖

      視圖是另一種查看數(shù)據(jù)庫一個表和多個表的方法,它是一種虛擬表,可以保證數(shù)據(jù)庫的安全性,結果更容易理解,獲得數(shù)據(jù)更容易,限制數(shù)據(jù)檢索更容易,維護應用程序更方便。

      創(chuàng)建視圖

      Create view 視圖名稱 As(select 語句)刪除視圖

      Drop view 視圖名 查看視圖

      Select 所需數(shù)據(jù) from 視圖名稱 3.索引 3.1索引類型 1,唯一索引 2.主鍵索引 3.聚集索引 4.非聚集索引 5.復合索引 6.全文索引 3.2創(chuàng)建索引

      Create [索引類型] index 索引名稱 On 表名(列名)[with fillfactor=x] 3.2 使用索引查詢數(shù)據(jù) Select * from 表名 With(index =索引名稱)

      3.3刪除索引

      Drop index 表名.索引名稱 3.4 查看索引

      3.4.1 用系統(tǒng)存儲過程sp-helpindex查看 Exec sp-helpindex 表名 3.4.2用視圖sys_indexes Select * from sys_indexes 第七章 :存儲過程

      1.存儲過程的概念

      存儲過程是數(shù)據(jù)庫管理系統(tǒng)中保存。預先編譯的并能實現(xiàn)某種功能的sql程序。他是數(shù)據(jù)庫中運用比較廣泛的一種數(shù)據(jù)對象,存儲過程可加快查詢速度,提高訪問數(shù)據(jù)速度,實現(xiàn)模塊化編程,保持一致性和提高安全性。

      2.用戶定義存儲過程

      1.不帶參數(shù)存儲過程語法 Create procedure 存儲過程名稱 As Sql語句 go 1.帶參數(shù)存儲過程語法

      Create procedure 存儲過程名稱 @參數(shù)1 數(shù)據(jù)類型

      @參數(shù)2 數(shù)據(jù)類型 output(output關鍵字代表輸出參數(shù))As Sql語句 go

      處理錯誤信息

      用raiserror語句用來向用戶報告錯誤

      第二篇:數(shù)據(jù)庫課題設計總結

      數(shù)據(jù)庫課題設計心得

      ——計科系03本(3):黃胡康

      經(jīng)過近2個月的時間,總算是做好了成績管理系統(tǒng),自從確定了課題設計的題目后——學生成績管理系統(tǒng),便開始了準備工作。從剛開始寫成績管理的需求分析、畫數(shù)據(jù)流圖、概要設計說明書以及數(shù)據(jù)庫字典。在把這些準備工作都做好了后,便開始了設計頁面與編程。說實話,剛開始覺得什么都不會寫,尤其是VB,因為VB已經(jīng)學了一年多了,再說學VB那個時候又沒怎么學懂,基本的格式代碼都已經(jīng)忘的差不多了。還得重新學VB

      在整個設計過程中,通過各種渠道獲取資料。利用周末去大的書店查資料,把重要的東西記錄下來,也去圖書館借了一些相關的參考資料,同時還充分利用網(wǎng)上資源查一些資料。最后再綜合這些資料,結合VB、Access與SQL進行具體的操作。也可以說這是我第一次從開始設計到編程到最后完成自己獨立完成。在這過程中也遇到了很多難題,比如說,按學生的學號或名稱來查詢學生的成績時,就遇到了很多困難,先是怎樣把幾個表連接起來,再怎樣用DataGrid把一個學生的多條記錄顯示出來,怎樣求平均成績等等。通過查資料,仔細思考,把這些問題都解決了。但是,最后調試程序時,又發(fā)現(xiàn)程序缺少參照完整性,又重新回過去重寫代碼,可是寫了很久就是不能正常的運行,至少考慮了幾個小時,最后才發(fā)現(xiàn)代碼缺少了一部分條件,添加上后就可以正常運行了。第一次感受到了郁悶了半天后的喜悅心情。

      從做課題設計的過程中,我的體會挺多的。只要有信心與耐心,沒有做不到的事情。因為在這個過程中寫代碼與調試的過程中確實需要耐心與信心,否則就不可能寫完整。我也知道該課題還存在很多的漏洞,也不是很完整。比如還應該添加上系科管理,班級管理等。由于時間的原因,也不能使之更完整。如果確實要給自己一個分數(shù),我也不能給自己一個確切的多少分,但是我已經(jīng)盡我的努力寫的了,同時我自己也在這個過程中也學到了很多知識。其實這已經(jīng)使我很滿足了。分數(shù)也不能代表什么,我認為自己真正的學到了東西才是最重要的。

      第三篇:數(shù)據(jù)庫設計知識點總結

      數(shù)據(jù)庫設計 概念

      1.1 描述

      數(shù)據(jù)庫設計是指對于一個給定的應用環(huán)境,構造最優(yōu)的數(shù)據(jù)庫模式,建立數(shù)據(jù)庫及其應用系統(tǒng),使之能夠有效地存儲數(shù)據(jù)。

      1.2 數(shù)據(jù)庫設計包含四部分

      <1>需求分析 <2>概念結構設計 <3>邏輯結構設計 <4>物理結構設計

      1.3 數(shù)據(jù)庫設計的原則

      <1>明白自己的系統(tǒng)為OLTP系統(tǒng)還是OLAP系統(tǒng) <2>降低對數(shù)據(jù)庫功能的依賴 <3>嚴格遵從數(shù)據(jù)庫三范式 <4>適當?shù)目紤]數(shù)據(jù)分塊

      <5>盡量保證記錄的唯一標識存在 概念結構設計

      2.1 E--R圖設計

      E--R圖分為局部E--R圖和全局E--R圖 E--R模型基本符號 實體的表示:長方形

      聯(lián)系的表示:菱形,如1:

      1、1:n(m:1)、(m:n)屬性的表示:橢圓形

      2.2 確定實體與屬性的原則:

      <1>能作為屬性的盡量作為屬性而不要劃為實體

      <2>作為屬性的數(shù)據(jù)元素與實體之間的聯(lián)系只能是1:n的聯(lián)系 <3>作為屬性的數(shù)據(jù)項不能再用其他屬性加以描述,也不能與其他實體或屬性發(fā)生聯(lián)系。邏輯結構設計

      3.1 概念

      是將基本E--R圖轉換為與選用DBMS產(chǎn)品所支持的數(shù)據(jù)模型相符合的邏輯結構的過程。

      3.2 邏輯結構設計的過程分為

      <1>將概念結構轉換為現(xiàn)有DBMS支持的關系、網(wǎng)狀或層次模型中的某一種數(shù)據(jù)模型 <2>從功能和性能要求上對轉換的模型進行評價,看它是否滿足用戶要求 <3>對數(shù)據(jù)模型進行優(yōu)化

      3.3 邏輯結構設計的原則

      <1>一個實體型轉換為一個關系模型,實體的屬性就是關系的屬性,實體的鍵就是關系的鍵; <2>一個聯(lián)系轉換為一個關系模式,與該聯(lián)系相連的每個實體型的鍵以及聯(lián)系的屬性都轉換為關系的屬性。配置數(shù)據(jù)庫連接

      4.1 步驟

      1.打開powerdesigner,依次點擊:database--connect 2.點擊connect,打開對話窗口: 3.然后點擊Configuer按鈕,彈出數(shù)據(jù)源配置Configuer Data Connections對話框:

      4.把頁簽切換到第三個Connetion Profiles頁簽中,如果連接存在,選中就行,如果不存在,點擊add Data Source數(shù)據(jù)庫圖標進行新增,彈出Connection Profile Definition對話框 此對話框中需要輸入以下信息

      Connection profile name: 輸入數(shù)據(jù)庫連接文件名,它會自動加上后綴名.dcp;

      Directory:數(shù)據(jù)庫連接文件存放路徑;可以任意;

      Connetction type: 選擇JDBC;

      DBMS type : 數(shù)據(jù)庫類型選擇Oracle;

      Server name: 服務器名稱;也相當于對應PL/SQL登陸頁面的數(shù)據(jù)庫;

      Database name: 數(shù)據(jù)庫名字;

      User name: 登陸數(shù)據(jù)庫名字;

      Password: 密碼

      JDBC Driver class: 驅動類;只要下拉框選擇就行;

      JDBC Driver Jar URL: 訪問的服務器路徑

      JDBC connection files: 驅動包;需要指向ojdbc14.jar或者其他驅動的包的按鈕路徑;

      5.點擊Test Connection 按鈕進行連接測試;

      測試連接是否成功;成功會彈出成功或者失敗消息框,測試成功后。點擊確定按鈕,返回數(shù)據(jù)源配置Configuer Data Connections對話框,列表中就會多出一個.dcp文件,點擊確定即可。導出數(shù)據(jù)庫

      5.1 步驟

      導出數(shù)據(jù)庫表方法如下:

      1.啟動PowerDesigner

      2.菜單:File->Reverse Engineer->Database 出來New Physical Data Model對話框,DBMS選擇ORACLE Version 10g 選項,其他可以選擇默認值,點擊“確定”按鈕,彈出Database Reverse Engineering Options對話框:

      3.然后在下拉框中選擇我們之前建立的數(shù)據(jù)源文件,并再次輸入數(shù)據(jù)庫User ID和password,點擊Connection即可連接至數(shù)據(jù)庫,并得取所有的數(shù)據(jù)庫對象,在此我們選擇所有的Table。

      PowerDesigner 6.1 描述

      Power Designer 是Sybase公司的CASE工具集,使用它可以方便地對管理信息系統(tǒng)進行分析設計,他幾乎包括了數(shù)據(jù)庫模型設計的全過程。利用Power Designer可以制作數(shù)據(jù)流程圖、概念數(shù)據(jù)模型、物理數(shù)據(jù)模型,還可以為數(shù)據(jù)倉庫制作結構模型,也能對團隊設計模型進行控制。他可以與許多流行的數(shù)據(jù)庫設計軟件,例如PowerBuilder,Delphi,VB等相配合使縮短開發(fā)時間和使系統(tǒng)設計更優(yōu)化。

      power designer是能進行數(shù)據(jù)庫設計的強大的軟件,是一款開發(fā)人員常用的數(shù)據(jù)庫建模工具。使用它可以分別從概念數(shù)據(jù)模型(Conceptual Data Model)和物理數(shù)據(jù)模型(Physical Data Model)兩個層次對數(shù)據(jù)庫進行設計。在這里,概念數(shù)據(jù)模型描述的是獨立于數(shù)據(jù)庫管理系統(tǒng)(DBMS)的實體定義和實體關系定義;物理數(shù)據(jù)模型是在概念數(shù)據(jù)模型的基礎上針對目標數(shù)據(jù)庫管理系統(tǒng)的具體化。導入數(shù)據(jù)庫

      7.1 方法

      將視圖切換到physical模型下,連接數(shù)據(jù)庫:單擊databasedatabase connection,彈出下面窗口,進行數(shù)據(jù)庫的連接。

      鏈接完成后單擊toolsforward engineerschema generate,將彈出下面的窗口,單擊generate,即可將物理模型導入數(shù)據(jù)庫。實體

      8.1 實體間的關系

      實體間的三種關系:

      1.標識關系(identifying relationship);

      2.多對多關系(many-to-many relationship);

      3.非標識關系(non-identifying relationship)。

      標識關系是指把實體1中的主鍵作為實體2中的外鍵,且作為實體2的主鍵,非標識關系是指把實體1中的主鍵作為實體2中的外鍵,但不作為實體2的主鍵,8.2 概念

      Erwin中的實體有兩種:獨立實體和依賴實體。實體被指定作為獨立實體,或依賴實體,取決于其鍵的獲得方式。獨立實體由方角盒來指定,獨立實體不依賴于模型中任何其它實體來標識;依賴實體被指定為圓角盒,依賴實體依存于模型中的其它實體,修改實體名

      8.3 修改實體名稱

      方法一:單擊實體名,按F2鍵可 以對實體名稱進行修改;

      方法二:右鍵單擊欲進行修改的實體,選擇Entity Properties;

      8.4 方法三:雙擊實體修改。列的增刪

      方法一:右鍵單擊所選實體?≡馎tiue,在彈出的trbts窗口中添加é境蛐薷氖糶裕?方法二:單擊所選實體,按tb鍵也可以進行添加,刪除或修改操作。

      第四篇:數(shù)據(jù)庫總結

      數(shù)據(jù)庫老師畫的重點

      數(shù)據(jù)庫:數(shù)據(jù)庫是長期存儲在計算機內、有組織、可共享的大數(shù)據(jù)集合。數(shù)據(jù)庫操縱功能:查詢select、插入insert、刪除delete、修改update 數(shù)據(jù)庫系統(tǒng)的特點:1數(shù)據(jù)結構化2數(shù)據(jù)的共享高,冗余度低,易擴充3數(shù)據(jù)獨

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

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

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

      2、屬性:實體所具有的某一特性

      3、碼(key):唯一標識實體的屬性集稱為碼

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

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

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

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

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

      反應為實體(型)內部的聯(lián)系和實體(型)之間的聯(lián)系。實體內部的聯(lián)系通常是指

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

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

      1、層次模型(Hierarchical Model)

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

      3、關系模型(Relational Model)

      4、面向對象模型(Object Oriented Model)

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

      數(shù)據(jù)庫系統(tǒng)的三級模式結構:

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

      序、所使用的應用開發(fā)工具及高級程序設計語言無關。

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

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

      的局部數(shù)據(jù)的邏輯結構和特征的描述,是數(shù)據(jù)庫用戶的數(shù)據(jù)視圖,是與某一應用有關的數(shù)據(jù)的邏輯表示。

      3、內模式(internal scheme):內模式也稱存儲模式(storage schema),一個數(shù)據(jù)庫只有

      一個內模式。他是數(shù)據(jù)庫物理結構和存儲方式的描述,是

      數(shù)據(jù)在數(shù)據(jù)庫內部的表達方式。數(shù)據(jù)庫的二級映像功能與數(shù)據(jù)庫獨立性————

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

      ·外模式/模式 映像 ·模式/內模式 映像

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

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

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

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

      若關系中的某一屬性組的值能夠唯一的標識一個元組,則稱該屬性組為候選碼(candidate key)

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

      關系的三類完整性約束:實體完整性、參照完整性、用戶定義的完整性 實體完整性和參照完整性被稱作關系的兩個不變性

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

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

      若屬性(或屬性組)F是基本關系R的外碼,它與基本關系S的的主碼K相對應(基

      本關系R和S不一定是不同的關系),則對于R中每個元組在F上的值必須為:

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

      SQL(Structured Query Language),即結構化查詢語言,是關系數(shù)據(jù)庫的標準語言。SQL 的特點:

      1、綜合統(tǒng)一

      2、高度非過程化

      3、面向集合的操作方式

      4、以同一種語法結構提供多種使用方式

      5、語言簡潔、易學易用 SQL的動詞:

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

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

      繪制ER圖————

      在ER圖中有如下四個成分:

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

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

      劃一下劃線。

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

      標注聯(lián)系的類型。(對于一對一聯(lián)系,要在兩個實體連線方向各寫1; 對于一對

      多聯(lián)系,要在一的一方寫1,多的一方寫N;對于多對多關系,則要在兩個實體

      連線方向各寫N,M。

      基本表是本身獨立存在的表,在SQL中一個關系就對應一個基本表。一個(或多個)基本表對應一個存儲文件,一個表可以帶若干索引,索引也可以放在存儲文件中。存儲文件的邏輯結構組成了關系數(shù)據(jù)庫的內模式。存儲文件的物理結構是任意的,對用戶是透明的。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

      宜建立聚簇索引

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

      上機的時候不太一樣:drop index 表名。索引名字

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

      select [all | distinct] <目標列表達式>,······ from 表名或者視圖名,··· where 條件表達式

      group by 列名1 [having 條件表達式] order by 列名2 [asc | desc] ·如果有group by 子句,則結果按“列名1”的值進行分組,該屬性列值相

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

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

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

      (Sdept)Department

      from Student

      lower表示小寫

      常用的查詢條件————

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

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

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

      例子————

      ·select Sname,Sage

      from Student

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

      字符匹配:[not] like ‘字符串’[escape‘換嗎字符’] 百分號表示任意長度、下劃線表

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

      count([distinct | all] *)

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

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

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

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

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

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

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

      group by子句————

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

      例子:select Sno from SC

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

      非自然鏈接

      ·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 ·左外鏈接列出左邊關系中所有的元組,右外連接列出右邊關系中的所有元組

      嵌套查詢

      ·select Sname from Student

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

      ·找出每個學生超過他選修課程平均成績的課程號

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

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

      授權————

      Grant 權限,····· On 對象類型 對象名,····· To 用戶,·····

      [with grant option]只一句表示權限的傳遞

      例子: ·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

      一個滿足BCNF的關系模式有:

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

      3NF 編輯

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

      2NF(第二范式)

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

      第五篇:數(shù)據(jù)庫總結

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

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

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

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

      或者

      字段名

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

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

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

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

      使用格式:字段名

      date/time/datetime/timestamp 【此處不用定義字段的長度】,插入表的時候格式與字符串的插入格式一樣,都是用單引號插入

      date:日期類型

      格式:yyyy-MM-dd time:時間類型

      格式:hh:mm:ss Datetime:日期時間

      格式:yyyy-MM-dd hh:mm:ss Timestamp:時間戳

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

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

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

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

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

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

      類型(長度)[約束])注:字段n的結尾處不需要用逗號分隔

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

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

      七 查看當前表的值:select * from 表名

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

      約束:

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

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

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

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

      使用格式: 字段名

      類型(長度)not null 注:空格是不可以作為字符串使用的,空格相當于null,如果向設置not null的字段內插入數(shù)據(jù)是存在【‘空格’、null、(‘’)】當中一個或一個以上的時候就會報錯

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

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

      類型(長度)check(檢查的內容)注:在SQL語句中沒有實際的含義,但是需要會用

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

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

      字段名

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

      Alter table 表名 add constraint fk_f foreign key(要設置外鍵的字段名)references 被關聯(lián)的表名(被關聯(lián)的字段名);表的結構:

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

      記錄的操作:

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

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

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

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

      四 查詢記錄:select 字段名1,字段名n from 表名 where 查詢條件 查詢去掉重復的值:關鍵字 distinct 格式:select distinct 字段名1,字段名n from 表名命別名/賦值表: 關鍵字 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

      匹配標識符:’_’代表一個字符、%代表多個字符

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

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

      Limit m

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

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

      where 字段名 between 最大值

      and 最小值:

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

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

      邏輯運算符在此處可通用:<

      <=

      >

      >=

      =

      !=

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

      Select count(字段名)from 表名

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

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

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

      where 查詢條件 五 求某個字段的值的最大值: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 左表名.字段名=右表名.字段名

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

      right join 右表名

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

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

      inner join 右表名

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

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

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

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

      ‘字段名’的結果是這個字段名下的笛卡爾積

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

      一 求字符串長度:length Select

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

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

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

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

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

      now()

      迷糊中: group by

      order by 子查詢

      下載優(yōu)化MySchool數(shù)據(jù)庫設計總結word格式文檔
      下載優(yōu)化MySchool數(shù)據(jù)庫設計總結.doc
      將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
      點此處下載文檔

      文檔為doc格式


      聲明:本文內容由互聯(lián)網(wǎng)用戶自發(fā)貢獻自行上傳,本網(wǎng)站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發(fā)現(xiàn)有涉嫌版權的內容,歡迎發(fā)送郵件至:645879355@qq.com 進行舉報,并提供相關證據(jù),工作人員會在5個工作日內聯(lián)系你,一經(jīng)查實,本站將立刻刪除涉嫌侵權內容。

      相關范文推薦

        優(yōu)化設計有限元分析總結

        目 錄 目 錄 ................................................................................................................................................ 1 1......

        數(shù)據(jù)庫設計說明書

        **數(shù)據(jù)庫設計說明書 班級:姓名:學號 1 引言 1.1 編寫目的 1.2 編寫背景 2 系統(tǒng)功能分析 3 系統(tǒng)結構設計 3.1 概念結構設計(得出實體圖) 3.2 邏輯結構設計(實體、聯(lián)系的具體信息) 3......

        數(shù)據(jù)庫設計說明書

        文件編號:GL5.7 匯達軟件版次:A 代替:2000年3月21日 共2頁 第1頁 數(shù)據(jù)庫設計說明書 數(shù)據(jù)庫設計說明書的編制目的:對于設計中的數(shù)據(jù)庫的所有標識、邏輯結構和物理結構作出具體......

        數(shù)據(jù)庫設計心得

        數(shù)據(jù)庫設計經(jīng)驗談 數(shù)據(jù)庫設計經(jīng)驗談 一個成功的管理系統(tǒng),是由:[50% 的業(yè)務 + 50% 的軟件] 所組成,而 50% 的成功軟件又有 [25% 的數(shù)據(jù)庫 + 25% 的程序] 所組成,數(shù)據(jù)庫設計的好......

        數(shù)據(jù)庫設計流程

        數(shù)據(jù)庫設計流程 目前數(shù)據(jù)庫設計一般分為6個階段,即需求分析階段,概念結構設計階段,邏輯結構設計階段,物理結構設計階段,實施階段,運行與維護階段。 (1) 需求分析階段 需求分析階段......

        數(shù)據(jù)庫設計評分標準

        系統(tǒng)評分標準(40%) 一、系統(tǒng)功能設計的合理性(40分) 二、數(shù)據(jù)庫設計的合理性(60分) 總結報告評分標準(30%) 一、文章內容是否合理:基本上包括以下內容:(80分) 前言:簡要說明選題的背景和......

        數(shù)據(jù)庫設計可選題目

        保險代理人資格模擬考試系統(tǒng)的設計與實現(xiàn) 暴龍眼鏡專賣店銷售系統(tǒng)的設計與實現(xiàn) 機電學院職工信息系統(tǒng)的設計與實現(xiàn) 博陽高中學生管理系統(tǒng)的設計與實現(xiàn) 五家子村信息化管理系......

        數(shù)據(jù)庫設計教案[推薦]

        數(shù)據(jù)庫課程設計 數(shù)據(jù)庫課程設計教案 一、課程設計目的 數(shù)據(jù)庫系統(tǒng)課程設計是計算機科學與技術專業(yè)集中實踐性環(huán)節(jié)之一,是學習完《數(shù)據(jù)庫系統(tǒng)概論》課程后進行的一次全面的綜......