MySQL數據操做: DMLhtml
========================================================mysql
在MySQL管理軟件中,能夠經過SQL語句中的DML語言來實現數據的操做,包括sql
========================================================數據庫
1. 插入完整數據(順序插入) 語法一: INSERT INTO 表名(字段1,字段2,字段3…字段n) VALUES(值1,值2,值3…值n); 語法二: INSERT INTO 表名 VALUES (值1,值2,值3…值n); 2. 指定字段插入數據 語法: INSERT INTO 表名(字段1,字段2,字段3…) VALUES (值1,值2,值3…); 3. 插入多條記錄 語法: INSERT INTO 表名 VALUES (值1,值2,值3…值n), (值1,值2,值3…值n), (值1,值2,值3…值n); 4. 插入查詢結果 語法: INSERT INTO 表名(字段1,字段2,字段3…字段n) SELECT (字段1,字段2,字段3…字段n) FROM 表2 WHERE …;
往一張表裏插記錄能夠用select代替values,把查的結果直接傳給表相應的字段,查出來的結果必須和表的字段一一對應。安全
語法: UPDATE 表名 SET 字段1=值1, 字段2=值2, WHERE CONDITION; 示例: UPDATE mysql.user SET password=password(‘123’) where user=’root’ and host=’localhost’;
更新mysql庫下的user表,設置字段password=password('123'),用來將密碼加密,where指定須要改掉密碼的記錄,用戶爲root且地址爲localhost的記錄。定位到記錄後,把符合條件的password都進行修改。ide
語法: DELETE FROM 表名 WHERE CONITION; 示例: DELETE FROM mysql.user WHERE password=’’; 練習: 更新MySQL root用戶密碼爲mysql123 刪除除從本地登陸的root用戶之外的全部用戶
刪除符合條件的一些記錄用delete。工具
若是要刪除整張表,能夠用truncate。# 應該用truncate清空表,比起delete一條一條地刪除記錄,truncate是直接清空表,在刪除大表時用它。測試
語法: truncate 表名; 示例: truncate student1;
單表查詢:http://www.cnblogs.com/xiugeng/p/9028541.html加密
多表查詢:http://www.cnblogs.com/xiugeng/p/9030720.htmlspa
受權:對文件夾,對文件,對文件某一字段的權限。受權操做只能經過root用戶!!
查看幫助:help grant
經常使用權限有:select,update,alter,delete all能夠表明除了grant以外的全部權限。
#受權操做只能經過root用戶!!
set global validate_password_policy=0; set global validate_password_length=1; # 安全設置問題,查看這個:http://www.jb51.net/article/95399.htm 建立帳號: # 本地帳號 create user 'egon'@'localhost' identified by '1234'; # mysql -uegon -p123 # 遠程帳號 create user 'egon'@'192.168.31.10' identified by '1234'; # mysql -uegon -p123 -h 服務端ip # 讓一個網段內全部機器均可以登陸 create user 'egon'@'192.168.31.%' identified by '1234'; # 讓全部能Ping通機器均可以登陸 create user 'egon'@'%' identified by '1234'; 受權級別 user:*.* 對全部庫全部表 db:db1.* 對db1庫裏全部表 table_priv:db1.t1 對某一個表開放權限 columns_priv:id,name 對某一個字段開放權限 受權方法 # user級別 select * from mysql.user\G;能夠查看受權狀況 # 受權 grant select on *.*; 受權全部庫全部表的select grant select on *.* to 'egon'@'localhost'; grant all on *.* to 'egon'@'localhost'; 受權對全部庫下全部表的權限(all不包含grant權限) # 收回權限 revoke select on *.* from 'egon'@'localhost'; # db級別 select * from mysql.db\G;能夠查看受權狀況 # 受權 grant selcect on db1.* to 'egon'@'localhost'; # 收回權限 revoke select on db1.* from 'egon'@'localhost'; # table select * from mysql.tables_priv\G;查看受權狀況 # 受權 grant select on db1.t2 to 'egon'@'localhost'; # 收回權限 revoke select on db1.t2 from 'egon'@'localhost'; # 字段級別 # 受權 grant select(id,name), update(age) on db1.t2 to 'egon'@'localhost'; # 字段的查看、字段的更新權限 # 收回權限 revoke select(id,name),update(age) from db1.t2 to 'egon'@'localhost';
在生產環境中操做MySQL數據庫仍是推薦使用命令行工具mysql,但在咱們本身開發測試時,能夠使用可視化工具Navicat,以圖形界面的形式操做MySQL數據庫
官網下載:https://www.navicat.com/en/products/navicat-for-mysql
網盤下載:https://pan.baidu.com/s/1bpo5mqj 須要掌握的基本操做 掌握: #1. 測試+連接數據庫 #2. 新建庫 #3. 新建表,新增字段+類型+約束 #4. 設計表:外鍵 #5. 新建查詢 #6. 備份庫/表 #注意: 批量加註釋:ctrl+?鍵 批量去註釋:ctrl+shift+?鍵