欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 社会 > MySQL中sql语句的分类

MySQL中sql语句的分类

2024/12/22 16:46:36 来源:https://blog.csdn.net/cuishujian_2003/article/details/144359276  浏览:    关键词:MySQL中sql语句的分类

当然,以下是每类SQL语句的详细解释和用法:

1. 数据定义语言(DDL)

CREATE

  • 用于创建新的数据库对象,如表、索引、视图等。
  • CREATE TABLE:创建一个新表。
CREATE TABLE students (id INT AUTO_INCREMENT PRIMARY KEY,name VARCHAR(100) NOT NULL,age INT
);
  • CREATE INDEX:为表创建一个索引。
     
    CREATE INDEX idx_name ON students(name);

ALTER

  • 用于修改现有的数据库对象。
  • ALTER TABLE:修改表结构,如添加、删除或修改列。
     
    ALTER TABLE students ADD COLUMN grade CHAR(1);
    ALTER TABLE students DROP COLUMN age;
    ALTER TABLE students MODIFY COLUMN name VARCHAR(200);

DROP

  • 用于删除数据库对象。
  • DROP TABLE:删除一个表。
    DROP TABLE students;

  • DROP INDEX:删除一个索引。
     
    DROP INDEX idx_name ON students;

TRUNCATE

  • 用于快速清空表中的所有记录,但保留表结构。
     
    TRUNCATE TABLE students;

RENAME

  • 用于重命名数据库对象。
  • RENAME TABLE:重命名一个表。
    RENAME TABLE students TO pupils;

2. 数据操作语言(DML)

SELECT

  • 用于从数据库表中查询数据。
    SELECT * FROM students;
    SELECT name, age FROM students WHERE age > 18;

INSERT

  • 用于向数据库表中插入新数据。
    INSERT INTO students (name, age) VALUES ('John Doe', 20);

UPDATE

  • 用于修改数据库表中已有的数据。
    UPDATE students SET age = 21 WHERE name = 'John Doe';

DELETE

  • 用于删除数据库表中的数据。
    DELETE FROM students WHERE name = 'John Doe';

3. 数据控制语言(DCL)

GRANT

  • 用于给用户授予特定的数据库权限。
    GRANT SELECT, INSERT ON mydatabase.* TO 'username'@'host';

REVOKE

  • 用于收回用户的特定数据库权限。
     
    REVOKE SELECT, INSERT ON mydatabase.* FROM 'username'@'host';

4. 事务控制语言(TCL)

START TRANSACTION 或 BEGIN

  • 用于标记一个事务的开始。
    START TRANSACTION;
    -- 或者
    BEGIN;

COMMIT

  • 用于提交事务,使事务中的所有更改永久生效。
    COMMIT;

ROLLBACK

  • 用于回滚事务,撤销事务中的所有更改。
    ROLLBACK;

SAVEPOINT

  • 用于在事务中设置一个保存点,可以在此点之后进行回滚操作。
    SAVEPOINT savepoint_name;

ROLLBACK TO SAVEPOINT

  • 用于将事务回滚到指定的保存点。
    ROLLBACK TO SAVEPOINT savepoint_name;

RELEASE SAVEPOINT

  • 用于删除一个已设置的保存点。
    RELEASE SAVEPOINT savepoint_name;

SET TRANSACTION

  • 用于设置当前事务的特性,如隔离级别。
    SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;

这些SQL语句提供了对数据库的全面管理,包括定义和修改数据库结构、查询和修改数据、控制数据访问权限以及管理事务。通过合理使用这些语句,可以高效地管理数据库和确保数据的一致性和完整性。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com