python學習-第十八週:MySQL資料庫
python學習-第十七週:MySQL資料庫
資料庫
- 什麼是資料庫
資料庫(Database)就是按照資料結構來組織,儲存和管理資料的倉庫
專業的資料庫是專門對資料進行建立,訪問,管理,搜尋等操作的軟體,比起我們自己用檔案讀寫的方式物件資料進行管理更加的方便,快速,安全
- 資料庫的作用
- 對資料進行持久化的儲存
- 方便資料的儲存和查詢,速度快,安全,方便
- 可以處理併發訪問
- 更加安全的許可權管理訪問機制
- 常見的資料庫
資料庫分兩大類,一類是 關係型資料庫。另一類叫做 非關係型資料庫。
- 關係型資料庫: MySQL,Oracle,PostgreSQL,SQLserver。。。。
- 非關係型資料庫:Redis記憶體資料庫,MongoDB文件資料庫。。。
- MySQL資料庫的安裝
MySQL資料庫需要去官方網站下載對應系統的安裝包,具體安裝步驟論壇中有很多,很容易完成安裝。
mysql的基本操作
對MySQL進行操作可以在命令列模式中輸入操作指令,或者通過圖型介面工具(如 Navicat等),也可以使用程式語言(python,php,java,go...)執行命令
-
登入mysql
mysql -u root -p
-
資料庫操作
檢視資料庫
show databases;
建立資料庫
create database 庫名 default charset=utf8;
刪除資料庫
drop database 庫名;
開啟資料庫
use 庫名;
-
資料表操作
資料庫管理系統中, 可以有很多庫, 每個資料庫中可以包括多張資料表
查看錶: `show tables;`
建立表: `create table 表名(欄位名1 型別,欄位名2 型別)engine=innodb default charset=utf8;`
建立表: 如果表不存在,則建立, 如果存在就不執行這條命令
`create table if not exists 表名(**欄位1 型別,欄位2 型別);`
create table if not exists users( id int not null primary key auto_increment, name varchar(4) not null, age tinyint, sex enum('男','女') )engine=innodb default charset=utf8;
刪除表: `drop table 表名;`
表結構: `desc 表名;`
檢視建標語句:`show create table users;`
-
資料操作 增刪改查
插入
insert into 表名(欄位1,欄位2,欄位3) values(值1,值2,值3);
insert into 表名(欄位1,欄位2,欄位3) values(a值1,a值2,a值3),(b值1,b值2,b值3);
查詢
select * from 表名;
select 欄位1,欄位2,欄位3 from 表名;
select * from 表名 where 欄位=某個值;
修改
update 表名 set 欄位=某個值 where 條件;
update 表名 set 欄位1=值1,欄位2=值2 where 條件;
update 表名 set 欄位=欄位+值 where 條件;
刪除
delete from 表名 where 欄位=某個值;
-
退出MySQL
exit;
或者quit;
Mysql資料庫匯入匯出
資料匯出
1.資料庫資料匯出
# 不要進入mysql,然後輸入以下命令 匯出某個庫中的資料
mysqldump -u root -p 庫名 > ~/Desktop/code/檔名.sql
匯出一個庫中所有資料,會形成一個建表和新增語句組成的sql檔案
之後可以用這個sql檔案到別的庫,或著本機中建立或回覆這些資料
2.將資料庫中的表匯出
# 不要進入mysql,然後輸入以下命令 匯出某個庫中指定的表的資料
mysqldump -u root -p 庫名 表名 > ~/Desktop/code/檔名.sql
資料匯入
# 在新的資料庫中 匯入備份的資料,匯入匯出的sql檔案
mysql -u root -p ops < ./檔名.sql
# 把匯出的表sql 匯入資料庫
mysql -u root -p ops < ./檔名.sql