IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 头歌MySQL数据定义与操作实战 -> 正文阅读

[大数据]头歌MySQL数据定义与操作实战

实验一:数据库和表的操作

实验目的:
1:学会使用MySQL语句创建数据库、创建表、使用主键约束、外键约束、添加常用约束
2:学会使用MySQL语句查看表结构与修改表名、修改字段名与字段数据类型、添加与删除字段、修改字段的排列位置、删除表的外键约束
3:学会使用MySQL语句插入数据、更新数据、删除数据

1.1在命令行中连接MySQL,并创建一个名为MyDb的数据库。

mysql -uroot -p123123 -h127.0.0.1
mysql> create database MyDb;
mysql>show databases;#命令查看MySQL中已存在的数据库。

1.2在命令行中操作,创建数据库TestDb,在TestDb下创建表t_emp

mysql> create database TestDb;
mysql> use TestDb;
mysql> create table t_emp(
    -> id Int,
    -> name VARCHAR(32),
    -> deptId Int,
    -> salary FLOAT
    -> );
mysql> desc t_emp;

1.3在数据库MyDb中,创建两张表t_user1,t_user2,表结构如下,请为两张表分别创建主键约束,t_user1的主键为userId,t_user2的主键为联合主键,将字段name和phone作为t_user2的联合主键。

mysql> create database MyDb;

mysql> use MyDb;

mysql> create table t_user1(
    -> userId Int primary key,    
    -> name VARCHAR(32),
    -> password VARCHAR(11),    
    -> phone VARCHAR(11),
    -> email VARCHAR(32)
    -> );


mysql> create table t_user2(
    -> name VARCHAR(32),    
    -> phone VARCHAR(11),    
    -> email VARCHAR(32),    
    -> PRIMARY KEY(name,phone)
    -> );

1.4创建两张表如下,给t_student表添加外键约束,外键为classId,外键名称为fk_stu_class1。

mysql> create database MyDb;
mysql> use MyDb;
mysql> create table t_class(
    -> id int primary key,
    -> name VARCHAR(22));
mysql> create table t_student(
    -> id int primary key,
    -> name VARCHAR(22),
    -> classId int,
    -> CONSTRAINT fk_stu_class1 FOREIGN KEY(classId) REFERENCES t_class(id)
    -> );

1.5在数据库MyDb中创建表t_user,表结构如下:

mysql> create database MyDb;
mysql> use MyDb;
mysql> create table t_user(    
    -> id int primary key AUTO_INCREMENT,    
    -> username varchar(32) NOT NULL UNIQUE,    
    -> sex varchar(4) DEFAULT '男'    
    -> );

2.1根据提示,在编辑器补充代码:
把数据表tb_emp改名为jd_emp;
查看该数据库下数据表的列表;
查看数据表jd_emp的基本结构。

USE Company;

#请在此处添加实现代码
########## Begin ##########

########## modify the table name ##########
ALTER TABLE tb_emp RENAME jd_emp;


########## show tables in this database ##########
show tables;


########## describe the table ##########

describe jd_emp;

########## End ##########

2.2根据提示,在编辑器补充代码:
把数据表tb_emp的字段Id改名为prod_id,数据类型不变;
把数据表tb_emp字段Name的数据类型改为varchar(30)。
数据表结构如下:

USE Company;

#请在此处添加实现代码
########## Begin ##########

########## change the column name ##########
ALTER TABLE tb_emp change Id prod_id int(11);


########## change the data type of column ##########
ALTER TABLE tb_emp MODIFY Name varchar(30);


########## End ##########

DESCRIBE tb_emp;

2.3根据提示,在编辑器补充代码:
在数据表tb_emp的Name字段后添加字段Country,数据格式为varchar(20);
删除数据表tb_emp中的字段Salary。
数据表结构如下:

USE Company;

#请在此处添加实现代码
########## Begin ##########

########## add the column ##########
ALTER TABLE tb_emp ADD Country varchar(20) AFTER Name;

 
########## delete the column ##########

ALTER TABLE tb_emp DROP Salary;

########## End ##########

DESCRIBE tb_emp;

2.4根据提示,在编辑器补充代码:
将数据表tb_emp的Name字段移至第一列,数据格式不变;
将DeptId字段移至Salary字段的后边,数据格式不变。
数据表结构如 2.3 中图片所示:

USE Company;

#请在此处添加实现代码
########## Begin ##########

########## modify the column to top ##########
ALTER TABLE tb_emp MODIFY Name varchar(25) FIRST;


########## modify the column to the rear of another column ##########
ALTER TABLE tb_emp MODIFY DeptId int(11) AFTER Salary;


########## End ##########

DESCRIBE tb_emp;

2.5我们已经为你建立了主表tb_dept和子表tb_emp,在表tb_emp上添加了名称为emp_dept的外键约束,外键名称为DeptId,依赖于表tb_dept的主键Id,下面那是两张表的结构展示:
请你根据提示,在编辑器Begin-End中补充代码:
删除数据表tb_emp的外键约束emp_dept。

USE Company;

#请在此处添加实现代码
########## Begin ##########

########## delete the foreign key ##########
ALTER TABLE tb_emp DROP FOREIGN KEY emp_dept;


########## End ##########
SHOW CREATE TABLE tb_emp \G;

3.1我们为你新建了一个空数据表tb_emp,请你为它同时添加3条数据内容。空数据表结构如下,注意字段3 为DeptId,倒数第二个字母为大写的i:需要你同时添加的数据内容为:(注意,是同时插入多条记录)

USE Company;

#请在此处添加实现代码
########## Begin ##########

########## bundle insert the value ##########
INSERT INTO tb_emp(Id,Name,DeptId,Salary)
VALUE(1,"Nancy",301,2300.00),(2,"Tod",303,5600.00),(3,"Carly",301,3200.00);


########## End ##########
SELECT * FROM tb_emp;

3.2我们为你新建了一个数据表tb_emp,并添加了3条数据内容。3条数据内容如下表所示:请你将Carly改为Tracy,相应的,301改为302,3200.00改为4300.00。

USE Company;

#请在此处添加实现代码
########## Begin ##########

########## update the value ##########
UPDATE tb_emp
SET Name="Tracy",DeptId=302,Salary=4300.00
WHERE id=3;


########## End ##########

SELECT * FROM tb_emp;

3.3请你将3.2图中Salary大于3000的数据行删除。

USE Company;

#请在此处添加实现代码
########## Begin ##########

########## delete the value ##########
DELETE FROM tb_emp
WHERE Salary>3000;


########## End ##########

SELECT * FROM tb_emp;
  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-10-02 14:56:25  更:2021-10-02 14:57:19 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 23:37:39-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码