MySQL入门(数据库、数据表、数据、字段的操作以及查询相关sql语法)
 天行健,君子以自强不息;地势坤,君子以厚德载物。
每个人都有惰性,但不断学习是好好生活的根本,共勉!
文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。
安能摧眉折腰事权贵,使我不得开心颜?
 ——《梦游天姥吟留别》
文章目录
- MySQL入门操作命令汇总
- 1. 数据库(create、show、drop、alter)
- 1.1 登录数据库
- 1.2 创建数据库(create)
- 1.3 查看所有数据库(show)
- 1.4 删除数据库(drop)
- 1.5 更改数据库字符集(alter)
 
- 2. 数据表(use、create、show、describe、drop、alter)
- 2.1 使用数据库(use)
- 2.2 创建数据表(create)
- 整数类型
- 浮点数类型
- 字符串类型
- 日期时间类型
- 二进制类型
 
- 2.3 查询数据表(show)
- 2.4 查看表结构(describe)
- 2.5 删除表(drop)
- 2.6 修改数据表名(alter)
 
- 3. 数据记录(insert、select、delete、update)
- 3.1 添加数据(insert)
- 3.2 查询数据(select)
- 3.2.1 去重查询(distinct)
- 3.2.2 模糊查询(like)
- 3.2.3 限制查询结果集(limit)
- 3.2.4 分组查询(group)
- 3.2.5 分组统计(count)
- 3.2.6 结果集过滤(having)
- 3.2.7 结果集排序(order)
- 3.2.7.1 单字段排序
- 3.2.7.2 多字段排序
- 3.2.7.3 限制排序
- 3.2.7.4 限制排序并选择区间(暂时未测通)
 
 
- 3.2 删除数据(delete)
- 3.3 更新数据(update)
 
- 4. 字段或者说表结构(show、select、alter、drop、modify、change)
- 4.1 显示表中所有字段(列)
- 4.2 显示表中所有数据
- 4.3 添加字段(列)
- 4.4 删除字段(列)
- 4.5 修改字段类型
- 4.6 修改字段名和类型
 
- 5. 统计(sum、count、max、min、avg)
- 5.1 sum求和
- 5.2 count统计数量
- 5.3 max最大值
- 5.4 min最小值
- 5.5 avg平均值
 
 
MySQL入门操作命令汇总
MySQL学习专栏
 MySQL下载安装配置
时区修改
 java使用jdbc导致时区问题,此时修改东八区
 在mysql文件夹中找到my.ni文件
 编辑器打开,在[mysqlId]下面添加一行
default-time_zone='+8:00'
然后重启mysql,打开任务管理器–服务–找到mysql,右键重新启动
1. 数据库(create、show、drop、alter)
1.1 登录数据库
mysql -u 账号 -p
回车后输入密码
密码不显示
1.2 创建数据库(create)
创建数据使用create语句
 语法
create database 数据库名;
示例
 如创建数据库test01
create database test01;
1.3 查看所有数据库(show)
查看数据库使用show语句
show databases;
1.4 删除数据库(drop)
删除数据库使用drop语句
 语法
drop database 数据库名;
示例
 如删除数据库test01
drop database test01;
1.5 更改数据库字符集(alter)
更改数据库的字符集,使用alter set进行设置
 语法
alter database 数据库名 default character set 字符集名称;
示例
 如将数据库test01的字符集修改为utf-8
alter database test01 default character set 'utf-8';
2. 数据表(use、create、show、describe、drop、alter)
2.1 使用数据库(use)
使用数据库表示接下来对数据库和表的操作都是在该数据库下进行
 语法
use 数据库名;
在操作表之前需要先使用该命令选择数据库
 示例
 如使用数据库test01
use test01;
2.2 创建数据表(create)
创建数据表
 语法
CREATE TABLE 表名 (字段1 数据类型 约束条件;字段2 数据类型 约束条件;
);
示例
 如创建一个名为user的数据表,字段包含姓名年龄以及自增长的id
create table user(id int auto_increment not null comment "自增id",name varchar(255) not null default "" comment "姓名",age int not null default 0 comment "年龄",primary key (id)
);
拓展
 关于mysql中常见的数据库表字段数据类型
