数据库基础(lab3:数据库和表的基本操作 一)

lab3:数据库和表的基本操作(一)

一、查看表结构

  1. 查看基本结构 (DESCRIBE)

    • 作用: 查看表的字段信息,包括字段名、数据类型、是否主键、默认值等。
    • 语法: DESCRIBE 表名; (可简写为 DESC 表名;)
    • 示例:
      DESCRIBE jd_emp;
      
  2. 查看详细结构 (SHOW CREATE TABLE)

    • 作用: 返回创建该表时的完整SQL语句,包含存储引擎和字符编码等更详细的信息。
    • 语法: SHOW CREATE TABLE 表名;
    • 提示: 在命令后加上 \G 可以使输出结果垂直显示,更易于阅读。
      SHOW CREATE TABLE jd_emp\G
      

二、修改表 (ALTER TABLE)

  1. 修改表名 (RENAME)

    • 作用: 更改一个表的名称。
    • 语法: ALTER TABLE 旧表名 RENAME 新表名;
    • 示例: 将表 tb_emp 重命名为 jd_emp
      ALTER TABLE tb_emp RENAME jd_emp;
      
  2. 修改字段 (CHANGE / MODIFY)

    • 修改字段名 (CHANGE):
      • 作用: 更改字段的名称,同时可以更改其数据类型。
      • 语法: ALTER TABLE 表名 CHANGE 旧字段名 新字段名 新数据类型;
      • 注意: 即使不改变数据类型,也必须写上新数据类型。
      • 示例: 将 tb_emp 表的 Id 字段改名为 prod_id
        ALTER TABLE tb_emp CHANGE Id prod_id INT;
        
    • 修改字段数据类型 (MODIFY):
      • 作用: 只更改字段的数据类型或排列位置。
      • 语法: ALTER TABLE 表名 MODIFY 字段名 新数据类型;
      • 示例: 将 tb_empName 字段的数据类型改为 varchar(30)
        ALTER TABLE tb_emp MODIFY Name VARCHAR(30);
        
  3. 添加字段 (ADD)

    • 作用: 在表中新增一个字段。
    • 语法: ALTER TABLE 表名 ADD 新字段名 数据类型 [约束] [FIRST | AFTER 已有字段名];
    • 添加到最后一列 (默认):
      ALTER TABLE tb_emp ADD Country VARCHAR(20);
      
    • 添加到第一列:
      ALTER TABLE tb_emp ADD Country VARCHAR(20) FIRST;
      
    • 添加到指定字段后:
      ALTER TABLE tb_emp ADD Country VARCHAR(20) AFTER Name;
      
  4. 删除字段 (DROP)

    • 作用: 从表中移除一个字段。
    • 语法: ALTER TABLE 表名 DROP 字段名;
    • 示例: 删除 tb_emp 表中的 Salary 字段。
      ALTER TABLE tb_emp DROP Salary;
      
  5. 修改字段顺序 (MODIFY ... FIRST/AFTER)

    • 作用: 调整表中字段的排列位置。
    • 语法: ALTER TABLE 表名 MODIFY 字段名 数据类型 FIRST | AFTER 另一个字段名;
    • 移至第一列:
      ALTER TABLE tb_emp MODIFY Name VARCHAR(20) FIRST;
      
    • 移至指定字段后:
      ALTER TABLE tb_emp MODIFY DeptId INT AFTER Salary;
      
  6. 删除外键约束 (DROP FOREIGN KEY)

    • 作用: 移除表上已定义的外键约束。
    • 语法: ALTER TABLE 表名 DROP FOREIGN KEY 外键约束名;
    • 示例: 删除 tb_emp 表上名为 emp_dept 的外键约束。
      ALTER TABLE tb_emp DROP FOREIGN KEY emp_dept;
      
posted @ 2025-11-17 17:09  yesno233233  阅读(7)  评论(0)    收藏  举报