MySQL面试官:crud都不会,回去等通知吧

Posted 执久呀

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL面试官:crud都不会,回去等通知吧相关的知识,希望对你有一定的参考价值。

目录

一、前言

二、数据库

三、为什么要使用数据库?

四、 数据库相关的概念

 ⑤SQL语句操作

修改表

insert基本使用

update语句

delete语句


一、前言

数据库在实际开发中用处极大,学习数据库已然是基本的要求。

二、数据库

数据库的种类有许多,企业中常用的有mysql、Oracle,其中MySQL使用最多,是因为他开源免费而且功能也是十分强大。

三、为什么要使用数据库?

数据库可以持久化操作,我们都知道内存中的数据是以高电压低电压产生0和1进行数据存储的一旦断电内存中的数据就会消失。

持久化的主要作用是将内存中的数据存储在关系型数据库中,也可以存储在磁盘文件XML数据文件中。

四、 数据库相关的概念

DB:数据库(Database)

即储存数据的仓库,它的本质是一个文件系统,他保存了一系列有组织的数据

DBMS:数据库管理系统(Database Mangement System)

是一种曹总和管理数据的大型软件(如:MySQL),用于建立、使用和维护数据库,对数据库进行统一管理和控制,用户通过数据库管理系统访问数据库中表的数据

SQL:结构化查询语言(Structured Query Language)

用来对数据库进行一系列操作的语言

他们之间的一些关系。

 ⑤SQL语句操作

 创建数据库

格式:
  create database 数据库名

 如:创建一个db01的数据库

create database  db01

 数据库中sql语句不区分大小写

删除数据库

格式:
drop database 数据库名

如:删除db01的数据库

drop database db01

建库并设置字符集

格式:
create database  数据库名 character set  字符集

如:创建数据库为db02,字符集是utf8

create database  db02 character set  utf8

查看所有数据库

show databases

注:在创建数据库、表时,为了避免和关键字冲突,可用``,如`name`

创建表

格式:
create table 表名(
    field1 datatype,
   field2 datatype,
   field3 datatype,
   .....
)
character set 字符集 collate 校对规则 engine 引擎

 如:


create table utab(
   id  int,
   `name` varchar(255),
  age  int
)
character set utf8 collate utf8_bin engine innodb

校对规则默认utf_bin(不区分大小写,数据TOM和tom是一样的)

修改表

案例1:在员工表emp的上增加一个imge列,varchar类型(要求在id列的后面)

alter table emp 
   add  image varchar(32) not null default '哈哈'  //不允许为空,默认为哈哈
    after id;

注:分号可加可不加(建议加)

查看所有列(字段)

格式:

desc 表名
select *from 表名

如:查看emp表

desc emp

select*from emp

案例2:修改emp表中的job列,使其长度变为60

alter table emp
      modofy  job varchar(60)

案例3:删除emp表中的sex列

alter table  emp  drop  sex

案例4:将表名emp改为employee

rename table emp to employee

案例5:修改表emp的字符集为utf8

alter table emp charcter set utf8

案例6:将表名为emp的name列修改为user_name

alter table emp change `name` `user_name` varchar(255)

insert基本使用

表中加入数据


格式:
insert into 表名 (字段1,字段2,字段3....) values(值1,值2,值3....) 

若加表的全部字段,则表名后面的字段不用写

案例1:向emp中加入数据,emp中的数据类型分别是(int,int,varchar(255))

insert into emp values (1,20,'张三');

案例2:向emp中加入数据,只加id和age那行,emp中的数据类型分别是(int,int,varchar(255))

insert into emp(id,age) values (2,20);

update语句

案例1:在emp表中将所有员工工资修改为7000

update emp set salary=7000;

案例2:在emp表中将张三的工资修改为3000

update emp set salary=3000 where `name`='张三';

案例3:在emp表中将李四的工资加1000

update emp set salary=salary+1000 where `name`='李四';

修改多个列

用逗号隔开即可

案例4:将张三的工资改为5000,和工作改为敲代码

update emp set salary=5000,job='敲代码' where `name`='张三';

delete语句

案例1:删除emp表中名为张三的

delete from emp while `name`='张三'

案例2:在emp中使名为李四的工作那列置空

update emp set job='' where `name`='李四';

案例3:删除emp表中数据(这个删除只是将emp表中的数据清空,真正删表还得drop)

delete from  emp

删emp表

drop table emp

要小心使用删除类操作,不然就得跑路了,从删库到跑路

 

以上是关于MySQL面试官:crud都不会,回去等通知吧的主要内容,如果未能解决你的问题,请参考以下文章

MySQL遵循最左前缀匹配原则!面试官:回去等通知吧

MySQL遵循最左前缀匹配原则!面试官:回去等通知吧

面试官:用了5年的SpringBoot框架,竟然不了解它的启动过程?回去等通知吧

Redis问的太深入,面试官说:“你先回去等通知吧“!

我们都进入了一个误区,其实面试官 “ 回去等通知 ” 不等于没戏....

3年程序员去面试,没到3个回合,面试官让回去等通知了