加入收藏 | 设为首页 | 会员中心 | 我要投稿 均轻资讯网 (https://www.ijunqing.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL数据库 - 表基本操作

发布时间:2022-10-08 16:06:34 所属栏目:MySql教程 来源:
导读:  第一关任务描述

  本关任务:修改表名,并查询修改后表的结构。

  查看所有表

  show tables;

  查看表基本结构

  DESCRIBE 表名;

  或 简写为

  desc 表名;

 
  第一关任务描述
 
  本关任务:修改表名,并查询修改后表的结构。
 
  查看所有表
 
  show tables;
 
  查看表基本结构
 
  DESCRIBE 表名;
 
  或 简写为
 
  desc 表名;
 
  查看创建表的语句
 
  SHOW CREATE TABLE
 
  使用 SHOW CREATE TABLE 语句,不仅仅可以返回给我们建表时所写的详细语句,而且还可以查看存储引擎和字符编码。
 
  如果觉得返回的结果排版有点乱,加上\G后效果就会有所改善!
 
  修改表名
 
  ALTER TABLE。 语法规则为:ALTER TABLE 旧表名 RENAME 新表名;
 
  编程要求
 
  根据提示,在右侧编辑器补充代码:
 
  USE TestDb;
  #请在此处添加实现代码
  ########## Begin ##########
  ########## modify the table name ##########
  alter table stu rename student;
  ########## show tables in this database ##########
  show tables;
  ########## describe the table ##########
  describe student;
  ########## End ##########
  第二关任务描述
 
  本关任务:修改表中的属性名,并修改属性的数据类型。
 
  相关知识
 
  为了完成本关任务,你需要掌握:1.如何修改属性名;2.如何修改属性的数据类型。
 
  修改属性名
 
  语法规则为:
 
  ALTER TABLE 表名 CHANGE 旧属性名 新属性名 新数据类型 ;
 
  小提示:
 
  如果不需要修改属性的数据类型,可以把新字段的数据类型设置为和原来一样,但是!千万不要空着它!
 
  修改属性数据类型
 
  语法规则为:
 
  ALTER TABLE 表名 MODIFY 字段名 数据类型;
 
  编程要求
 
  根据提示,在右侧编辑器补充代码:
 
  USE TestDb;
  #请在此处添加实现代码
  ########## Begin ##########
  ########## change the column name ##########
  alter table student change Id stuid int(11);
  ########## change the data type of column ##########
  alter table student modify Name varchar(30);
  ########## End ##########
  DESCRIBE student;
  第三关
 
  任务描述
 
  本关任务:分别在表的最后一列、第一列和指定列后添加新的属性,并删除表中的指定属性。
 
  添加属性
 
  语法规则:
 
  ALTER TABLE 表名 ADD 新属性名 数据类型 [约束条件] [FIRST|AFTER] 已存在属性名; 。 MySQL 中常用的约束:
 
  NOT NULL 约束:确保某列不能有 NULL 值。
 
  DEFAULT 约束:当某列没有指定值时,为该列提供默认值。
 
  UNIQUE 约束:确保某列中的所有值是不同的。
 
  PRIMARY Key 约束:唯一标识数据库表中的各行/记录。
 
  CHECK 约束:CHECK 约束确保某列中的所有值满足一定条件。
 
  不做[FIRST|AFTER]的位置说明,在添加属性时MySQL会默认把新属性加入到表的最后一列。
 
  如果我们想在第一列添加新的属性,只需做FIRST的位置说明。
 
  如果我们想在某一列后面添加新的属性,只需做AFTER的位置说明,然后注明你想让它添加在哪个属性的后面即可。
 
  删除字段
 
  语法规则为:
 
  ALTER TABLE 表名 DROP 字段名;
 
  编程要求
 
  根据提示,在右侧编辑器补充代码:
 
  USE TestDb;
  #请在此处添加实现代码
  ########## Begin ##########
  ########## add the column ##########
  alter table student  add sex varchar(2) default '男' after name;
   
  ########## delete the column ##########
  alter table student drop Salary;
  ########## End ##########
  DESCRIBE student;
  第四关
 
  任务描述
 
  本关任务:修改表中某属性的顺序,分别将其排至表中的第一列或指定列之后。
 
  修改属性的排列位置
 
  在一个数据表被创建的时候,其属性的排列顺序就被确定了,之后可以通过ALTER TABLE来改变表中属性的相对位置。
 
  语法规则为:
 
  ALTER TABLE 表名 MODIFY 属性1 数据类型 FIRST|AFTER 属性2;
 
  其中,属性1指要修改位置的字段,FIRST与AFTER 属性2为可选参数。
 
  FIRST表示把属性的位置调整到第一列
 
  用AFTER 属性 选项,可将想调整的属性放在除了第一列的任何位置。
 
  编程要求
 
  根据提示,在右侧编辑器补充代码:
 
  USE TestDb;
  #请在此处添加实现代码
  ########## Begin ##########
  ########## modify the column to top ##########
  alter table student modify Name varchar(25) first ;
  ########## modify the column to the rear of another column ##########
  alter table student modify DeptId int(11) after Salary ;
  ########## End ##########
  DESCRIBE student;
  第五关
 
  任务描述
 
  本关任务:为表插入元组。
 
  相关知识
 
  插入数据
 
  向表中插入数据最简单的方法就是使用INSERT语句。
 
  语法规则为:
 
  INSERT INTO 表名 (属性名) VALUES (内容);
 
  在插入数据时指定属性名好处是:即使我们打乱了原本属性的排列顺序,只要插入的数据与之匹配,插入都不会出错。若不填属性名,就必须按属性顺序(且必须是所有属性按顺序)来填入相应的数据。
 
  为表同时插入多条记录
 
  语法规则为:
 
  INSERT INTO 表名 (属性名)
 
  VALUES (内容1), (内容2), (内容3);
 
  从逗号分隔的文件中读取所有数据插入表
 
  语法规则为:
 
  LOAD DATA LOCAL INFILE '文件名' INTO TABLE 表名 character set gbk fields terminated by ',' ;
 
  编程要求
 
  根据提示,在右侧编辑器Begin-End处补充代码:
 
  添加的内容为:
 
  X 5001 pc
 
  X 6009 laptop
 
  Y 7809 printer
 
  请从文件中将数据都读入到product表
 
  文件名src1/step1/product.csv
 
  USE TestDb;
  #请在此处添加实现代码
  ########## Begin ##########
  ########## bundle insert the value ##########
  insert into product (model,maker,type)
  VALUES (5001,'X','pc');
  insert into product (model,maker,type)
  VALUES (6009,'X','laptop');
  insert into product (model,maker,type)
  VALUES (7809,'Y','printer');
  load data local infile 'src1/step1/product.csv' into table product  character set gbk fields terminated by ',' ;
  ########## End ##########
  SELECT * FROM product;
  第六关
 
  任务描述
 
  本关任务:根据要求修改数据。
 
  更新表中指定的内容
 
  语法规则为:
 
  UPDATE 表名
 
  SET 字段名1 = 内容1, 字段名2 = 内容2, 字段名3 = 内容3
 
  WHERE 过滤条件;
 
  编程要求
 
  根据提示,在右侧编辑器Begin-End处补充代码:
 
  使用select * from product;查看已有数据,并将第一行maker为中文的数据删除,并将maker(A)改名为 JD;
 
  将type(pc) 改为 computer
 
  USE TestDb;
  #请在此处添加实现代码
  ########## Begin ##########
  ########## update the value ##########
  delete from product where model = 1001;
  update product set maker = 'JD' where maker = 'A';
  ########## End ##########
  SELECT * FROM product;
  第七关
 
  任务描述
 
  本关任务:删除表中的指定元组。
 
  语法规则为:
 
  DELETE FROM 表名 WHERE 条件语句;
 
  删除表中的所有行
 
  语法规则为:
 
  DELETE FROM 表名;
 
  小提示:
 
  TRUNCATE TABLE 语句也可以用来删除表中的所有记录。但是与 DELETE 不同的是,TRUNCATE TABLE 语句直接删除的是表,而不是表中的内容mysql数据表,删除结束后还会重新创建一个表。所以它的执行速度会比 DELETE 语句快。
 
  语法为:TRUNCATE TABLE 表名;
 
  编程要求
 
  根据提示,在右侧编辑器Begin-End处补充代码:
 
  USE TestDb;
  #请在此处添加实现代码
  ########## Begin ##########
  ########## delete the value ##########
  delete from  printer   where price > 800;
  delete product from product left join printer on product.model = printer.model where printer.model is null;
  ########## End ##########
  SELECT * FROM product;
  SELECT * FROM printer;
  祝你学习快乐!
 

(编辑:均轻资讯网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!