文章目錄
1、數據庫的概述
1.一、關係型數據庫
1.二、非關係型數據庫
2、數據庫的基本操做命令
2.一、查看數據庫結構
3、SQL語句
3.一、SQL語言分類
3.二、DDL語句
3.三、DML語句
3.四、DQL語句
1、數據庫的概述
數據庫做用:數據持久化保存,高可靠,高可用,數據的快速提取。
數據庫存儲類型:關係型數據庫 非關係型數據庫。
1.一、關係型數據庫
其存儲結構是二維表格,反映事物及其聯繫的數據是以表格形式保存的
在每一個二維表中,每一行稱爲一條記錄,用來描述一個對象的信息,每一列稱爲一個字段,用來描述對象的一個屬性。
![Mysql 數據庫的基本操做](http://static.javashuo.com/static/loading.gif)
關係型數據庫:
MySQL(oracle公司),sql server(微軟公司),access(微軟公司),oracle,db2(IBM公司),sybase(sybase公司)
1.二、非關係型數據庫
非關係型數據庫存儲方式
鍵-值方式(key–value),以鍵爲依據存儲、刪、改數據
列存儲(Column-oriented), 將相關的數據存儲在列族中
文檔的方式,數據庫由-系列數據項組成,每一個數據項都
有名稱與對應的值
非關係型數據庫(統稱NOSQL):
redis(內存數據庫/緩存數據庫): K-V鍵值對 key-value 變量 名-值
memcache (內存數據庫/緩存數據庫) :K-V鍵值對
非關係型數據庫的優勢:
數據庫高併發讀寫的需求
對海量數據高效率存儲與訪問
數據庫的高擴展性與高可用性的需求
2、數據庫的基本操做命令
2.一、查看數據庫結構
一、查看數據庫的列表信息
show databses;
![Mysql 數據庫的基本操做](http://static.javashuo.com/static/loading.gif)
二、查看數據庫中的數據表信息
use 數據庫名; ##切換到庫
show tables; ##查看數據庫中的數據表
![Mysql 數據庫的基本操做](http://static.javashuo.com/static/loading.gif)
三、顯示數據表的結構
describe [數據庫名].表名
![Mysql 數據庫的基本操做](http://static.javashuo.com/static/loading.gif)
顯示數據表的結構(字段)
3、SQL語句
3.一、SQL語言分類
一、SQL語言
是Structured Query Language的縮寫,即結構化查詢語言
是關係型數據庫的標準語言
用於維護管理數據庫,如數據查詢、數據更新、訪問控制、對象管理等功能
二、SQL分類
DDL:數據定義語言
DML:數據操縱語言
DQL:數據查詢語言
DCL:數據控制語言
3.二、DDL語句
DDL語句用於建立數據庫對象,如庫、表、索引等
一、使用DDL語句新建庫、表
建立數據庫
create database 自定義數據庫名
![Mysql 數據庫的基本操做](http://static.javashuo.com/static/loading.gif)
建立數據表:mysql
use school;
Database changed //建立沒問題
show tables;
Empty set (0.00 sec) //沒有數據表
## 建立表 :包含【 id(學號) name(姓名) address(地址) score(成績)】
create table info (
id int(4) not null,
name char(10) not null,
address varchar(50) default '南京',
score decimal,
primary key (id));
![Mysql 數據庫的基本操做](http://static.javashuo.com/static/loading.gif)
二、使用DDL語句刪除庫、表
### 刪除整個數據表: drop table 數據表名;
drop table info;
##刪除這個數據庫:drop database 數據庫名;
drop database school;
![Mysql 數據庫的基本操做](http://static.javashuo.com/static/loading.gif)
![Mysql 數據庫的基本操做](http://static.javashuo.com/static/loading.gif)
3.三、DML語句
DML語句用於對錶中的數據進行管理
包括如下操做:
INSERT:插入新數據
UPDATE:更新原有數據
DELETE :刪除不須要的數據
一、向數據表中插入新的數據記錄
INSERT INTO 表名(字段1,字段2, …) VALUES(字段1的值,字段2的值,…)
INSERT INTO 表名 VALUES(字段1的值,字段2的值,…)
##插入 info 數據表裏的字段 插入的值要對應表裏的字段的順序,不可亂寫
mysql> insert into info (id,name,address,score) values (1,'zhangsan','南京',88);
mysql> insert into info (id,name,address,score) values (2,'lisi','上海',99);
![Mysql 數據庫的基本操做](http://static.javashuo.com/static/loading.gif)
![Mysql 數據庫的基本操做](http://static.javashuo.com/static/loading.gif)
二、修改數據表中的數據記錄
## 修改數據表:update 數據表名 set 字段 where 對應的的行;
update info set address='上海' where id=3
![Mysql 數據庫的基本操做](http://static.javashuo.com/static/loading.gif)
表達式
update stu set address='杭州' where id=4;
1redis
三、在數據表中刪除指定的數據記錄
##刪除數據表中的數據:delete from 數據表名 數據表的字段;
## 刪除info 數據表中姓名叫wangwu的數據
delete from info where name='wangwu';
![Mysql 數據庫的基本操做](http://static.javashuo.com/static/loading.gif)
3.四、DQL語句
DQL是數據查詢語句,只有一條: SELECT
用於從數據表中查找符合條件的數據記錄
查詢時可不指定條件
## 查詢數據表全部信息
select * from info;
![Mysql 數據庫的基本操做](http://static.javashuo.com/static/loading.gif)
## 查詢時指定條件
select 字段名1,字段名2… from 表名 where 條件表達式
select * from info where id=2;
![Mysql 數據庫的基本操做](http://static.javashuo.com/static/loading.gif)