整数类型
整数类型的内容如下表
| 数据类型 | 描述 | 
|---|---|
| tinyint | 1字节,取值范围: -128~127 | 
| smallint | 2字节,取值范围:-32768~32767 | 
| mediumint | 3字节,取值范围:-8388608~8388607 | 
| int | 4字节,取值范围:-2147483648~2147483647 | 
| bigint | 8字节,取值范围:-9223372036854775808~9223372036854775807 | 
浮点数类型
浮点数类型的内容如下表
| 数据类型 | 描述 | 
|---|---|
| float(m,d) | 单精度浮点数,占用4个字节,m为总个数,d为小数位 | 
| double(m,d) | 双精度浮点数,占用8个字节,比FLOAT有更高的精度和更大的表示范围 | 
| decimal(m,d) | 精确数值类型,用于存储精确的雄安舒。可以指定精度和小数位数 | 
字符串类型
字符串类型的内容如下表
| 数据类型 | 描述 | 
|---|---|
| char | 固定长度的字符串,长度在创建时指定,不足指定长度时会用空格填充 | 
| varchar | 可变长度的字符串,长度在创建时指定,存储时只占用实际字符串长度的空间 | 
| text | 用于存储较长的文本数据,有TINYTEXT、TEXT、MEDIUMTEXT和LONGTEXT等不同的长度限制 | 
日期时间类型
日期时间类型的内容如下表
| 数据类型 | 描述 | 
|---|---|
| date | 用于存储日期,格式为YYYY-MM-DD | 
| time | 用于存储时间,格式为HH:MM:SS | 
| datetime | 用于存储日期和时间,格式为YYYY-MM-DD HH:MM:SS | 
| timestamp | 用于存储日期和时间,范围比DATETIME小,从1970-01-01 00:00:01到2038-01-19 03:14:07,并且在插入或更新记录时,TIMESTAMP列会自动更新为当前时间 | 
二进制类型
二进制类型的内容如下表
| 数据类型 | 描述 | 
|---|---|
| binary | 固定长度的二进制数据,类似于CHAR | 
| varbinary(M) | 可变长度的二进制数据,类似于VARCHAR | 
| blob | 用于存储大量的二进制数据,有TINYBLOB、BLOB、MEDIUMBLOB和LONGBLOB等不同的长度限制 | 
2.3 查询数据表(show)
展示当前数据库的所有表(使用use 数据库名语句来确认展示指定数据库中的表)
 语法
show tables;
示例
 如展示test01数据库下的所有表
use test01;
show tables;
2.4 查看表结构(describe)
查看数据表结构
 语法
describe 表名;
示例
 如查看users表的表结构
describe users;
2.5 删除表(drop)
删除数据表
 语法
drop table 表名;
示例
 如删除users表
drop table users;
2.6 修改数据表名(alter)
修改数据表的名称
 语法
alter table 旧数据表名 rename 新数据表名;
示例
 如修改users表的表名,修改为users_info
alter table users rename users_info;
3. 数据记录(insert、select、delete、update)
3.1 添加数据(insert)
添加数据,即添加表字段对应的值
 添加一条数据
 语法
insert into 表名 (字段1,字段2,字段3,字段4...) values (值1,值2,值3,值4...);
示例
 如在表users中添加name和age字段的数据
insert into users (name, age) value ("libai", 18);
插入多条数据
 语法
insert into 表名 (字段1,字段2,字段3,字段4...) values (值11,值12,值13,值14...), (值21,值22,值23,值24...);
示例
 如在表users中添加两条数据
insert into users (name, age) values ("格鲁特", 19), ("灭霸", 30);
3.2 查询数据(select)
查询使用select语句
 可查询全部数据(*表示查询所有列的数据)
 语法
select * from 表名;
示例
 如查询users表的所有数据
select * from users;
查询满足条件的指定的字段的数据
 语法
select 字段1,字段2,字段3... from 表名 where 条件;
示例
 如查询users表中满足age值为18的name和age字段的数据
select name, age from users where age = 18;
3.2.1 去重查询(distinct)
指定字段去重(distinct)
 语法
select distinct 字段名 from 数据表名;
示例
 如去重查询users表中name字段的数据
select distinct name from users;
3.2.2 模糊查询(like)
like模糊查询(%表示通配符)
 语法
select * from 表名 where 字段名 like '匹配内容的前缀%';
示例
 如查询表名为users
 字段名为name
 以李开头的数据
select * from users where name like '李%';
3.2.3 限制查询结果集(limit)
对查询结果限制输出
 语法
select * from users limit 需要保留的数据量的值;
示例
 如查询users表中的数据,保留前十条展示
select * from users limit 10;
3.2.4 分组查询(group)
根据表中字段A进行查询结果分组
 语法
select 字段A from 表名 group by 字段A;
示例
 如查询users表中的数据按用户年龄分组
select age from users group by age;
3.2.5 分组统计(count)
根据表字段分组统计满足条件的数据,其中count中的字段名也可以是*表示统计所有字段
 语法1
select 字段名,count(字段名或者自定义) from 表名 group by 字段名;
这样写可能不是很明确,可以如下,根据字段名分组,分组的后的数量起个别名进行展示
 语法2
select 字段名, count(字段名) as num from 表名 group by 字段名;
其中括号中的字段名可自定义内容,当使用as设置别名时count(*)部分不会展示
 语法3
select 字段名, count(*) as num from 表名 group by 字段名;
示例
 如将用户表根据性别分组统计
select gender, count(*) as num from users group by gender;
3.2.6 结果集过滤(having)
根据字段名分组并过滤
 语法
select 字段名, count(字段名) as result from 表名 group by 字段名 having 条件;
示例
 如统计users表中性别为男的数据
select gender,count(*) as 同性别的人数 from users group by gender having gender = "男"; 
3.2.7 结果集排序(order)
3.2.7.1 单字段排序
根据某个字段升序或者降序排序所查询的数据
 排序关键字:
 asc 升序排序(默认)
 desc 降序排序
语法
select 字段名 from 表名 order by 字段名 排序关键字;
示例
 如查询users表所有数据,按照age字段升序排序
select * from users order by age asc;
3.2.7.2 多字段排序
根据多个字段升序或者降序排序所查询的数据
 语法
select 字段名 from 表名 order by 字段名1 排序关键字, 字段名2 排序关键字;
示例
 如查询users表数据,先按照age字段升序排序,(如果有age相同的数据)再按name字段降序排序
select * from users order by age asc, name desc;
3.2.7.3 限制排序
将查询的数据排序后限制数量展示
 语法
select 字段名 from 表名 order by 字段名 排序关键字 limit 数量;
示例
 如查看users表数据,根据age字段升序排序,输出前两条数据
select * from users order by age asc limit 2;
3.2.7.4 限制排序并选择区间(暂时未测通)
将查询的结果排序后限制数量,并选择区间来展示
 语法
select 字段名 from 表名 order by 字段名 排序关键字 limit 偏移量 数量;
示例
 如查询users表数据,根据age字段升序排序,从第三条数据后面(不包含第三条数据)取3条数据展示
select * from users order by age asc limit 3 3;
3.2 删除数据(delete)
使用delete删除数据
 语法
delete from 表名 where 条件;
示例
 如删除users表中name="杜甫"的数据
delete from users where name="杜甫";
3.3 更新数据(update)
使用update更新表数据
 语法
update 表名 set 字段名=字段值 where 条件;
可以同时更新多个字段的值
 语法2
update 表名 set 字段名1=字段值1, 字段名2=字段值2 where 条件;
示例
 如更新users表中name="西施"的数据,将其age值改为16
update users set age=16 where name="西施";
4. 字段或者说表结构(show、select、alter、drop、modify、change)
4.1 显示表中所有字段(列)
使用show columns展示表中的所有字段
 语法
show columns from 表名;
示例
 如展示users表的所有字段数据
show columns from users;
4.2 显示表中所有数据
在添加、修改或删除字段之前可以先查看表数据
 语法
select * from 表名;
4.3 添加字段(列)
通过alter和add添加新的表字段
 语法
alter table 表名 add 字段 类型;
示例1
 如在users表中添加height身高字段,类型为int
alter table users add height int;
示例2
 再如添加addr地址字段,类型为varchar,大小为255
alter table users add addr varchar(255);
示例3
 添加字段后该字段的值会变成NULL
 如果想使用默认值可以使用default定义默认值
 如下
alter table users add addr varchar(255) default "上海";
4.4 删除字段(列)
使用alter和drop删除
 语法
alter table 表名 drop column 字段;
示例
 如删除users表中height字段
alter table users drop column height;
4.5 修改字段类型
使用modify修改表字段
 语法
alter table 表名 modify 字段名 类型;
示例
 如修改users表中addr字段类型,由varchar改为text
alter table users modify addr text;
4.6 修改字段名和类型
使用change修改表字段名(这里需要注意,修改字段名时必须带上新字段的数据类型)
 语法
alter table 表名 change 原字段名 新字段名 类型;
示例
 如修改users表中addr字段,将其改为address,类型修改为varchar(255)
alter table users change addr address varchar(255);
如果想要只改名称,不改数据类型,则需要将原来的数据类型加上即可
5. 统计(sum、count、max、min、avg)
常用统计函数如下
5.1 sum求和
使用sum来获取某个字段统计的总和
 语法
select sum(字段名) as 别名 from 表名;
示例
 如统计users表中age字段的总和,将统计的总数使用别名allage表示
select sum(age) as allage from users;
5.2 count统计数量
使用count统计某个字段对应的数据条数
 语法
select count(字段名或者*) as 别名 from 表名;
示例
 如统计表中name的数据数量,别名为nameCount
select count(name) as nameCount from users;
以下name换成*结果相同
select count(*) as nameCount from users;
5.3 max最大值
使用max获取表中字段最大值
 语法
select max(字段名) as 别名 from 表名;
示例
 如获取users表中age最大的值
select max(age) as ageMax from users;
5.4 min最小值
使用min获取表中字段最小值
 语法
select min(字段名) as 别名 from 表名;
示例
 如获取users表中age最小的值
select min(age) as ageMin from users;
5.5 avg平均值
使用avg获取表中字段的平均值
 语法
select avg(字段名) as 别名 from 表名;
示例
 如获取users表中age字段的平均值
select avg(age) as ageAvg from users;
感谢阅读,祝君暴富!
版权声明:
- 作者:寒山李白
- 博客地址:https://hanshan.blog.csdn.net/
- 版权:本作品采用《创作共享许可证》进行许可,根据该许可授权的内容可在符合本许可证条款的前提下自由使用、、修改和创作衍生作品。
版权许可介绍:
 本文采用CC BY-NC-SA许可证
 此许可允许在使用者仅出于非商业目的以任何媒体或格式分发、重新混合、改编和构建材料,并且前提是注明创作者。如果您重新混合、改编或基于该材料进行构建,则必须按照相同的条款对修改后的材料进行许可。
更多信息请访问以下网址查看:
 版权官网 https://creativecommons.org/licenses/by-nc-sa/4.0/
 中文翻译 https://creativecommons.org/licenses/by-nc-sa/4.0/deed.zh-hans
相关文章:
MySQL入门(数据库、数据表、数据、字段的操作以及查询相关sql语法)
天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…...
kotlin的协程的基础概念
Kotlin的协程是一种用于简化异步编程的强大工具。 理解协程的基础概念可以帮助开发者有效地利用其能力。 以下是Kotlin协程的一些关键基础概念: 协程(Coroutines) : 协程是一种用于处理并发任务的编程模型,它可以在单…...
 
Spring--SpringMVC使用(接收和响应数据、RESTFul风格设计、其他扩展)
SpringMVC使用 二.SpringMVC接收数据2.1访问路径设置2.2接收参数1.param和json2.param接收数据3 路径 参数接收4.json参数接收 2.3接收cookie数据2.4接收请求头数据2.5原生api获取2.6共享域对象 三.SringMVC响应数据3.1返回json数据ResponseBodyRestController 3.2返回静态资源…...
 
隐藏php版本信息x-powered-by
在生产环境中,并不想让别人知道用的是什么版本的php,可以把x-powered-by隐藏掉 在nginx配置文件加上fastcgi_hide_header X-Powered-By; 如下图所示 配置修改后平滑重启nginx...
 
哈夫曼树(构建、编码、译码)(详细分析+C++代码实现)
D 哈夫曼树 题目要求 编写一个哈夫曼编码译码程序。针对一段文本,根据文本中字符出现频率构造哈夫曼树,给出每个字符的哈夫曼编码,并进行译码,计算编码前后文本大小。 为确保构建的哈夫曼树唯一,本题做如下限定&…...
 
C++ 二叉搜索树
目录 概念 性能分析 二叉搜索树的插入 二叉树的查找 二叉树的前序遍历 二叉搜索树的删除(重点) 完整代码 key与value的使用 概念 对于一个二叉搜索树 若它的左子树不为空,则左子树上所有的节点的值都小于等于根节点的值若它的右子树不为空…...
 
docker构建Java项目镜像常用的Java版本,国内私有仓库公网快速下载,解决从docker.io无法下载的问题
2015工作至今,10年资深全栈工程师,CTO,擅长带团队、攻克各种技术难题、研发各类软件产品,我的代码态度:代码虐我千百遍,我待代码如初恋,我的工作态度:极致,责任ÿ…...
低代码系统-氚云、简道云表单控件对比
组件对比 氚云 简道云 是否都有 1 单行文本 单行文本 ☑️ 2 多行文本 多行文本 ☑️ 3 日期 日期时间 ☑️ 4 数字 数字 ☑️ 5 单选框 单选按钮组 ☑️ 6 复选框 复选框组 ☑️ 7 下拉框 下拉框 ☑️ 8 附件 附件 ☑️ 9 图片 图片 ☑️ 10 地址 地…...
 
为什么IDEA提示不推荐@Autowired❓️如果使用@Resource呢❓️
前言 在使用 Spring 框架时,依赖注入(DI)是一个非常重要的概念。通过注解,我们可以方便地将类的实例注入到其他类中,提升开发效率。Autowired又是被大家最为熟知的方式,但很多开发者在使用 IntelliJ IDEA …...
 
Unity在WebGL中拍照和录视频
原工程地址https://github.com/eangulee/UnityWebGLRecoder Unity版本2018.3.6f1,有点年久失修了 https://github.com/xue-fei/Unity.WebGLRecorder 修改jslib适配了Unity2021 效果图 录制的视频 Unity在WebGL中拍照和录视频...
 
爬虫基础之爬取某站视频
目标网址:为了1/4螺口买小米SU7,开了一个月,它值吗?_哔哩哔哩_bilibili 本案例所使用到的模块 requests (发送HTTP请求)subprocess(执行系统命令)re (正则表达式操作)json (处理JSON数据) 需求分析: 视频的名称 F12 打开开发者工具 or 右击…...
 
mongoDB常见指令
即使我们自己开发用不到mongoDB,但是接手别人项目的时候,别人如果用了,我们也要会简单调试一下 虽然mongoDB用的不是sql语句,但语句的逻辑都是相似的,比如查看数据库、数据表,增删改查这些 我们下面以doc…...
 
人工智能之深度学习_[5]-神经网络优化学习率衰减优化正则化方法
文章目录 神经网络入门二3 神经网络优化方法3.1 梯度下降算法回顾3.2 反向传播(BP算法)3.2.1 反向传播概念3.2.2 反向传播详解 3.3 梯度下降优化方法3.3.1 指数加权平均3.3.2 动量算法Momentum3.3.3 AdaGrad3.3.4 RMSProp3.3.5 Adam3.3.6 小结 4 学习率衰…...
Oracle之Merge into函数使用
Merge into函数为Oracle 9i添加的语法,用来合并update和insert语句。所以也经常用于update语句的查询优化: 一、语法格式: merge into A using B on (A.a B.a) --注意on后面带括号,且不能更新join的字段 when matched then upd…...
深度解析:哪种心磁图技术是心脏检查的精准之选?
在全球心血管疾病的阴影日益笼罩的今天,医学界正积极寻求一种无损、无创、无辐射的心脏健康监测方式。心磁图仪(MCG),这一前沿技术,凭借其独特的优势,悄然成为心脏电磁功能监测的新星。它不仅为心肌缺血、心…...
 
SpringBoot--基本使用(配置、整合SpringMVC、Druid、Mybatis、基础特性)
这里写目录标题 一.介绍1.为什么依赖不需要写版本?2.启动器(Starter)是何方神圣?3.SpringBootApplication注解的功效?4.启动源码5.如何学好SpringBoot 二.SpringBoot3配置文件2.1属性配置文件使用2.2 YAML配置文件使用2.3 YAML配置文件使用2.…...
 
