數據庫DML操作(DCL了解)


DQL:SELECT * FROM 表名

DML(數據操作語言,它是對表記錄的操作(增、刪、改)!)

1. 插入數據
* INTERT INTO 表名(列名1,列名2, ...) VALUES(列值1, 列值2, ...);
  > 在表名后給出要插入的列名,其他沒有指定的列等同與插入null值。所以插入記錄總是插入一行,不可能是半行。
  > 在VALUES后給出列值,值的順序和個數必須與前面指定的列對應
* INTERT INTO 表名 VALUES(列值1, 列值2)
  > 沒有給出要插入的列,那么表示插入所有列。
  > 值的個數必須是該表列的個數。
  > 值的順序,必須與表創建時給出的列的順序相同。

 

在數據庫中所有的字符串類型,必須使用單引,不能使用雙引!
日期類型也要使用單引!

// 插入所有列
INSERT INTO stu(
  number, name, age, gender
)
VALUES(
  'ITCAST_0001', 'zhangSan', 28, 'male'
);
// 插入部分列,沒有指定的列默認為NULL值
INSERT INTO stu(
  number, name
) VAKLUES(
  'ITCAST_0002', 'liSi'
);

 

// 不給出插入列,那么默認為插入所有列!值的順序要與創建表時列的順序相同
INSERT INTO stu VALUES(
  'ITCAST_0003', 'wangWu', 82, 'female'
);

 

2. 修改數據
* UPDATE 表名 SET 列名1=列值1, 列名2=列值2, ... [WHERE 條件]
* 條件(條件可選的):
  > 條件必須是一個boolean類型的值或表達式:UPDATE t_person SET gender='男', age=age+1 WHERE sid='1';
  > 運算符:=、!=、<>、>、<、>=、<=、BETWEEN...AND、IN(...)、IS NULL、NOT、OR、AND
列如:
 

WHERE age >= 18 AND age <= 80
WHERE age BETWEEN 18 AND 80

WHERE name='zhangSan' OR name='liSi'
WHERE name IN ('zhangSan', 'liSi')
WHERE age IS NULL, //不能使用等號
WHERE age IS NOT NULL

 


3. 刪除數據
* DELETE FROM 表名 [WHERE 條件];
* TRUNCATE  TABLE 表名:TRUNCATE是DDL語句,它是先刪除drop該表,再create該表。而且無法回滾!!!

 

DCL(理解)

* 一個項目創建一個用戶!一個項目對應的數據庫只有一個!
* 這個用戶只能對這個數據庫有權限,其他數據庫你就操作不了了!

1. 創建用戶
  * CREATE USER 用戶名@IP地址 IDENTIFIED BY '密碼';
    > 用戶只能在指定的IP地址上登錄
  * CREATE USER 用戶名@'%' IDENTIFIED BY '密碼';
    > 用戶可以在任意IP地址上登錄

2. 給用戶授權
  * GRANT 權限1, … , 權限n ON 數據庫.* TO 用戶名@IP地址
    > 權限、用戶、數據庫
    > 給用戶分派在指定的數據庫上的指定的權限
    > 例如;GRANT CREATE,ALTER,DROP,INSERT,UPDATE,DELETE,SELECT ON mydb1.* TO user1@localhost;
      * 給user1用戶分派在mydb1數據庫上的create、alter、drop、insert、update、delete、select權限
  * GRANT ALL ON 數據庫.* TO 用戶名@IP地址;
    > 給用戶分派指定數據庫上的所有權限

3. 撤銷授權
  * REVOKE 權限1, … , 權限n ON 數據庫.* FROM 用戶名@IP地址;
    > 撤消指定用戶在指定數據庫上的指定權限
    > 例如;REVOKE CREATE,ALTER,DROP ON mydb1.* FROM user1@localhost;
      * 撤消user1用戶在mydb1數據庫上的create、alter、drop權限

4. 查看權限
  * SHOW GRANTS FOR 用戶名@IP地址
    > 查看指定用戶的權限

5. 刪除用戶
  * DROP USER 用戶名@IP地址


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM