資料庫概念 資料庫(Database)是按照數據結構來組織、存儲和管理數據的建立在電腦存儲設備上的倉庫。 資料庫:存儲數據的倉庫 資料庫分類 網路資料庫 網路資料庫是指把資料庫技術引入到電腦網路系統中,藉助於網路技術將存儲於資料庫中的大量信息及時發佈出去;而電腦網路藉助於成熟的資料庫技術對網路 ...
資料庫概念
資料庫(Database)是按照數據結構來組織、存儲和管理數據的建立在電腦存儲設備上的倉庫。
資料庫:存儲數據的倉庫
資料庫分類
網路資料庫
網路資料庫是指把資料庫技術引入到電腦網路系統中,藉助於網路技術將存儲於資料庫中的大量信息及時發佈出去;而電腦網路藉助於成熟的資料庫技術對網路中的各種數據進行有效管理,並實現用戶與網路中的資料庫進行實時動態數據交互。
層級資料庫
層次結構模型實質上是一種有根結點的定向有序樹(在數學中"樹"被定義為一個無回的連通圖)。
關係資料庫
關係資料庫,是建立在關係模型基礎上的資料庫,藉助於集合代數等數學概念和方法來處理資料庫中的數據。
資料庫的另外一種區分方式:基於存儲介質
存儲介質分為兩種:磁碟和記憶體
關係型資料庫:存儲在磁碟中
非關係型資料庫:存儲在記憶體中
關係型資料庫
基本概念
關係資料庫,是建立在關係模型基礎上的資料庫,藉助於集合代數等數學概念和方法來處理資料庫中的數據。現實世界中的各種實體以及實體之間的各種聯繫均用關係模型來表示。關係模型是由埃德加·科德於1970年首先提出的,並配合“科德十二定律”。現如今雖然對此模型有一些批評意見,但它還是數據存儲的傳統標準。關係模型由關係數據結構、關係操作集合、關係完整性約束三部分組成。
關係數據結構:指的數據以什麼方式來存儲,是一種二維表的形式存儲
本質:二維表
姓名 |
年齡 |
身高 |
體重 |
張三 |
30 |
187 |
70 |
李四 |
40 |
167 |
68 |
關係操作集合:如何來關聯和管理對應的存儲數據,SQL指令
獲取張三的年紀:已知條件為姓名
Select 年齡 from 二維表 where 姓名 = 張三;
關係完整性約束:數據內部有對應的關聯關係,以及數據與數據之間也有對應的關聯關係
姓名 |
年齡 |
身高 |
體重 |
張三 |
30 |
187 |
70 |
李四 |
40 |
|
|
表內約束:對應的具體列只能放對應的數據(不能亂放)
表間約束:自然界各實體都是有著對應的關聯關係(外鍵)
典型關係型資料庫
Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL、SQLite
小型關係型資料庫:Microsoft Access,SQLite
中型關係型資料庫:SQL Server,Mysql
大型關係型資料庫:Oracle,DB2
Mysql當前跟Oracle是一個公司的:隸屬於Oracle
SQL介紹
SQL基本介紹
結構化查詢語言(Structured Query Language)簡稱SQL,是一種特殊目的的編程語言,是一種資料庫查詢和程式設計語言,用於存取數據以及查詢、更新和管理關係資料庫系統;同時也是資料庫腳本文件的擴展名。
SQL就是專門為關係型資料庫而設計出來的。
SQL分類
1、 數據查詢語言(DQL:Data Query Language):
其語句,也稱為“數據檢索語句”,用以從表中獲得數據,確定數據怎樣在應用程式給出。保留字SELECT是DQL(也是所有SQL)用得最多的動詞,其他DQL常用的保留字有WHERE,ORDER BY,GROUP BY和HAVING。這些DQL保留字常與其他類型的SQL語句一起使用。
專門用於查詢數據:代表指令為select/show
2、 數據操作語言(DML:Data Manipulation Language):
其語句包括動詞INSERT,UPDATE和DELETE。它們分別用於添加,修改和刪除表中的行。也稱為動作查詢語言。
專門用於寫數據:代表指令為insert,update和delete
3、 事務處理語言(TPL):
它的語句能確保被DML語句影響的表的所有行及時得以更新。TPL語句包括BEGIN TRANSACTION,COMMIT和ROLLBACK。(不是所有的關係型資料庫都提供事務安全處理)
專門用於事務安全處理:transaction
4、 數據控制語言(DCL):
它的語句通過GRANT或REVOKE獲得許可,確定單個用戶和用戶組對資料庫對象的訪問。某些RDBMS可用GRANT或REVOKE控制對錶單個列的訪問。
專門用於許可權管理:代表指令為grant和revoke
5、 數據定義語言(DDL):
其語句包括動詞CREATE和DROP。在資料庫中創建新表或刪除表(CREAT TABLE 或 DROP TABLE);為表加入索引等。DDL包括許多與人資料庫目錄中獲得數據有關的保留字。它也是動作查詢的一部分。
專門用於結構管理:代表指令create和drop(alter)
MySQL基本介紹
MySQL是一個關係型資料庫管理系統,由瑞典MySQL AB 公司開發,目前屬於 Oracle 旗下產品。MySQL 是最流行的關係型資料庫管理系統之一,在 WEB 應用方面,MySQL是最好的 RDBMS (Relational Database Management System,關係資料庫管理系統) 應用軟體。
1、 Mysql是一種開源免費的資料庫產品
2、 Mysql對PHP的支持是最好(wamp或者lamp)
Mysql中用到的操作指令就是SQL指令
啟動和停止MySQL服務
Mysql是一種C/S結構:客戶端和服務端
服務端對應的軟體:Mysqld.exe
1、命令行方式
通過Windows下打開cmd控制器,然後使用命令進行管理
Net start 服務(mysql):開啟服務
Net stop mysql:關閉服務
2、系統服務方式
前提:在安裝的Mysql的時候將mysql添加到Windows的服務中去了
方式1進入服務:通過電腦管理進入
方式2進入服務:通過命令行"services.msc"打開服務
通過服務對Mysql伺服器進行管理
方案1:右鍵服務,然後選擇開啟或者停止
方案2:雙擊服務,進入到服務詳情界面,可以點擊開啟或者停止按鈕
登錄和退出MySQL系統
通過客戶端(mysql.exe)與伺服器進行連接認證,就可以進行操作
通常:服務端與客戶端不在同一臺電腦上
登錄
1、 找到mysql.exe(通過cmd控制台:如果在安裝的時候指定了mysql.exe所在的路徑為環境變數,就可以直接訪問;如果沒有,那麼就必須進入到mysql.exe所在路徑)
2、 輸入對應的伺服器地址:-h:host -h[IP地址/功能變數名稱]
3、 輸入伺服器中Mysql監聽的埠: -P:port –P:3306
4、 輸入用戶名:-u:username -u:root
5、 輸入密碼:-p:password –p:root
連接認證基本語法:
1、Mysql.exe/mysql -h主機地址 -P埠 -u用戶名 -p密碼
2、一般我們使用 mysql -u賬戶 -p密碼
3、通常埠都可以預設:mysql堅挺的埠通常都是3306;密碼的輸入可以先輸入-p,直接換行,然後再以密文方式輸入密碼
退出
斷開與伺服器的連接:通常Mysql提供的伺服器數量有限,一旦客戶端用完,建議就應該斷開連接。
建議方式:使用SQL提供的指令
Exit; //exit帶分號,也可不帶分號
\q; //quit縮寫
quit:
Mysql服務端架構
Mysql服務端架構有以下幾層構成:
1、 資料庫管理系統(最外層):DBMS,專門管理伺服器端的所有內容
2、 資料庫(第二層):DB,專門用於存儲數據的倉庫(可以有很多個)
3、 二維數據表(第三層):Table,專門用於存儲具體實體的數據
4、 欄位(第四層):Field,具體存儲某種類型的數據(實際存儲單元)
資料庫中常用的幾個關鍵字
Row:行
Column:列(field)