单片机-STM32 IIC通信(OLED屏幕)(十一)
一、屏幕的分类 1、LED屏幕: 由无数个发光的LED灯珠按照一定的顺序排列而成,当需要显示内容的时候,点亮相关的LED灯即可,市场占有率很高,主要是用于户外,广告屏幕,成本低。 LED屏是一种用发光…...
观察者模式 - 观察者模式的应用场景
引言 观察者模式(Observer Pattern)是设计模式中行为型模式的一种,它定义了对象之间的一对多依赖关系,使得当一个对象的状态发生改变时,所有依赖于它的对象都会自动收到通知并更新。观察者模式广泛应用于事件处理系统…...
 
【C++】详细讲解继承(下)
本篇来继续说说继承。上篇可移步至【C】详细讲解继承(上) 1.继承与友元 友元关系不能继承 ,也就是说基类友元不能访问派⽣类私有和保护成员。 class Student;//前置声明class Same //基类 { public:friend void Fun(const Same& p, con…...
 
消息队列篇--原理篇--Pulsar(Namespace,BookKeeper,类似Kafka甚至更好的消息队列)
Apache Pulusar是一个分布式、多租户、高性能的发布/订阅(Pub/Sub)消息系统,最初由Yahoo开发并开源。它结合了Kafka和传统消息队列的优点,提供高吞吐量、低延迟、强一致性和可扩展的消息传递能力,适用于大规模分布式系…...
Leetcode 3577. Count the Number of Computer Unlocking Permutations
Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接:3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯,要想要能够将所有的电脑解锁&#x…...
 
转转集团旗下首家二手多品类循环仓店“超级转转”开业
6月9日,国内领先的循环经济企业转转集团旗下首家二手多品类循环仓店“超级转转”正式开业。 转转集团创始人兼CEO黄炜、转转循环时尚发起人朱珠、转转集团COO兼红布林CEO胡伟琨、王府井集团副总裁祝捷等出席了开业剪彩仪式。 据「TMT星球」了解,“超级…...
css的定位(position)详解:相对定位 绝对定位 固定定位
在 CSS 中,元素的定位通过 position 属性控制,共有 5 种定位模式:static(静态定位)、relative(相对定位)、absolute(绝对定位)、fixed(固定定位)和…...
 
WordPress插件:AI多语言写作与智能配图、免费AI模型、SEO文章生成
厌倦手动写WordPress文章?AI自动生成,效率提升10倍! 支持多语言、自动配图、定时发布,让内容创作更轻松! AI内容生成 → 不想每天写文章?AI一键生成高质量内容!多语言支持 → 跨境电商必备&am…...
 
微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据
微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列,以便知晓哪些列包含有价值的数据,…...
 
Kafka入门-生产者
生产者 生产者发送流程: 延迟时间为0ms时,也就意味着每当有数据就会直接发送 异步发送API 异步发送和同步发送的不同在于:异步发送不需要等待结果,同步发送必须等待结果才能进行下一步发送。 普通异步发送 首先导入所需的k…...
C++.OpenGL (20/64)混合(Blending)
混合(Blending) 透明效果核心原理 #mermaid-svg-SWG0UzVfJms7Sm3e {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-icon{fill:#552222;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-text{fill…...
【Nginx】使用 Nginx+Lua 实现基于 IP 的访问频率限制
使用 NginxLua 实现基于 IP 的访问频率限制 在高并发场景下,限制某个 IP 的访问频率是非常重要的,可以有效防止恶意攻击或错误配置导致的服务宕机。以下是一个详细的实现方案,使用 Nginx 和 Lua 脚本结合 Redis 来实现基于 IP 的访问频率限制…...
深度剖析 DeepSeek 开源模型部署与应用:策略、权衡与未来走向
在人工智能技术呈指数级发展的当下,大模型已然成为推动各行业变革的核心驱动力。DeepSeek 开源模型以其卓越的性能和灵活的开源特性,吸引了众多企业与开发者的目光。如何高效且合理地部署与运用 DeepSeek 模型,成为释放其巨大潜力的关键所在&…...
全面解析数据库:从基础概念到前沿应用
在数字化时代,数据已成为企业和社会发展的核心资产,而数据库作为存储、管理和处理数据的关键工具,在各个领域发挥着举足轻重的作用。从电商平台的商品信息管理,到社交网络的用户数据存储,再到金融行业的交易记录处理&a…...
