黑马java-JavaWeb-MySQL基本操作

1.JavaWeb:

用java技术来解决相关web互联网领域的技术栈

2.数据库:

存储数据的仓库,数据是有组织的进行存储

英文:DataBase,简称DB

3.数据库管理系统:

管理数据库的大型软件

英文:DataBase Management System简称DBMS

4.SQL

英文:Structured Query Language,简称SQL,结构化查询语言

操作关系型数据库的编程语言

定义操作所有关系型数据库的统一标准

5.关系型数据库

关系型数据库是建立在关系模型基础上的数据库,简单说,关系型数据库是由多张能互相连接的二维表组成的数据库

优点:

1.都是使用表结构,格式一致,易于维护

2.使用通用的sql语言操作,使用方便,可用于复杂查询

3,数据存储在磁盘中,安全

6.sql通用语法

1.sql语句可以单行或多行书写,以分号结尾

2.Mysql数据库的sql语句不区分大小写,关键字建议大写

3,注释

单行注释:--注释内容或#注释内容

多行注释:/*注释内容*/

6.DDL:操作数据库、表等

DML:对表中数据进行增删改

DQL:对表中数据进行查询

DCL:对数据库进行权限控制

6.DDL:

数据库:

  1. 查询:show databases;
  2. 创建:create database 数据库名称;
  3. 创建数据库(判断,如果不存在则创建):create database if not exists 数据库名称;
  4. 删除数据库:drop database 数据库名称;
  5. 删除数据库(判断,如果存在则删除):drop database if exists 数据库名称;
  6. 查看当前使用的数据库:select database();
  7. 使用数据库:use database

表操作:

查询当前数据库下索引表名称:show tables;

查询表结构:desc 表名称;

创建表:create table 表名(

字段名1 数据类型1,

字段名2 数据类型2,

。。。。

字段名n 数据类型n

);

删除表:drop table 表名;

删除表时判断表是否存在:drop table if exist 表名;

修改表名:alter table 表名 rename to 新的表名;

添加一列:alter table 表名 add 列名 数据类型;

修改数据类型:alter table 表名 modify 列名 新数据类型;

修改列名和数据类型:alter table 表名 change 列名 新列名 新数据类型;

删除列:alter table 表名 drop 列名;

指定列添加数据:insert into 表名(列名1,列名2...)values(值1,值2,...);

给全部列添加数据:insert into 表名 values (值1,值2,....);

批量添加数据:insert into 表名(列名1,列名2,.....)values(值1,值2,....),(值1,值2,...).....;

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

修改表数据:update 表名 set 列名1=值1,列名2=值2,...[where 条件];

删除表数据:delete from 表名 [where 条件];

7.DQL

查询多个字段:SELECT 字段列表 FROM 表名;

查询所有数据:SELECT *FROM 表名

去除重复记录:SELECT DISTINCT 字段列表 FROM 表名;

起别名:AS

条件查询:SELECT 字段列表 FROM 表名 WHERE 条件列表;

NULL不能使用=,需要使用is或者is not

模糊查询:

排序查询:

排序查询法:

SELECT 字段列表 FROM 表名 ORDER BY 排序字段名1 [排序方式1],排序字段名2 [排序方式2]...;

排序方式:ASC:升序排序(默认值)

DESC:降序排序

注意:如果有多个排序条件,当前边的条件值一样时,才会根据第二条件进行排序

聚合函数:

1.概念:将一列数据作为一个整体,进行纵向计算

2.聚合函数分类:

3.聚合函数语法:

SELECT 聚合函数名(列名) FROM 表;

注意:null值不参与所有聚合函数运算

分组查询:

1.语法:SELECT 字段列表 FROM 表名 [WHERE 分组前条件限定] GROUP BY 分组字段名 [HAVING 分组后条件过滤];

注意:分组之后,查询的字段为聚合函数和分组字段,查询其他字段无任何意义

where和having的区别:

执行时机不一样:where是分组之前进行限定,不满足where条件,则不参与分组,而having是分组之后对结果进行过滤

可判断的条件不一样:where不能对聚合函数进行判断,having可以

执行顺序:where>聚合函数>having

分页查询:

语法:SELECT 字段列表 FROM 表名 LIMIT 起始索引,查询条目数;

起始索引:从0开始

计算公式:起始索引=(当前页面-1)*每页显示的条数

tips:

分页查询limit是MYSQL数据库的方言

Oracle分页查询使用rownumber

SQL server 分页查询使用top

相关推荐
一心只为学9 分钟前
Oracle密码过期问题,设置永不过期
数据库·oracle
小光学长18 分钟前
基于vue框架的宠物销售管理系统3m9h3(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。
数据库
小菜yh41 分钟前
关于Redis
java·数据库·spring boot·redis·spring·缓存
ggdpzhk1 小时前
Mybatis 快速入门(maven)
oracle·maven·mybatis
Microsoft Word1 小时前
数据库系统原理(第一章 数据库概述)
数据库·oracle
华为云开源1 小时前
openGemini 社区人才培养计划:助力成长,培养新一代云原生数据库人才
数据库·云原生·开源
kejijianwen4 小时前
JdbcTemplate常用方法一览AG网页参数绑定与数据寻址实操
服务器·数据库·oracle
编程零零七4 小时前
Python数据分析工具(三):pymssql的用法
开发语言·前端·数据库·python·oracle·数据分析·pymssql
高兴就好(石7 小时前
DB-GPT部署和试用
数据库·gpt
这孩子叫逆8 小时前
6. 什么是MySQL的事务?如何在Java中使用Connection接口管理事务?
数据库·mysql