MySQL零基础入门(二)

简介: MySQL零基础入门(二)

文章目录


修改表

1.添加列

alter table tablename

add (column datatype [default expr]

[,column datatype]…);

2.修改列

alter table tablename

modify (column datatype [default expr]

[,column datatype]…);

3.删除列

alter table tablename

drop (column);

查看表的结构:desc 表名; 可以查看表的列

修改表名:rename table 表名 to 新表名

修改表字符集:alter table 表名 character set 字符集

4.代码

#员工表emp的上增加一个image列,varchar类型(要求在resume后面).
alter table emp
      add image varchar(32) not null default ''
    after resume
#显示表结构,可以查看表的所有列
desc emp;
#修改job列,使其长度为60.
alter table emp
      modify job varchar(60) not null default ''
#删除sex列
alter table emp
      drop sex;
#表名改为employee。
rename table emp to employee
desc employee;
#修改表的字符集为utf8
alter table employee character set utf8;
#列名name修改user_name
alter table employee
       change `name` `user_name` varchar(64) 
     not null default ''

5.insert语句

使用insert语句向表中插入数据

insert插入 into到…里面 table_name表名[(column,column,column)]

values价值 (values,values,values数值)

#insert 语句
#创建一张商品表goods (id int,goods_name varchar(10),price double);
#添加2条记录
create table `goods`(
        id int,
    goods_name varchar(10),
    price double);
select * from goods; #显示表的结构
#添加数据
insert into `goods` (id,goods_name,price)
       values(10,'华为手机',2000);
insert into `goods` (id,goods_name,price)
       values(10,'苹果手机',3000);

6.说明insert语句的细节

#插入的数据应与字段的数据类型相同。

#比如把’abc’添加到int类型会报错

insert into `goods` (id,goods_name,price)
       values('12','华为手机',2000);
 SELECT * FROM `goods`;

#数据的长度应在列的规定范围内,列如:不能将一个长度为80的字符串加入到长度为40的列中

#在values中列出的数据位置必须与被加入的列的排位位置相对应。

#字符和日期型数据应包含在单引号中。

#列可以插入空值【前提是该字段可以为空】insert into table_name values(null)

#insert into tab_name(列名。。)  values(),(),() 形式添加多条记录
insert into `goods` (id,goods_name,price)
       values('23','华为手机',2000),('23','oppo手机','1300');

#如果是给表中的所有字段添加数据,可以不写前面的字段名称

 insert into `goods`
       values('11','小米手机',2000);
  SELECT * FROM `goods`;

#默认值的使用,当不给某个字段值时,如果有默认值就会添加默认值,否则报错

#如果某个列 没有指定 not null,那么当添加数据时,没有给定值,则会默认给null

#如果我们希望指定某个列的默认值,可以在创建时指定

 insert into `goods2`
       values('10','华硕手机',2000);
SELECT * FROM `goods2`;

7.update语句

#在上面创建的employee表中修改表中的纪录

#将所有员工薪水修改为5000元。如果没有带where条件,会修改所有的记录,一定要带where。

update employee set salary = 5000
select * from employee;
#将姓名为小妖怪的员工薪水修改为3000元。
update employee 
         set salary=3000 
         where user_name = '小妖怪' 

#将小李的薪水在原有基础上增加1000元

update employee 
         set salary=salary - 1
         where user_name = '小李'
#update语句细节
#解释说明update语法可以用来更新原有行中的各列
#set语句指示要修改那些列和要给予那些值
#where语句指定更新那些行,如果没有where语句则更新所有行,记住要带where语句
#如果需要修改多个字段,可以通过 set字段1=  值1,字段2=值2。。。。
update employee 
         set salary=salary +1000,job='打水'
         where user_name = '小李'   
#delete语句演示
#删除表中名称为‘小张’的记录.
select * from employee; 
delete from employee
          where user_name = '小李';
删除表中的所有记录
#delete from employee(慎用)
#delete语句不能删除某一列的值(可使用update设为null或者'')
#使用delete语句仅删除记录,不删除表本身,删除表的命令drop table 表名


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
JavaScript 前端开发 开发者
TS入门篇 | 详解 TypeScript 类类型(下)
传统的面向对象语言都是基于类的,而JavaScript是基于原型的。在ES6中拥有了class关键字,虽然它的本质依旧是构造函数,但是能够让开发者更舒服的使用class了。 TypeScript 作为 JavaScript 的超集,自然也是支持 class 全部特性的,并且还可以对类的属性、方法等进行静态类型检测。下面就来看看 TypeScript 中的类类型。
804 0
|
Java 开发工具 C++
(2023版本)GraalVM+native-image+Visual Studio 在Win10上全流程安装,避坑+实操
(2023版本)GraalVM+native-image+Visual Studio 在Win10上全流程安装,避坑+实操
1058 1
(2023版本)GraalVM+native-image+Visual Studio 在Win10上全流程安装,避坑+实操
|
存储 大数据 数据处理
理解Python中的生成器:高效迭代的秘密
【10月更文挑战第8天】理解Python中的生成器:高效迭代的秘密
113 0
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的分类信息服务平台附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的分类信息服务平台附带文章源码部署视频讲解等
149 0
|
Kubernetes 架构师 Dubbo
阿里研究员:警惕软件复杂度困局
对于大型的软件系统如互联网分布式应用或企业级软件,为何我们常常会陷入复杂度陷阱?如何识别复杂度增长的因素?在代码开发以及演进的过程中需要遵循哪些原则?本文将分享阿里研究员谷朴关于软件复杂度的思考:什么是复杂度、复杂度是如何产生的以及解决的思路。较长,同学们可收藏后再看。
3119 0
阿里研究员:警惕软件复杂度困局
|
达摩院
阿里巴巴火速开发新冠肺炎联防联控平台,浙江省卫健委率先启用
宜搭的每日健康打卡、企业返工情况跟踪等功能都已向社会开放免费应用。1月29日,一则关于防疫的消息振奋人心:浙江省卫生健康委员会全面应用“疫情信息采集系统”进行信息管理并支持决策。这一全新的系统覆盖浙江省11个地市卫健委、90个区县卫健局、上千个基层防控工作小组。
阿里巴巴火速开发新冠肺炎联防联控平台,浙江省卫健委率先启用
|
2天前
|
数据采集 人工智能 安全
|
12天前
|
云安全 监控 安全
|
3天前
|
自然语言处理 API
万相 Wan2.6 全新升级发布!人人都能当导演的时代来了
通义万相2.6全新升级,支持文生图、图生视频、文生视频,打造电影级创作体验。智能分镜、角色扮演、音画同步,让创意一键成片,大众也能轻松制作高质量短视频。
1023 151