目录
第一关:修改表名
一、知识点
①查看所有表:show tables;
②查看表基本结构:DESCRIBE 表名; 或 简写为 desc 表名;
③查看创建表的语句:SHOW CREATE TABLE
二、educoder
第二关: 修改表结构-1
一、知识点
①修改属性名
②修改属性数据类型
二、educoder
第三关:修改表结构-2
一、知识点
①添加属性
②删除字段
二、educoder
第四关:修改表结构-3
一、知识点
①修改属性的排列位置
二、educoder
第五关:数据添加
一、知识点
①插入数据
②为表同时插入多条记录
③从逗号分隔的文件中读取所有数据插入表
二、educoder
第6关:数据更新
一、知识点
①更新表中指定的内容
二、educoder
第7关:数据删除
一、知识点
①删除表中的指定元组。
②删除表中的所有行
二、educoder
第一关:修改表名
一、知识点
        ①查看所有表:show tables;
 
        ②查看表基本结构:DESCRIBE 表名; 或 简写为 desc 表名;
 
        ③查看创建表的语句:SHOW CREATE TABLE
 
使用 SHOW CREATE TABLE 语句,不仅仅可以返回给我们建表时所写的详细语句,而且还可以查看存储引擎和字符编码。 如果觉得返回的结果排版有点乱,加上\G后效果就会有所改善!
        ④修改表名:ALTER TABLE。 语法规则为:ALTER TABLE 旧表名 RENAME 新表名;
二、educoder
根据提示,在右侧编辑器补充代码:
-  
把数据表
stu改名为student; -  
查看该数据库下数据表的列表;
 -  
查看数据表
student的基本结构。 

第二关: 修改表结构-1
一、知识点
①修改属性名
           语法规则为: ALTER TABLE 表名 CHANGE 旧属性名 新属性名 新数据类型 ;
小提示: 如果不需要修改属性的数据类型,可以把新字段的数据类型设置为和原来一样,但是!千万不要空着它!
②修改属性数据类型
           语法规则为: ALTER TABLE 表名 MODIFY 字段名 数据类型;
二、educoder
编程要求
根据提示,在右侧编辑器补充代码:
-  
把数据表
student的属性Id改名为stuid,数据类型不变; -  
把数据表
student字段Name的数据类型改为varchar(30)。 

第三关:修改表结构-2
一、知识点
①添加属性
语法规则:
ALTER TABLE 表名 ADD 新属性名 数据类型 [约束条件] [FIRST|AFTER] 已存在属性名; 。
MySQL中常用的约束:
NOT NULL约束:确保某列不能有NULL值。
DEFAULT约束:当某列没有指定值时,为该列提供默认值。
UNIQUE约束:确保某列中的所有值是不同的。
PRIMARY Key约束:唯一标识数据库表中的各行/记录。
CHECK约束:CHECK约束确保某列中的所有值满足一定条件。
不做[FIRST|AFTER]的位置说明,在添加属性时MySQL会默认把新属性加入到表的最后一列。
如果我们想在第一列添加新的属性,只需做FIRST的位置说明。 如果我们想在某一列后面添加新的属性,只需做AFTER的位置说明,然后注明你想让它添加在哪个属性的后面即可。
②删除字段
语法规则为:
ALTER TABLE 表名 DROP 字段名; 
二、educoder
编程要求
根据提示,在右侧编辑器补充代码:
-  
在数据表
student的Name属性后添加属性sex,数据类型为varchar(2),默认值男; -  
删除数据表
student中的属性Salary。 

第四关:修改表结构-3
一、知识点
①修改属性的排列位置
在一个数据表被创建的时候,其属性的排列顺序就被确定了,之后可以通过ALTER TABLE来改变表中属性的相对位置。
语法规则为:
ALTER TABLE 表名 MODIFY 属性1 数据类型 FIRST | AFTER 属性2;
其中,
属性1指要修改位置的字段,
FIRST 与   AFTER 属性2 为可选参数。
FIRST表示把属性的位置调整到第一列 ,
用AFTER 属性2 选项,可将想调整的属性放在除了第一列的任何位置。
二、educoder
编程要求
根据提示,在右侧编辑器补充代码:
-  
将数据表
student的Name字段移至第一列,数据格式不变; -  
将
DeptId字段移至Salary字段的后边,数据格式不变。 

第五关:数据添加
一、知识点
①插入数据
向表中插入数据最简单的方法就是使用INSERT语句。
语法规则为:
INSERT INTO 表名 (属性名) VALUES (内容);
在插入数据时指定属性名好处是:即使我们打乱了原本属性的排列顺序,只要插入的数据与之匹配,插入都不会出错。若不填属性名,就必须按属性顺序(且必须是所有属性按顺序)来填入相应的数据。
②为表同时插入多条记录
语法规则为:
INSERT INTO 表名 (属性名) VALUES (内容1), (内容2), (内容3);
③从逗号分隔的文件中读取所有数据插入表
语法规则为:
LOAD DATA LOCAL INFILE '文件名' INTO TABLE 表名 character set gbk fields terminated by ',' ;
二、educoder
编程要求
根据提示,在右侧编辑器Begin-End处补充代码:
1.
- 我们为你新建了一个空数据表
product,请你为它同时添加3条数据内容; - product(maker,model,type)属性均为字符型
 
添加的内容为: X 5001 pc
X 6009 laptop
Y 7809 printer
2.请从文件中将数据都读入到product表 文件名src1/step1/product.csv

第6关:数据更新
一、知识点
①更新表中指定的内容
语法规则为:
UPDATE 表名 SET 字段名1 = 内容1, 字段名2 = 内容2, 字段名3 = 内容3 WHERE 过滤条件;
二、educoder
编程要求
根据提示,在右侧编辑器Begin-End处补充代码:
已创建建了一个数据表product,并添加了一些数据;
product(maker,model,type)
使用select * from product;查看已有数据,
将第一行maker为中文的数据删除,(delete from 婊名 WHERE 主键 = ‘具体值')
将maker(A)改名为 JD;
将type(pc) 改为 computer

第7关:数据删除
一、知识点
①删除表中的指定元组。
语法规则为:
DELETE FROM 表名 WHERE 条件语句;
②删除表中的所有行
语法规则为:
DELETE FROM 表名;
 小提示: TRUNCATE TABLE 语句也可以用来删除表中的所有记录。但是与 DELETE 不同的是,TRUNCATE TABLE 语句直接删除的是表,而不是表中的内容,删除结束后还会重新创建一个表。所以它的执行速度会比 DELETE 语句快。 语法为:TRUNCATE TABLE 表名;
二、educoder
根据提示,在右侧编辑器Begin-End处补充代码:
-  
已经创建了表
product,printer并添加了数据内容; -  
product(maker,model,type) 代表厂商,型号,类型(pc,laptop,printer)
 -  
printer(model,color,type,price) 代表型号,是否彩色,类型(laser,ink-jet),单价
 -  
请将单价大于
800的printer删除 -  
请将型号不在printer中的型号对应的元组从product表删除。
 



















