溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

SQL結構化查詢語言分類介紹

發(fā)布時間:2020-10-21 03:48:29 來源:網(wǎng)絡 閱讀:557 作者:品鑒初心 欄目:MySQL數(shù)據(jù)庫

SQL結構化查詢語言分類介紹


SQL:結構化查詢語言,它是一種對關系型數(shù)據(jù)進行定義和操作的語言方法。

SQL結構化查詢語言包含6個部分:

一、數(shù)據(jù)查詢語言(DQL)

DQL全稱Data Query Language,其語句也稱“數(shù)據(jù)檢索語句”,作用是從表中獲取數(shù)據(jù),確定數(shù)據(jù)怎樣在應用程序給出。關鍵字SELECT是DQL(也是所有SQL)用的最多的動詞,其他DQL常用的保留字WHERE,ORDER BY,GROUP BY和HAVING。這些DQL保留字常與其他類型的SQL語句一起使用。

  1. select(關鍵字)與order by(保留字)一起使用例子

    mysql> select user,host from mysql.user order by user;

    +-----------+-----------+

    | user      | host      |

    +-----------+-----------+

    | mysql.sys | localhost |

    | root      | localhost |

    | zabbix    | localhost |

    +-----------+-----------+

    3 rows in set (0.00 sec)

  2. select與from

    mysql> select user,host,authentication_string from mysql.user;

    +-----------+-----------+-------------------------------------------+

    | user      | host      | authentication_string                     |

    +-----------+-----------+-------------------------------------------+

    | root      | localhost | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |

    | mysql.sys | localhost | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE |

    | zabbix    | localhost | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |

    +-----------+-----------+-------------------------------------------+

    3 rows in set (0.00 sec)

    說明:mysql5.7數(shù)據(jù)庫下已經(jīng)沒有password這個字段了,password字段改成了authentication_string,用來查看用戶的賬戶密碼。

二、數(shù)據(jù)操作語言(DML)

DML全稱:Data Manipulation Language,其語句包括動詞INSERT,UPDATE和DELETE。它們分別用于添加,修改和刪除表中的行(數(shù)據(jù))。也稱為動作查詢語言。

  1. 刪除表中的數(shù)據(jù)

    先查看下mysql(庫),user(表)中的數(shù)據(jù)

    mysql> select user,host from mysql.user;

    +-----------+---------------+

    | user      | host          |

    +-----------+---------------+

    | nginx     | 192.169.5.144 |

    | mysql.sys | localhost     |

    | root      | localhost     |

    | zabbix    | localhost     |

    +-----------+---------------+

    4 rows in set (0.00 sec)

    然后把mysql庫user表中的nginx刪除掉:

    mysql> delete from mysql.user where user='nginx' and host='192.169.5.144';

    Query OK, 1 row affected (0.03 sec)

    說明:and host='192.169.5.144'可以不加,即:delete from mysql.user where user='nginx';

    最后,再次查看mysql(庫),user(表)中的用戶信息

    mysql> select user,host from mysql.user;

    +-----------+-----------+

    | user      | host      |

    +-----------+-----------+

    | mysql.sys | localhost |

    | root      | localhost |

    | zabbix    | localhost |

    +-----------+-----------+

    3 rows in set (0.00 sec)

    說明:我們可以看到,nginx這個用戶已經(jīng)被刪除啦!

  2. 添加和修改表中的數(shù)據(jù)

    查看:http://wutengfei.blog.51cto.com/10942117/1905963

三、事務處理語言(TPL)

它的語句能確保被DML語句影響的表的所有行及時得以更新。TPL語言包括BEGIN TRANSACTION,COMMIT和ROLLBACK。

說明:MySQL默認執(zhí)行commit的,Oracle需要自己手動執(zhí)行commit等TPL語言。

四、數(shù)據(jù)控制語言(DCL)

DCL全稱(Data Control Language),它的語句通過GRANT或REVOKE獲得許可。確定單個用戶和用戶組對數(shù)據(jù)庫對象的訪問。某些RDBMS可用GRANT或REVOKE控制對表單個列的訪問。

五、數(shù)據(jù)定義語言(DDL)

DDL全稱(Data Definition Language),其語句包括動詞CREATE和DROP。在數(shù)據(jù)庫中創(chuàng)建新表或刪除表;為表加入索引等。DDL包括許多與人數(shù)據(jù)庫目錄中獲得數(shù)據(jù)有關的保留字。它也是動作查詢的一部分。

六、指針控制語言(CCL)

它的語句,像DECLARE CURSOR,F(xiàn)ETCH INTO和UPDATE WHERE CURRENT用于對一個或多個表單獨行的操作。

SQL結構化查詢語言分類介紹


向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI