黑马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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/520278.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

链表|707.设计链表

力扣题目链接 typedef struct MyLinkedList {int val;struct MyLinkedList* next; }MyLinkedList;/** Initialize your data structure here. */MyLinkedList* myLinkedListCreate() {//这个题必须用虚拟头指针,参数都是一级指针,头节点确定后没法改指向了!!!MyLinkedList* he…

力扣大厂热门面试算法题 - 矩阵

解数独,单词搜索,被围绕的区域。每题做详细思路梳理,配套Python&Java双语代码, 2024.03.07 可通过leetcode所有测试用例。 目录 37. 解数独 解题思路 完整代码 Python Java 79. 单词搜索 解题思路 完整代码 Python…

.Net6使用JWT认证和授权

文章目录 目的实现案例一.项目所需包:二.配置项目 appsettings.json 文件:三.创建Model文件夹,添加AppConfig类和UserRole类1.AppConfig类获取appsettings.json文件中的值2.UserRole类用于区分用户信息和权限 四.主体代码案例:1.L…

软考66-上午题-【面向对象技术】-小结+杂题

一、杂题 真题1: 真题2: 真题4: 真题5: 真题6: 二、面向对象设计-总结 2-1、考题分析 选择题:11道(11分) 综合分析题:2道(30分) java程序设计…

MySQL 存储过程(超详细)

一、什么是存储过程? 存储过程可称为过程化SQL语言,是在普通SQL语句的基础上增加了编程语言的特点,把数据操作语句(DML)和查询语句(DQL)组织在过程化代码中,通过逻辑判断、循环等操作实现复杂计算的程序语言。换句话说&#xff0c…

足球俱乐部管理系统:Java与SpringBoot的管理系统实践

✍✍计算机毕业编程指导师 ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡ Java、…

字符串函数和内存函数

文章目录 字符串函数strlen函数模拟实现 strcpy函数模拟实现 strcat函数使用模拟实现 strcmp函数使用模拟实现 strncpy函数使用模拟实现 strstr函数使用模拟实现 strtok函数使用 strerror函数使用 内存函数memset函数使用memcmp函数memcpy函数使用模拟实现 memmove函数使用模拟…

计算机二级 第2套

一、选择题 二、编程题

工作纪实46-关于微服务的上线发布姿势

蓝绿部署 在部署时,不需要将旧版本的服务停掉,而是将新版本与旧版本同时运行,新版本测试无误之后再将旧版本停掉。这样可以避免再升级的过程中如果失败服务不可用的问题,因为同时部署了两个版本的程序,使得硬件资源是…

如何在Linux系统Docker部署Dashy并远程访问内网服务界面

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

【排序算法】深入理解快速排序算法:从原理到实现

目录 1. 引言 2. 快速排序算法原理 3. 快速排序的时间复杂度分析 4. 快速排序的应用场景 5. 快速排序的优缺点分析 5.1 优点: 5.2 缺点: 6. Java、JavaScript 和 Python 实现快速排序算法 6.1 Java 实现: 6.2 JavaScript 实现&#…

稀疏数组实现

博文主要是自己学习的笔记,供自己以后复习使用, 参考的主要教程是B站的 尚硅谷数据结构和算法 稀疏数组(sparse array) 实际需求:五子棋程序中的存盘退出和续上盘的功能 问题分析: 如果直接用二维数组,很多值是默认…