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

 目录

一、前言

二、数据库

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

四、 数据库相关的概念

 ⑤SQL语句操作

修改表

insert基本使用

update语句

delete语句


一、前言

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

二、数据库

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

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

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

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

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

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

四、 数据库相关的概念

DB:数据库(Database)

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

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

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

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

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

他们之间的一些关系。

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

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

 ⑤SQL语句操作

 创建数据库

格式:
  create database 数据库名

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

 如:创建一个db01的数据库

create database  db01

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

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

删除数据库

格式:
drop database 数据库名

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

如:删除db01的数据库

drop database db01

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

建库并设置字符集

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

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

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

create database  db02 character set  utf8

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

查看所有数据库

show databases

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

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

创建表

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

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

 如:

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

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

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

修改表

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

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

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

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

查看所有列(字段)

格式:

desc 表名

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

select *from 表名

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

如:查看emp表

desc emp
select*from emp

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

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

alter table emp
      modofy  job varchar(60)

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

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

alter table  emp  drop  sex

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

案例4:将表名emp改为employee

rename table emp to employee

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

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

alter table emp charcter set utf8

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

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

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

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

insert基本使用

表中加入数据

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

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

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

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

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

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

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

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

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

update语句

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

update emp set salary=7000;

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

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

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

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

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

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

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

修改多个列

用逗号隔开即可

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

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

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

delete语句

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

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

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

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

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

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

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

delete from  emp

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

删emp表

drop table emp

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

要小心使用删除类操作,不然就得跑路了,从删库到跑路【MySQL】面试官:crud都不会,回去等通知吧


上一篇:ASP.NET MVC POST model时为空


下一篇:ThinkPHP+swfupload多图上传实例 经典实用的php多图上传