數據庫概念
數據庫(Database)是按照數據結構來組織、存儲和管理數據,建立在計算機存儲設備上的倉庫。
簡單說,數據庫就是存放數據的倉庫。和圖書館存放書籍、糧倉存放糧食類似。
數據庫分類
分為 關系型數據庫 和 非關系型數據庫
所謂的關系型數據庫:就是基於關系模型建立的數據庫。
那什么是關系模型?
關系模型:利用關系(二維表),去描述實體信息,和實體之間的聯系的一種架構。
上面所謂的關系,其實就是二維表。
接下來:我們畫圖來理解下上面的這段話,怎么用二維表來描述實體,和實體之間的聯系的
學生表:
姓名 |
年齡 |
身高 |
體重 |
張三 |
30 |
187 |
70 |
李四 |
40 |
165 |
60 |
教室表:
班級名稱 |
教室號 |
|
Php1016 |
102 |
|
Java1011 |
201 |
|
.net0918 |
108 |
|
Ios1021 |
218 |
|
上面的學生表的每一行(我們也稱為一條記錄),比如張三這一行,就描述了張三這個實體,有姓名、年齡、身高、體重。教室表的每一行也描述了一個實體。
那怎么描述他們實體之間的關系呢?比如我想知道 張三所在班級的班級號是多少?
我們在學生表上加上一個字段,用來存放班級信息
姓名 |
年齡 |
身高 |
體重 |
班級名稱 |
張三 |
30 |
187 |
70 |
Php1016 |
李四 |
40 |
165 |
60
|
Java1011 |
這個時候,學生表和班級表之間就有了聯系了。我們通過張三確定他的班級名稱是php1016,然后通過學生表找到他的班級號是102.
常見的關系型數據庫和非關系型數據庫
常見的關系型數據庫:
oracle、DB2、SQLserver、Access、mysql、sqllite
大型數據庫:oracle、DB2
中型數據庫:sqlserver、mysql
小型數據庫:access、sqllist
mysql:之前屬於sun公司,后來sun被oracle收購,如今mysql屬於oracle公司。
是開源免費的數據庫軟件,php開發中最常用
非關系型庫近年來發展迅猛,nosql(not only sql 不僅僅是sql)
memcache、redis、mongoDB
按照key-》value(鍵值對)方式存放數據
"asfjaslfjaslfjaslf"=>{"name":'zhangsan',"age":18,'info':{"sex":'男'}}
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,關系數據庫管理系統) 應用軟件。
Mysql中用到的操作指令就是SQL指令。
我們以window下講解mysql的啟動和客戶端的登錄。
啟動和停止MySQL服務
Mysql是一種C/S結構:客戶端和服務端
服務端對應的軟件:Mysqld.exe
命令行方式
通過Windows下打開cmd控制器,然后使用命令進行管理
Net start 服務(mysql):開啟服務
Net stop mysql:關閉服務
系統服務方式
前提:在安裝的Mysql的時候將mysql添加到Windows的服務中去了
方式1進入服務:
方式2進入服務:通過命令行:services.msc
通過服務對Mysql服務器進行管理
方案1:右鍵服務,然后選擇開啟或者停止
方案2:雙擊服務,進入到服務詳情界面,可以點擊開啟或者停止按鈕
mysql客戶端登錄mysql服務器:
找到mysql.exe(通過cmd控制台:如果在安裝的時候指定了mysql.exe所在的路徑為環境變量,就可以直接訪問;如果沒有,那么就必須進入到mysql.exe所在路徑)
舉例:
去圖書館:1圖書館地址(文勝大樓) 2、第幾層(2樓) 3、確認用戶信息
連接服務器:
mysql -h域名或者ip地址 -P端口號 -u用戶名 -p密碼
-h 和-P可以不寫用默認,localhost和3306
-u和-p是用戶名和密碼,用於確定客戶端的身份
注意事項
1、 通常端口都可以默認:mysql堅挺的端口通常都是3306
2、 密碼的輸入可以先輸入-p,直接換行,然后再以密文方式輸入密碼
退出客戶端連接
斷開與服務器的連接:通常Mysql提供的服務器數量有限,一旦客戶端用完,建議就應該斷開連接。
建議方式:使用SQL提供的指令
Exit; //exit帶分號
\q; //quit縮寫
Quit: