MySQL第二天

news2024/11/15 19:59:13

MySQL第二天


文章目录

  • MySQL第二天
  • 一、第一题 题目
  • 二、第二题题目


一、第一题 题目

在这里插入图片描述

1、先创建该customers表
create table customers ( c_num int primary key auto_increment, 
                         c_name varchar(50), 
                         c_contact varchar(50), 
                         c_city varchar(50),
                         c_birth datetime not null);

在这里插入图片描述

2、修改c_name的数据类型
    alter table customers modify c_name varchar(70);

在这里插入图片描述

3、将c_contract的名称改为c_phone
    mysql> alter table customers
        -> change c_contact c_phone varchar(50);

在这里插入图片描述

4、增加c_gender字段,数据类型为char(1)
    mysql> alter table customers
        -> add c_gender char(1);

在这里插入图片描述

5、将表名称修改为customers_info
mysql> rename table customers to customers_info;

在这里插入图片描述

6、删除c_city字段
mysql> alter table customers_info drop c_city;

在这里插入图片描述

7、修改数据库的存储引擎为MyISAM
      查看当前的存储引擎
       show engines;

在这里插入图片描述

8、查看当前的引擎状态 发现是inodb引擎 现在转换引擎

在这里插入图片描述

8、输入命令
 mysql> alter table customers_info engine=MyISAM;

在这里插入图片描述
这个时候我们看到的引擎以及从InnoDB转换成MyAISM.

9、这个时候再次去输入外键约束命令 就可以成功了
mysql->ALTER TABLE orders
       add CONSTRAINT aabbccdd 
       FOREIGN KEY c_id) REFERENCES customers(o_num);

在这里插入图片描述
到这里外键约束就添加好了

二、第二题题目

在这里插入图片描述
在这里插入图片描述

问题一

1、先将orders表创建起来

在这里插入图片描述

2、然后增加c_id的外键约束问题,在这里我遇到了一个问题,就是无法将customers表作为父表进行绑定,一直不行,后来发现了,要绑定的表和表中的列的数据类型一模一样,而且两者的储存引擎也必须一样,这样问题也可以。
mysql> ALTER TABLE orders add CONSTRAINT
       aabbccdd FOREIGN KEY (c_id) REFERENCES customers(c_num);
       Query OK, 0 rows affected (0.01 sec)

在这里插入图片描述

3、删除外键约束并且删除customers表
mysql> alter table orders drop foreign key aabbccdd;
Query OK, 0 rows affected (0.00 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> drop table customers;
Query OK, 0 rows affected (0.00 sec)

在这里插入图片描述

4、这个时候当orders的表和customers的存储引擎是一样的,所以就可以输入命令让二者的外键删除;这里注意外键名称未设置的话可以输入 show create tables orders;来查看它系统给你的取的名字是什么,而后就可以用下面命令删除,要是会出现第二个问题的话,应该就是无法找到系统给你设置的外键名称,这个时候就要以 表的类型名称来作为外键名称来进行下一步的删除,
mysql->alter tables orders drop forieign key aabbccdd; 这里是删除外键的第一步;
mysql> alter table orders drop index aabbccdd;这一步是删除键入外键约束的自动生成的索引,这里索引要是取了名字的就是该外键的名字,我的是aabbccdd,而如果没有取名字就跟column name一样的名字
Query OK, 0 rows affected (0.12 sec)
Records: 0  Duplicates: 0  Warnings: 0

在这里插入图片描述
在这里插入图片描述

问题二:

1、先创建Team数据库以及play数据表
mysql> use Team;
Database changed

mysql> create table player(
    -> playid int primary key,
    -> playname varchar(30) not null,
    -> teamnum int not null unique,
    -> info varchar(50));
Query OK, 0 rows affected (0.01 sec)


在这里插入图片描述

2、创建一个新用户,用户名称为account1,通过用户连接本地数据库,密码为oldpwd1.授权其用户对Team数据库中player表的select和insert权限,并授权该用户对play表中的info字段的update权限

创建用户:
mysql> create user account1@localhost identified by 'oldpwd1';
       Query OK, 0 rows affected (0.00 sec)
赋予该表的select权限和insert权限:
mysql> grant select on Team.player to account1@'localhost';
            Query OK, 0 rows affected (0.00 sec)

mysql> grant insert on Team.player to account1@'localhost';
       Query OK, 0 rows affected (0.00 sec)

赋予player表的info字段的update权限:
mysql> grant insert(info) on Team.player to account1@'localhost';
       Query OK, 0 rows affected (0.00 sec)

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

3、随后我们输入mysql> show grants for 'account1'@'localhost';
查看player表的权限具体是怎么样子的

在这里插入图片描述

4、修改密码,输入命令为:
mysql> alter user 'account1'@'localhost' identified by 'newpwd2';
Query OK, 0 rows affected (0.00 sec)

随后输入 select * from account1;
查看他的md5加密的密码:

在这里插入图片描述
随后用MD5解密出来:
在这里插入图片描述
密码修改成功!!!!!

5、赋予其刷新权限,先给account1一个reload权限,代码如下:
mysql> grant reload on *.* to account1@'localhost';
       Query OK, 0 rows affected (0.00 sec)

在这里插入图片描述

6、mysql> show grants for 'account1'@'localhost';

在这里插入图片描述

7、回收信息只能一次一次回收:
mysql> revoke select on Team.player from account1@localhost;
mysql> revoke insert on Team.player from account1@localhost;
mysql> revoke update(info) on Team.player from account1@localhost;

在这里插入图片描述

8、删除用户
mysql> drop user account1@localhost;
Query OK, 0 rows affected (0.00 sec)

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/729068.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

java IO流(一) File类

File对象只能对文件进行操作,不能操作文件中的内容。 1 File对象的创建 要注意的是:路径中"“要写成”\“进行转义, 路径中”/"可以直接用,但是最好的是使用File.separator,它会根据系统的不同进行转化&a…

ROS:分布式通信

目录 一、前言二、方案2.1准备2.2配置文件修改2.3配置主机IP2.4配置从机IP2.5测试 一、前言 ROS是一个分布式计算环境。一个运行中的ROS系统可以包含分布在多台计算机上多个节点。根据系统的配置方式,任何节点可能随时需要与任何其他节点进行通信。 因此&#xff…

小白开酒吧前要做好的三件事

一、进行市场调研当你有开酒吧的想法时,首先要做的第一步就是市场调研,进行市场调研可以让你了解到该地区酒吧市场是否良好,对未来的经营,有着决定成败的帮助,同时市场调研也可以让你了解到周边什么类型酒吧最受欢迎&a…

PMP证书有什么用,考试条件是什么?

很多关注项目经理岗位的朋友都知道,一些企业的招聘信息经常会发布,很多招聘项目经理岗/PMO岗的岗位要求中都会有一条:持有PMP/软考等证书的优先。 其实面试的时候,可能两个候选人的经历、经验、期望薪资都差不多,那么…

ESP32(掌控板) 图片显示与幻灯片

ESP32(掌控板) 图片显示与幻灯片 本程序通过按键改变变量的值,从而切换4组图片,通过触摸按键切换每组图片中的不同图片,同时按下两个按键开启幻灯片功能。 图形化程序如下 Arduino代码如下 /*!* MindPlus* mpython**…

sqoop笔记——一次从Hive到PostgreSql的数据迁移

写在开头 sqoop,想必进来围观的小伙伴们已经很熟悉了,笔者想把一些在实际使用sqoop过程中遇到的问题和注意事项记录并分析给大家,希望能帮助有需要的同学。随着对sqoop不断深入的了解,笔者会不断的以文章的形式记录并分析给大家&…

2023年05月份青少年软件编程Scratch图形化等级考试试卷二级真题(含答案)

2023-05 Scratch二级真题 题数:37 分数:100 测试时长:60min 一、单选题(共25题,共50分) 1.运行下列哪段程序,可以让狗狗走到木屋门口?( )(2分) A. B. C. D. 2.下列哪个选项…

陪诊软件源码|医院陪诊软件开发|陪诊师接单APP定制

陪诊小程序具有以下功能优势:   预约挂号:陪诊小程序可以提供在线预约挂号功能,患者可以通过小程序选择就诊时间、医生和科室,避免排队和等待时间,提高就医效率。   陪诊服务:陪诊小程序可以提供陪诊服…

SDN实训报告-基于SDN的Qos差分服务

1 实训概述 本次为期一周的实训旨在通过基于SDN架构的实现差分服务需求来提升我们的技能。我们在实训中广泛运用了一些重要的技术手段,包括Django、QOS、OpenDaylight和OpenvSwitch等。 在实训过程中,我们将重点放在SDN的基本操作上,通过实际…

Introduction to linear optimization exercise 第二章课后题答案 6-10

文章目录 2.62.7 2.6 解答: (a) 设 y y y 是 C C C 中的一点,多面体 Λ { ( λ 1 , … , λ n ) ∈ R n ∣ ∑ i 1 n λ i A i y , λ 1 , … , λ n ≥ 0 } \Lambda\left\{(\lambda_1, \dots, \lambda_n)\in R^n\mid \sum_{i1}^n \lambda_i\textb…

【企业架构设计模式】MITRE 设计模式

定义: 软件中的设计模式(通常)是简短的描述,用于捕捉过去证明是成功的实践。它们不是具体的软件,而是在某些情况下应用的一种模板。它们通常不是规定性的,而是建议性的,并且包括关于何时最适合使…

Vue组件库Element-常见组件-对话框

Dialog 对话框 在保留当前页面信息的状态下&#xff0c;直接弹出对话框&#xff0c;告知用户并承载相关操作 具体代码关键如下&#xff1a; <template><div><el-row><!-- button 按钮 --><el-button>默认按钮</el-button><el-button…

Windows下编译安装VTK

本文旨在记录在Windows下编译安装VTK的流程。 零、环境 操作系统Windows 10编译器Visual Studio 2019 CommunityCMake3.24.2 一、下载代码 git clone https://github.com/Kitware/VTK.git cd ./VTK/ git checkout -b v9.0.0 v9.0.0 二、编译安装 Where is the source cod…

Redis【实战篇】---- 用户签到

Redis【实战篇】---- 用户签到 1. 用户签到 - BitMap功能演示2. 用户签到 - 实现签到功能3. 用户签到 - 签到统计4. 额外加餐 - 关于使用BitMap来解决缓存穿透的方案 1. 用户签到 - BitMap功能演示 我们针对签到功能完全可以通过mysql来完成&#xff0c;比如说以下这张表 用户…

1.数据类型

1、课后作业 1.给同桌讲讲交换两个变量的值 算法&#xff08;不管他愿不愿听&#xff09; 2.依次咨询问并获取用户的姓名、年龄、性别&#xff0c;并打印用户信息 可以先自己写一下&#xff0c;在参考一下我的代码&#xff1a; <!DOCTYPE html> <html lang"en&q…

【SLAM14讲】05 李群与李代数

在 SLAM 中位姿是未知的&#xff0c;而我们需要解决什么样的相机位姿最符合当前观测数据这样的问题。 一种典型的方式是把它构建成一个优化问题&#xff0c;求解最优的 R, t&#xff0c;使得误差最小化。 旋转矩阵自身是带有约束的&#xff08;正交且行列式为 1&#xff09;。它…

Zhong__Linux系统磁盘空间扩容和转移

时间&#xff1a;2023.07.07 环境&#xff1a;Ubuntu/Centos 目的&#xff1a;分配闲置空间到指定分区/将分区空间转移到指定分区 说明&#xff1a; 作者&#xff1a;Zhong QQ交流群&#xff1a;121160124 欢迎加入&#xff01; 在安装Ubuntu/Centos/Stream等系统时 有时对…

测试3年经验不到,来面试开口要25K,面完连10K都不想给···

前言 近期公司发展的不错&#xff0c;打算扩招&#xff0c;也面试了不少人&#xff0c;由于公司不是很大所以公司大部分的人员都是我面试的。 前两天来了一个测试工作才3年不到的小伙儿面试&#xff0c;前面问了一点测试基础的东西&#xff0c;还是能答上来的&#xff0c;不过…

趟路:centos7.6安装opengauss5.0.0企业版

版本选取 # 下载opengauss安装介质&#xff0c;截止2023年7月份最新版本长期支持版&#xff08;LTS&#xff1a;Long Term Support&#xff09;是5.0.0版本&#xff1b;此外&#xff0c;还有预览版3.1.1&#xff1b;这里建议安装openGauss 5.0.0 (LTS)。企业版&#xff1a;更像…

Windows故障转移集群

Windows2012作为根域 两台Windows2008加入域 创建三台Windows 分别是Windows2012和两台Windows2008 并选择其环境 创建三个十g的卷&#xff0c;连接至Windows2012 清理三台主机的后台数据 然后修改三台主机的IP 本机IP要相对应 Windows2008-1主机IP 第二块网卡不需要填写网…