燃起来了— 2024-06-07 08:24 采纳率: 85.7%
浏览 2
已结题

Mysql网络数据库

img

img


有可以解答的吗需要全过程和思路 网络数据库框架 网络数据库基础 表

  • 写回答

2条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-06-07 08:24
    关注

    引自免费微信小程序:皆我百晓生

    根据您的需求,我将为您详细解释如何在MySQL中完成这些操作。首先,确保您已经登录到MySQL服务器,然后按照以下步骤进行。

    1. 创建索引

      (1) 使用 CREATE INDEX 创建索引:

      -- 对Employees表中的员工部门号列创建普通索引 depart ind
      CREATE INDEX depart_ind ON Employees(department_id);
      
      -- 对Employees表中的姓名和地址列创建复合索引 Ad ind
      CREATE INDEX Ad_ind ON Employees(last_name, address);
      

      (2) 使用 ALTER TABLE 添加索引:

      -- 对Employees表中的出生日期列添加一个唯一索引 dateind, 姓名和性别列添加一个复合索引 na ind
      ALTER TABLE Employees ADD UNIQUE INDEX dateind(birth_date);
      ALTER TABLE Employees ADD INDEX na_ind(first_name, gender);
      
      -- 对Departments表中的部门编号列创建主键索引
      ALTER TABLE Departments MODIFY department_name VARCHAR(255) PRIMARY KEY;
      

      (3) 在创建表的同时创建索引:

      CREATE TABLE cpk (
          product_id INT PRIMARY KEY,
          product_name VARCHAR(255),
          unit_price DECIMAL(10, 2),
          inventory INT
      ) ENGINE=InnoDB;
      
      CREATE INDEX cpk_fh ON cpk(inventory, unit_price);
      
    2. 显示Employees表的索引情况

      可以使用 SHOW INDEX FROM 来查看表的索引信息:

      SHOW INDEX FROM Employees;
      
    3. 数据完整性约束

      (1) 创建员工奖金发放表 j:

      CREATE TABLE jj (
          employee_id INT PRIMARY KEY REFERENCES Employees(employee_id),
          je DECIMAL(10, 2)
      ) ENGINE=InnoDB;
      
      -- 这里的FOREIGN KEY会自动设置ON DELETE CASCADE和ON UPDATE CASCADE
      -- 因为MySQL默认情况下会这样做
      ALTER TABLE jj ADD FOREIGN KEY (employee_id) REFERENCES Employees(employee_id);
      

      (2) 创建雇员表 EMP,只考虑工号和性别两列,性别只能包含男或女:

      CREATE TABLE EMP (
          emp_no INT PRIMARY KEY,
          gender ENUM('Male', 'Female')
      ) ENGINE=InnoDB;
      

      (3) 创建雇员表 EMP1,只考虑工号和出生日期两列,出生日期必须大于1980年1月1日:

      CREATE TABLE EMP1 (
          emp_no INT PRIMARY KEY,
          birth_date DATE CHECK (birth_date > '1980-01-01')
      ) ENGINE=InnoDB;
      

      (4) 创建表 EMP2,有工号、工资和扣款3列,要求工资必须大于扣款:

      CREATE TABLE EMP2 (
          emp_no INT PRIMARY KEY,
          salary DECIMAL(10, 2),
          deduction DECIMAL(10, 2),
          CONSTRAINT check_salary_greater_than_deduction CHECK (salary > deduction)
      ) ENGINE=InnoDB;
      

    以上就是针对您提供的实训内容的操作步骤。如果您有任何疑问或遇到问题,请随时向我提问。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 6月15日
  • 已采纳回答 6月7日
  • 创建了问题 6月7日

悬赏问题

  • ¥15 两台交换机分别是trunk接口和access接口为何无法通信,通信过程是如何?
  • ¥15 C语言使用vscode编码错误
  • ¥15 用KSV5转成本时,如何不生成那笔中间凭证
  • ¥20 ensp怎么配置让PC1和PC2通讯上
  • ¥50 有没有适合匹配类似图中的运动规律的图像处理算法
  • ¥15 dnat基础问题,本机发出,别人返回的包,不能命中
  • ¥15 请各位帮我看看是哪里出了问题
  • ¥15 vs2019的js智能提示
  • ¥15 关于#开发语言#的问题:FDTD建模问题图中代码没有报错,但是模型却变透明了
  • ¥15 uniapp的h5项目写一个抽奖动画