MYSQL(DDL的使用)

MySQL Data Definition Language (DDL) 是一组用于创建、修改和删除数据库对象的SQL语句,主要包括以下几类操作:

数据库操作

  1. 创建数据库

    CREATE DATABASE [IF NOT EXISTS] database_name;
    

    示例:

    CREATE DATABASE my_database;
    
  2. 查看数据库列表

    SHOW DATABASES;
    
  3. 显示数据库创建语句

    SHOW CREATE DATABASE database_name;
    
  4. 删除数据库

    DROP DATABASE [IF EXISTS] database_name;
    
  5. 选择(使用)数据库

    USE database_name;
    

表操作

  1. 创建表

    CREATE TABLE [IF NOT EXISTS] table_name (
        column1 datatype constraints,
        column2 datatype constraints,
        ...
        PRIMARY KEY (column_list),
        FOREIGN KEY (column_list) REFERENCES other_table(column_list),
        INDEX index_name (column_list),
        UNIQUE (column_list),
        ...
    );
    

    示例:

    CREATE TABLE users (
        id INT AUTO_INCREMENT PRIMARY KEY,
        username VARCHAR(50) NOT NULL,
        email VARCHAR(100) UNIQUE,
        created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
    );
    
  2. 查看表结构

    DESC table_name;
    -- 或
    SHOW CREATE TABLE table_name;
    
  3. 修改表

    ALTER TABLE table_name
        ADD COLUMN new_column datatype,
        DROP COLUMN column_to_remove,
        MODIFY COLUMN existing_column datatype [NOT NULL | DEFAULT value],
        CHANGE COLUMN old_column_name new_column_name datatype [constraints],
        ADD CONSTRAINT constraint_name PRIMARY KEY (column_list),
        DROP PRIMARY KEY,
        ADD INDEX index_name (column_list),
        DROP INDEX index_name ON table_name,
        ...
    

    示例:

    ALTER TABLE users
        ADD COLUMN last_login TIMESTAMP,
        MODIFY COLUMN email VARCHAR(150);
    
  4. 删除表

    DROP TABLE [IF EXISTS] table_name;
    

索引操作

  • 创建索引

    CREATE INDEX index_name ON table_name (column_list);
    
  • 删除索引

    DROP INDEX index_name ON table_name;
    

视图操作

  • 创建视图

    CREATE VIEW view_name AS SELECT ... FROM ... WHERE ...;
    
  • 查看视图定义

    SHOW CREATE VIEW view_name;
    
  • 删除视图

    DROP VIEW [IF EXISTS] view_name;
    

原文链接 https://www.hanyuanhun.cn | https://node.hanyuanhun.cn

posted @   汉源魂  阅读(11)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示