本章内容是,用sql语言实现对数据库的基本操作和表的基本操作


文章目录

  • 前言
  • 1. 数据库的基本操作
  • 1.1 创建数据库
  • 1.2 查看数据库
  • 1.3 选中数据库
  • 1.4 删除数据库
  • 2. 数据库基本数据类型
  • 3. 表的基本操作
  • 3.1 创建表
  • 3.2 显示数据库中的表
  • 3.3 查看表的构造
  • 3.4 删表
  • 4. 表的增删改查
  • 4.1 增加数据
  • 4.2 删除数据
  • 4.3 查询数据
  • 4.4 数据库运算
  • 4.4.1 比较运算符
  • 4.4.2 逻辑运算符
  • 4.5 更新数据



前言

sql语句这里知识点不难,但是很多,需要时常练习复习,否则很快就忘了.大家可以收藏本篇文章,时时巩固复习.打开你的Mysql,我们开始啦~


1. 数据库的基本操作

1.1 创建数据库

  1. 创建数据库的语句
create  database 数据库名;

如下图,显示OK,就是创建好了.

分号" ; " 是一条sql语句结束的标志.

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_数据


2. 创建数据库是不允许出现重名数据库的,所以,这里有创建数据库时,防止名字重复的创建数据库语句.若是输入已经存在的名字,系统不会报错,只是不会执行该数据库创建语句.

create database if not exists 数据库名

如下图

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_数据库_02


3. 创建数据库时指定字符集

数据库中,一个汉子占几个字节取决于字符集.我们数据库通常使用utf-8字符集,utf-8中,汉子一般占3字节,支持各种语言文字,但utf-8不能表示表情,utf8b4可以表示表情

create database 数据库名 charset utf8;

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_mysql_03

1.2 查看数据库

我们来看看自己有哪些数据库吧~
展示数据库语句.注意后面的databases,要变复数.

show databases;

如下图

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_mysql_04

1.3 选中数据库

我们要对数据库中的表进行操作时,首先要选中数据库.

use 数据库名;

如下图

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_数据库_05

1.4 删除数据库

首先,这是一个非常危险的操作,尤其是生产环境的数据库,一旦删除重要信息,可能会造成很严重的损失.
删库语句

drop database 数据库名;

如图,一定要谨慎!!!

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_表名_06

2. 数据库基本数据类型

数据字母不区分大小写
以下为常用数据结构介绍.由于decimal无精度丢失,所以可以用来表示钱数.
varchar(SIZE),size要考虑的是里面字符的个数,比如要记录班级同学名字,名字最长有四个字,那size为4即可.

数据类型

大小

对应java类型

说明

int

4字节

Integer

float(M,D)

4字节

float

单精度,M为指定长度,D为小数点位数,有精度丢失

double(M,D)

8字节

double

decimal(M,D)

M/D最大值+2

BigDecimal

双精度,M为指定位数,D为小数点位数,无精度丢失

varchar(SIZE)

size为允许字符的最多个数

string

常用字符串类型

3. 表的基本操作

3.1 创建表

首先,在操作表时,要指定是哪个数据库.

use 数据库名;
create table 表名(列名1 列类型, 列名2 列类型,.....)

如下图,创建了一个student表,列有学号,名字,性别.

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_表名_07

3.2 显示数据库中的表

来看看自己数据库的表吧~

show tables;

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_表名_08

3.3 查看表的构造

这个操作,是查看表的结构,有哪些列,列的类型是什么

desc 表名;

如下图.

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_sql_09

3.4 删表

同样,这个也是极其危险的操作,删表需谨慎!!!

drop table 表名;

如下图

4. 表的增删改查

4.1 增加数据

insert into 表名 values(值1,值2....);

如下图,插入了三个数据.

字符串用单引号’',或者双引号""括起来都可以.

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_数据库_10


指定列插入,直插入指定的列,未被插入的列为null.

insert into 表名 (列名1,列名2) values(值1,值2);

如下图.

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_mysql_11

4.2 删除数据

删除数据语句

delete from 表名 where 条件;

危险操作!!!这里的删除是直接删除硬盘里的数据.

如下图,删除阿三同学的数据.

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_数据库_12

4.3 查询数据

1.全列查询

select * from 表名;

" * "是通配符,表示所有的列

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_数据库_13


注意,这个操作有一定危险性,select * 会遍历所有数据,而公司中数据库数值巨大,数据都需要从硬盘中读出来,所以硬盘容易被占满,而会影响他人对数据库的使用.

限制查询出来的语句数目,这个方法可以避免查询出来的数据过多的问题.

select * from score limit n;

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_mysql_14

2.指定列查询

select 列名 from表名;

如图,只看name这一列

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_sql_15


3.查询时,对列进行修改

如图,在查询数学成绩时加了10,

需要注意的是,这个查询出来的是临时表,这里的改动不会对实际表有什么影响,相当于形参不改变实参的值.

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_sql_16


4.查询总成绩

如图,查询三人总成绩,并给总成绩起了一个别名total.

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_mysql_17


5.查询时去重

select distinct 列名 from表;

如下图,去掉了语文成绩重复的数据,这里,若是指定多个列,必须这些列的值都重复,才算重复,才能去重.

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_数据_18


6.查询时,对查询出来的结果进行排序

根据语文成绩进行升序排序.

select * from score order by chinese;

根据语文成绩降序排序,这里的desc指的是单词descend,下降.

select * from score order by chinese desc;

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_表名_19


注意,如果排序的值有null,则null视为最小的值.

null与任何值进行运算都是null;这里的任何运算包括逻辑运算和算术运算.如下图,

chinese + null = null.

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_mysql_20


注意:多列排序时,先以第一列为主,若第一列值相等,再比较第二列.方法与比较字符串大小类似.

7.条件查询.

select * from score where 条件;

如下图,查询语文成绩大于80的同学.

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_sql_21

4.4 数据库运算

4.4.1 比较运算符

1.普通的>,<.=正常使用.注意,因为判断null == null,也等于null,为假.所以,null之间的相等判断使用运算符"<=>"

2.between 值1 and 值2;这里是闭区间 [值1,值2]

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_数据库_22


(值1,值2,…);

只要值和可选值中的一个对应上即可.4.is null 与 is not null

如图,查询name 不为null的数据

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_mysql_23


5.like 模糊匹配

“阿%” 代表只要以阿开头的字符串即可匹配,"%“可代表任意一个字符串,空也可以

“阿_” 代表阿后面有一个字符的可以匹配,”_"代表有一个字符.

“_阿” 代表阿前面有一个字符的可以匹配

“%阿%” 代表包含阿即可

4.4.2 逻辑运算符

1.and,是逻辑中的与&&

2.or,是逻辑中的或||

3.not,是逻辑中的非!

实例如下图

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_数据_24


mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_数据_25

4.5 更新数据

这里的更新数据,是直接修改硬盘里的数据,持久生效.

update 表名 set 列名 where 条件;

如下图,修改阿恒同学的数学成绩.

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_sql_26


使用表达式进行修改

update 表 set 表达式 where 条件;

如下图,给摆烂的同学数学成绩加10分.加分,谁摆烂给谁加,看谁还卷我o(╥﹏╥)o

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_数据_27


修改多个列

如图,继续支持摆烂同学,给摆烂同学的语文和英语成绩加10 摆烂同学还是没及格,适当摆烂,有益身心健康

mysql 删除命令可以一次过删除多个表吗 mysql删除多张表数据_数据库_28