当前位置: 首页 > wzjs >正文

茌平做网站深圳创业补贴需要什么条件

茌平做网站,深圳创业补贴需要什么条件,网站格局,青岛缤纷网络科技有限公司目录 前言 一、MySQL 1. 关系型数据库 2.数据模型 二、SQL语句 1.DDL语句 1.1 数据库操作 1.1.1 查询数据库 1.1.2 创建数据库 1.1.3 使用数据库 1.1.4 删除数据库 1.2 表操作 1.2.1 创建表 1.2.2 约束 1.2.3 数据类型 2.DML语句 2.1 增加(insert&…

目录

前言

一、MySQL

1. 关系型数据库

2.数据模型

二、SQL语句

1.DDL语句

1.1 数据库操作

1.1.1 查询数据库

1.1.2 创建数据库

1.1.3 使用数据库

1.1.4 删除数据库

1.2 表操作

1.2.1 创建表

1.2.2 约束

1.2.3 数据类型

2.DML语句

2.1 增加(insert)

2.2 修改(update)

2.3 删除(delete)

3.DQL语句

3.1 基本查询

3.2 条件查询

3.3 聚合函数

3.4 分组查询

3.5 排序查询

3.6 分页查询


前言

在开发SpringBoot项目时,我们一般将web应用程序分为三层,即:Controller、Service、Dao 。

web开发调用流程图如下所示:

下面讲解一下数据库的基础知识。

数据库有两个概念,第一个是DBMS(数据库管理系统),是操作和管理数据库的大型软件。第二个是SQL(结构化查询语言),它是操作关系型数据库的编程语言,定义了一套操作关系型数据库的统一标准。

一、MySQL

下图是一些目前主流的数据库:

MySQL数据库是开源免费的中小型数据库,目前Oracle推出两个版本的Mysql:社区版(开源免费)、商业版(收费)。对于初学者来说,使用社区版就足够了。

MySQL安装配置教程:Mysql的安装和配置教程

DataGrip安装配置教程(操作数据库图形化工具):DataGrip下载安装及使用教程

1. 关系型数据库

关系型数据库就是建立在关系模型基础上,由多张相互连接的二维表组成的数据库。而所谓二维表,指的是由行和列组成的表,如下图:

二维表的优点:

  • 使用表存储数据,格式统一,便于维护

  • 使用SQL语言操作,标准统一,使用方便,可用于复杂查询

结论:基于二维表存储数据的数据库就成为关系型数据库,不是基于二维表存储数据的数据库,就是非关系型数据库

2.数据模型

MySQL数据库的数据模型是关系型数据库,是基于二维表进行数据存储的,具体的结构图下:

  • 通过MySQL客户端连接数据库管理系统DBMS,然后通过DBMS操作数据库。

  • 使用MySQL客户端,向数据库管理系统发送一条SQL语句,由数据库管理系统根据SQL语句指令去操作数据库中的表结构及数据。

  • 一个数据库服务器中可以创建多个数据库,一个数据库中也可以包含多张表,而一张表中又可以包含多行记录。

二、SQL语句

SQL:结构化查询语言。一门操作关系型数据库的编程语言,定义操作所有关系型数据库的统一标准。SQL语句根据其功能被分为四大类:DDL、DML、DQL、DCL 。

1.DDL语句

1.1 数据库操作

1.1.1 查询数据库

查询所有数据库:

show databases;

命令行中给出了当前所有的数据库

查询当前数据库:

select database();

1.1.2 创建数据库

语法:

create database [ if not exists ] 数据库名  [default charset utf8mb4];

案例:

-- 数据库不存在,则创建该数据库;如果存在则不创建
create database if not exists itcast; 

1.1.3 使用数据库

语法:

use 数据库名 ;

案例:切换到itcast数据库

use itcast;

1.1.4 删除数据库

语法:

drop database [ if exists ] 数据库名 ;
  • 如果删除一个不存在的数据库,将会报错。

  • 可以加上参数 if exists ,如果数据库存在,再执行删除,否则不执行删除。

1.2 表操作

1.2.1 创建表

语法:

create table  表名(字段1  字段1类型 [约束]  [comment  字段1注释 ],字段2  字段2类型 [约束]  [comment  字段2注释 ],......字段n  字段n类型 [约束]  [comment  字段n注释 ] 
) [ comment  表注释 ] ;

[约束]是对当前字段进行约束

示例:

create table tb_user (id int comment 'ID,唯一标识',   # id是一行数据的唯一标识(不能重复)username varchar(20) comment '用户名',name varchar(10) comment '姓名',age int comment '年龄',gender char(1) comment '性别'
) comment '用户表';

但是对于上面的表,我们能添加两条id为1的数据:

因为我们没有对字段添加约束,所以任何数据都可以填入。

1.2.2 约束

在MySQL数据库当中,提供了以下5种约束:

在上述的表结构中:

  • id 是一行数据的 唯一标识

  • username 用户名字段是非空唯一

  • name 姓名字段是不允许存储空值

  • gender 性别字段是有默认值,默认为男

create table tb_user (id int primary key auto_increment comment 'ID,唯一标识', #auto_increment表示主键自动增长username varchar(20) not null unique comment '用户名',name varchar(10) not null comment '姓名',age int comment '年龄',gender char(1) default '男' comment '性别' # default表示默认值 
) comment '用户表';

1.2.3 数据类型

数值类型主要有以下几种:

画红线的是常用的。

字符串类型主要有char类型和varchar类型:

char 与 varchar 都可以描述字符串,char是定长字符串,指定长度多长,就占用多少个字符,和字段值的长度无关 。而varchar是变长字符串,指定的长度为最大占用长度 。相对来说,char的性能会更高些。 

示例: 用户名 username ---长度不定, 最长不会超过50username varchar(50)手机号 phone ---固定长度为11phone char(11)

日期时间类型如下:

示例: 生日字段  birthday ---生日只需要年月日  birthday date创建时间 createtime --- 需要精确到时分秒createtime  datetime

2.DML语句

2.1 增加(insert)

向指定字段添加数据

insert into 表名 (字段名1, 字段名2) values (值1, 值2);
-- 因为设计表时create_time, update_time两个字段不能为NULL,所以也做为要插入的字段
insert into emp(username, name, gender, phone, create_time, update_time)
values ('wuji', '张无忌', 1, '13309091231', now(), now());

全部字段添加数据

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

批量添加数据(指定字段)

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

批量添加数据(全部字段)

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

2.2 修改(update)

语法:

update 表名 set 字段名1 = 值1 , 字段名2 = 值2 , .... [where 条件] ;

 示例:

将id为1的数据,name改为“张三”,update_time改为当前时间。

update emp set name='张三', update_time=now() where id=1;

2.3 删除(delete)

语法:

delete from 表名  [where  条件] ;

示例:

删除emp表中id为1的那一行数据。

delete from emp where id = 1;

3.DQL语句

DQL语句用来查询数据库表中的记录,是最常用的SQL语句。

3.1 基本查询

查询多个字段:

select 字段1, 字段2, 字段3 from  表名;

查询所有字段:

select *  from  表名;

3.2 条件查询

语法:

select  字段列表  from   表名   where   条件列表 ; -- 条件列表:意味着可以有多个条件

示例:

查询名字为杨逍的那一行数据。

select id, username, password, name, gender, phone, salary, job, image, entry_date, create_time, update_time
from emp
where name = '杨逍'; -- 字符串使用''或""包含

比较运算符:

逻辑运算符:

3.3 聚合函数

常用的聚合函数如下:

示例:

统计平均工资

select avg(salary) from  emp;

统计emp表中有多少数据:

-- count(*)  推荐此写法(MySQL底层进行了优化)
select count(*) from emp;

3.4 分组查询

  • 分组: 按照某一列或者某几列,把相同的数据进行合并输出。

    • 分组其实就是按列进行分类(指定列下相同的数据归为一类),然后可以对分类完的数据进行合并计算。

    • 分组查询通常会使用聚合函数进行计算。

语法:

select  字段列表  from  表名  [where 条件]  group by 分组字段名  [having 分组后过滤条件];

示例:

根据性别分组 , 统计男性和女性员工的数量 

select gender, count(*)
from emp
group by gender; -- 按照gender字段进行分组(gender字段下相同的数据归为一组)

查询入职时间在 '2015-01-01' (包含) 以前的员工 , 并对结果根据职位分组 , 获取员工数量大于等于2的职位 

select job, count(*)
from emp
where entry_date <= '2015-01-01'   -- 分组前条件
group by job                      -- 按照job字段分组
having count(*) >= 2;             -- 分组后条件

where与having区别

  • 执行时机不同:where是分组之前进行过滤,不满足where条件,不参与分组;而having是分组之后对结果进行过滤。

  • 判断条件不同:where不能对聚合函数进行判断,而having可以。

3.5 排序查询

语法:

select  字段列表  
from   表名   
[where  条件列表] 
[group by  分组字段 ] 
order  by  字段1  排序方式1 , 字段2  排序方式2 … ;
  • 排序方式:

    • ASC :升序(默认值)

    • DESC:降序

示例:

根据entry_date,进行降序排序

select id, username, password, name, gender, phone, salary, job, image, entry_date, create_time, update_time
from emp
order by entry_date DESC; -- 按照entrydate字段下的数据进行降序排序

3.6 分页查询

语法:

select  字段列表  from  表名  limit  起始索引, 查询记录数 ;

示例:

从起始索引0开始查询数据, 每页展示5条记录

select id, username, password, name, gender, phone, salary, job, image, entry_date, create_time, update_time
from emp
limit 0 , 5; -- 从索引0开始,向后取5条记录

查询 第2页 员工数据, 每页展示5条记录 

select id, username, password, name, gender, phone, salary, job, image, entry_date, create_time, update_time
from emp
limit 5 , 5; -- 从索引5开始,向后取5条记录

 


文章转载自:

http://iBNW1KyS.zqmdn.cn
http://awb86OEB.zqmdn.cn
http://2xtigGEM.zqmdn.cn
http://lecUbcQU.zqmdn.cn
http://DcTnke7U.zqmdn.cn
http://VxXBpzcZ.zqmdn.cn
http://rVvwxrkH.zqmdn.cn
http://YpzXbufO.zqmdn.cn
http://NLwVdBen.zqmdn.cn
http://v46eDoC6.zqmdn.cn
http://6w9lASNX.zqmdn.cn
http://SWa8qrwi.zqmdn.cn
http://BjlaP9td.zqmdn.cn
http://gCkN8QNP.zqmdn.cn
http://IWJqWjeS.zqmdn.cn
http://KnaM9zyv.zqmdn.cn
http://ZssHr8f6.zqmdn.cn
http://WLAK06kS.zqmdn.cn
http://R2spM7jL.zqmdn.cn
http://eWcUhfjc.zqmdn.cn
http://gguFXL2Y.zqmdn.cn
http://kFfwMbgv.zqmdn.cn
http://puLrCr2S.zqmdn.cn
http://VysiAAqE.zqmdn.cn
http://SbrirWs3.zqmdn.cn
http://FTajh8kp.zqmdn.cn
http://EVZBelg9.zqmdn.cn
http://ppDUpayT.zqmdn.cn
http://h5DWZRme.zqmdn.cn
http://ugXPqUrn.zqmdn.cn
http://www.dtcms.com/wzjs/660738.html

相关文章:

  • 内网门户网站微信公众号推广软文案例
  • 泉州做网站qzxiaolv南宁百度快速优化
  • 律师网站建设方案网页传奇游戏修改器
  • html网站中文模板下载wordpress登陆按钮
  • 1)_童装网站建设目标南京建设银行公积金查询网站
  • 网站建设公司新员工培训ppt模板成都企业网站建站
  • 做项目网站然后做网站
  • 建站公司兴田德润在哪里做网站题材
  • 做的最好的微电影网站有哪些土特产 网站源码
  • 郑州便宜网站建设网站服务器ip地址怎么查
  • 阜康网站建设手机制作音乐的软件app
  • 旅游网站推荐凯里网站建设哪家专业
  • 烟台环保网站建设环境文化建设方案网站
  • 在青岛建网站微信网页版登录手机版
  • 哪个网站做黑色星期五订酒店活动外贸那些网站好用吗
  • 从0建设一个网站小米网站制作
  • 建公司网站外贸网站建设作品
  • 搭建网站有哪些昭通网络推广
  • 江西省建设协会网站动漫设计在哪里可以学
  • 小公司如何做网站wordpress刷量插件
  • 广州建设网站wordpress默认注册框
  • 旅游自媒体网站怎么做ajax wordpress
  • 凡科网站怎么做网站创建软件
  • 怎么用php做网站后台程序辽宁响应式网站建设推荐
  • 四川省工程项目建设投标发布网站莱芜上汽大众4s店
  • 基于oa系统的网站建设青岛seo代理计费
  • 怎么登录已注册的网站支付宝签约网站
  • 帮一个公司做网站多少钱wordpress nana
  • 商业机构的网站是什么文山知名网站建设哪家好
  • 做软件的网站建设深圳平价的专业建站公司