SQL的DCL,DDL,DML和DQL分别是什么

打印 上一主题 下一主题

主题 1892|帖子 1892|积分 5676

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
SQL(Structured Query Language)包罗以下四种重要语言类别,分别用于不同的数据库操作:
1. DCL(Data Control Language,数据控制语言)

用于控制数据库访问权限和安全。
常见命令



  • GRANT:授予用户或脚色权限。
    1. GRANT SELECT, INSERT ON table_name TO user_name;
    复制代码
  • REVOKE:打消用户或脚色的权限。
    1. REVOKE SELECT, INSERT ON table_name FROM user_name;
    复制代码
应用场景



  • 管理用户权限(如 SELECT、INSERT、UPDATE、DELETE)。
  • 控制数据库对象(如表、视图)的访问。
2. DDL(Data Definition Language,数据界说语言)

用于界说和管理数据库对象(如表、索引、视图等)的结构。
常见命令



  • CREATE:创建数据库对象。
    1. CREATE TABLE table_name (
    2.     column1 datatype,
    3.     column2 datatype,
    4.     ...
    5. );
    复制代码
  • ALTER:修改数据库对象。
    1. ALTER TABLE table_name ADD column_name datatype;
    复制代码
  • DROP:删除数据库对象。
    1. DROP TABLE table_name;
    复制代码
  • TRUNCATE:清空表中的数据(保存表结构)。
    1. TRUNCATE TABLE table_name;
    复制代码
应用场景



  • 创建、修改或删除表、索引、视图等。
  • 界说数据库架构。
3. DML(Data Manipulation Language,数据操作语言)

用于操作数据库中的数据(增删改查)。
常见命令



  • INSERT:插入数据。
    1. INSERT INTO table_name (column1, column2) VALUES (value1, value2);
    复制代码
  • UPDATE:更新数据。
    1. UPDATE table_name SET column1 = value1 WHERE condition;
    复制代码
  • DELETE:删除数据。
    1. DELETE FROM table_name WHERE condition;
    复制代码
应用场景



  • 操作表中的数据(增删改)。
  • 执行事件(如 BEGIN TRANSACTION、COMMIT、ROLLBACK)。
4. DQL(Data Query Language,数据查询语言)

用于查询数据库中的数据。
常见命令



  • SELECT:查询数据。
    1. SELECT column1, column2 FROM table_name WHERE condition;
    复制代码
应用场景



  • 检索和过滤数据。
  • 聚合和分析数据(如 GROUP BY、HAVING、ORDER BY)。
总结对比

类别功能常见命令应用场景DCL控制权限GRANT, REVOKE管理用户权限和访问控制DDL界说结构CREATE, ALTER, DROP, TRUNCATE创建、修改或删除数据库对象DML操作数据INSERT, UPDATE, DELETE增删改数据,执行事件DQL查询数据SELECT检索、过滤和分析数据 示例场景


  • 创建表并插入数据(DDL + DML)
    1. CREATE TABLE users (
    2.     id INT PRIMARY KEY,
    3.     name VARCHAR(50),
    4.     age INT
    5. );
    6. INSERT INTO users (id, name, age) VALUES (1, 'Alice', 25);
    复制代码
  • 查询数据并授予权限(DQL + DCL)
    1. SELECT * FROM users WHERE age > 20;
    2. GRANT SELECT ON users TO user1;
    复制代码
  • 更新数据并提交事件(DML)
    1. SQLBEGIN TRANSACTION;
    2. UPDATE users SET age = 30 WHERE id = 1;
    3. COMMIT;
    复制代码
通过理解 DCL、DDL、DML 和 DQL 的区别和用法,可以更好地管理和操作数据库!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
继续阅读请点击广告
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

没腿的鸟

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表