一、database schema 和database instance的區(qū)別
schema是數(shù)據(jù)庫的組織和結(jié)構(gòu),包含了表、列、數(shù)據(jù)類型、視圖、存儲過程等。schema可以理解為是一個描述數(shù)據(jù)的數(shù)據(jù),它的概念更多是在database設(shè)計過程中提及,顯示了數(shù)據(jù)庫對象及其相互之間的關(guān)系,相較于instance而言,schema不會經(jīng)常改變。而instance 是某一特定時刻內(nèi),數(shù)據(jù)庫中的數(shù)據(jù),隨著數(shù)據(jù)的更新而被創(chuàng)建的。
schema是數(shù)據(jù)庫模式,包括物理模式、邏輯模式和視圖模式;
instance是數(shù)據(jù)庫實例,是數(shù)據(jù)庫中某一時刻存儲的數(shù)據(jù)。
數(shù)據(jù)庫模式定義了屬于特定數(shù)據(jù)庫的表中的變量聲明;這些變量在某一時刻的值稱為該數(shù)據(jù)庫的實例。
database 和 schema 之間的基本區(qū)別是 database 定期操作而 schema 不經(jīng)常更改。schema 是數(shù)據(jù)庫的結(jié)構(gòu)定義,而數(shù)據(jù)庫是組織和相互關(guān)聯(lián)的數(shù)據(jù)的集合。
database 有 schema 和表的記錄,但 schema 包括表、屬性名稱、屬性類型、約束等。DDL(數(shù)據(jù)定義語言)語句用于生成和修改 schema,而 DML(數(shù)據(jù)操作語言)用于數(shù)據(jù)庫中的數(shù)據(jù)操作。schema 不使用內(nèi)存進行存儲,但 database 使用。
延伸閱讀:
二、什么是數(shù)據(jù)庫
有組織且相互關(guān)聯(lián)的數(shù)據(jù)的集合稱為數(shù)據(jù)庫。database 是一個存儲數(shù)據(jù)的應(yīng)用程序。它有各種應(yīng)用程序,包括 MySQL、Microsoft SQL、Oracle 等。
每個數(shù)據(jù)庫都不同,因為每個公司/組織都有其結(jié)構(gòu)、數(shù)據(jù)類型和約束。數(shù)據(jù)庫 會定期更新,以獲取有關(guān)公司的最新數(shù)據(jù)。
數(shù)據(jù)庫可以手動和數(shù)字方式維護。在這個數(shù)據(jù)無處不在的時代,數(shù)字數(shù)據(jù)庫是優(yōu)選和使用。數(shù)據(jù)庫的大小取決于組織的數(shù)據(jù)和需求。