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

PostgreSQL 与MySQL 对比使用

一、前言

       博主的系统既有 用到MySQL 也有用到PostgreSQL ,之所以用到这两种数据库,主要是现在都是国产替代,虽然说这两款数据库也不是国产的,但是相对开源,oracle是不让用了。所以现在使用比较多的就是这两个关系型数据库PostgreSQL 与MySQL。那么什么情况下选择PostgreSQL ,什么情况下选择 MySQL呢。说句实话在这两种数据库选型时,我们的系统没做选型,就按照以前的服务使用了什么数据库,后面项目的演进就选择什么数据库。实在没办法,在公司不是我一个人说的算,哈哈哈。本节对比PostgreSQL 与MySQL 的使用区别

二、PostgreSQL 与MySQL 对比区别

两种数据库的定义

1 、MySQL

MySQL 声称自己是最流行的开源数据库,它属于最流行的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。LAMP 中的 M 指的就是 MySQL。构建在 LAMP 上的应用都会使用 MySQL。MySQL 最初是由 MySQL AB 开发的,然后在 2008 年以 10 亿美金的价格卖给了 Sun 公司,Sun 公司又在 2010 年被 Oracle 收购。Oracle 收购导致 MySQL 的出现两个版本:商业版和社区版。对于后者,由于 Oracle 控制了 MySQL 的开发,受到了广大使用者的批评。

2、 PostgreSQL

PostgreSQL 标榜自己是世界上最先进的开源数据库,属于关系型数据库管理系统 (ORDBMS), 是以加州大学计算机系开发的 POSTGRES,4.2 版本为基础的对象关系型数据库管理系统, 最初是 1985 年在加利福尼亚大学伯克利分校开发的,作为 Ingres 数据库的后继。PostgreSQL 是完全由社区驱动的开源项目。它提供了单个完整功能的版本,而不像 MySQL 那样提供了多个不同的社区版、商业版与企业版。PostgreSQL 基于自由的 BSD/MIT 许可,组织可以使用、复制、修改和重新分发代码,只需要提供一个版权声明即可。

比较

相对于 Postgres MySQL 更简单, 所以有着更高的流行度, 在技术资料,以及技术组件支持上,支持的也更完善一些, 但不意味着它并不是不能替代的, 于笔者而言, MYSQL 更像用于中小企业、个人的一款数据库工具, 因为会的人多, 文档资料比较完善,所以入手难度低。但这些并不意味着 MYSQL 是最好的。

MySQL 适用的场景

MySQL 适用于简单的应用场景,如电子商务、博客、网站等, 大中小型系统均可以使用 MySQL, 它最高支持千万级别到数亿级别的数据量, 但是在高性能要求的情况下, 比如较快的响应和较高的吞吐量的时候, MySQL 的性能稍微捉襟见肘, 另外,在查询条件比较复杂、业务吞吐量要求不高,响应时长无要求,的时候,可以选择 MySQL,

Postgres SQL适用的场景

总的来说, Postgre SQL 更适合复杂的数据结构、高级应用和大规模数据集, 当然如果数据规模比较小, 也可以选择 Postgres SQL, 无论是什么场景,如果你想用 Postgres SQL, 总可以找到对应的解决方法, 有且仅有, 在查询条件比较复杂,的时候不太适用, 因为根据我们实际线上的业务表现是 Postgre SQL 可能会选错索引。

PostgreSQL 相对于 MySQL 的优势

  • Postgre SQL 在性能上远远好于 MYSQL, 通过上面的压测数据即可体现,无论是在耗时,还是在整体吞吐量上,有显著优势。

  • Postgre SQL 在单行更新上有明显优势,尤其是启用了 HOT UPDATE 后, 性能比 MYSQL 高了一个数量级。

  • 在 SQL 的标准实现上要比 MySQL 完善,而且功能实现比较严谨,比较学院化;

  • Postgre SQL 主表采用堆表存放,MySQL 采用索引组织表,能够支持比 MySQL 更大的数据量。

  • Postgre SQL 的主备复制属于物理复制,相对于 MySQL 基于 binlog 的逻辑复制,数据的一致性更加可靠,复制性能更高,对主机性能的影响也更小。

  • MySQL 的事务隔离级别 repeatable read 并不能阻止常见的并发更新,得加锁才可以,但悲观锁会影响性能,手动实现乐观锁又复杂。而 Postgre SQL 的列里有隐藏的乐观锁 version 字段,默认的 repeatable read 级别就能保证并发更新的正确性,并且又有乐观锁的性能。

三、postgreSQL常用语法

一、查询基础

1、连接数据库

C:\PostgreSQL\9.5\bin\psql.exe -U postgres -d shop

2、检查数据库连接是否成功   

SELECT 1;

3、创建数据库   

CREATE DATABASE shop;

4、退出数据库口令   

\q

5、\d 数据库 ——得到所有表的名字

6、\d 表名 —— 得到表结构

7、创建表

CREATE TABLE <表名>

(<列名1> <数据类型> <该列所需约束>,

<列名2> <数据类型> <该列所需约束>,

<列名3> <数据类型> <该列所需约束>,

<列名4> <数据类型> <该列所需约束>,

...

<该表的约束1>, <该表的约束2>,……);

8、删除表      

DROP TABLE <表名>;

9、修改表-添加列

ALTER TABLE <表名> ADD COLUMN <列的定义>;

    注:Oracle和SQL Server中不用写COLUMN: ALTER TABLE <表名> ADD <列名> ;

    oracle还可以这样:ALTER TABLE <表名> ADD (<列名>,<列名>,<列名>... );

10、修改表-删除列

ALTER TABLE <表名> DROP COLUMN <列名>;

11、插入数据   

BEGIN TRANSACTION;

INSERT INTO Product VALUES ('0001', 'T恤衫', '衣服', 1000, 500, '2009-09-20');

COMMIT;

注:在MySQL中运行时,BEGIN TRANSACTION改写成 START TRANSACTION;在Oracle和DB2中运行时,无需使用BEGIN TRANSACTION;

12、变更表名

ALTER TABLE Product RENAME TO Product;

13、查询语句

(1) 查询全部列

  Select  *  from  <表名>;

星号(*)代表全部列的意思。

(2) 查询指定列

SELECT <列名>,<列名>,…… FROM <表名>;

注:查询多列时,需要使用逗号进行分隔。查询结果中列的顺序和

SELECT 子句中的顺序相同

14、用AS为列设置别名

例:SELECT  product_id as id,

product_name as name,

purchase_price as price

FROM  product;

别名可用中文,但要用“”。

15、SELECT子句可以用常数

例:SELECT '商品' as string,'2019-12-12' as date,product_id,product_name from product;

注:此处用单引号‘’。

16、查询结果去重:distinct

例:select distinct product_type from product;

注:用distinct时null类型数据也会被作为一类数据;distinct也可以同时合并多列

17、WHERE子句添加查询筛选条件

例:select product_name,product_type from product where product_type='衣服';

18、注释的书写方式

1行注释:写在--后面

多行注释:写在/*  和  */之间

19、使用(+、-、*、/)运算符

例:select product_name,sale_price,sale_price * 2 as “sale_price_x2” from product;

20、使用比较运算符

(1) 含义

(2) 字符串类型的数据原则上按字典的顺序排序,不能与数字的大小顺序混淆,如’1-3‘<’2’

(3) 对null数据不能用比较运算符

用特定语句:is null /is not null

21、逻辑运算符

(1) NOT运算符:用来否定某一条件

例:select product_name ,sale_price from product where not sale_price >= 1000;

(2) AND运算符

其两侧条件需同步成立,相当于”并且“

例:select product_name,purchase_price from product where product_type = '厨 房用具' and sale_price >=3000;

(3) OR运算符

其两侧条件只需一个成立,相当于”或者“

例:select product_name,purchase_price from product where product_type = '厨房用具' or sale_price >=3000;

(4) 运用括号控制运算优先级

例:select product_name,product_type,regist_date from product where product_type = '办公用品' and (regist_date = '2009-09-11' or regist_date = '2009-09-20');

注:AND运算符优先于OR运算符,想要先执行OR语句可以用括号

二、聚合函数:多行汇集成一行

1、COUNT:计算表中的记录数(行数)

 例:select count(*) from product;

计算某列非空行:SELECT COUNT(purchase_price)  FROM Product;

2、SUM: 计算表中数值列中数据的合计值

例:select sum(sale_price) from product

3、AVG: 计算表中数值列中数据的平均值

例:select avg(sale_price) from product;

4、MAX: 求出表中任意列中数据的最大值

MIN: 求出表中任意列中数据的最小值

例:SELECT MAX(sale_price), MIN(purchase_price)  FROM Product;

5、使用聚合函数删除重复值

6、Group by子句

(1) 只能存在 常数、聚合函数group by子句中指定的列名

(2) group by子句中不能用别名

(3) Where 子句中不能用聚合函数

例:select product_type,count(*) from product group by product_type;

7、Haveing 子句 :取符合条件的组

8、Order by:排序

三、数据更新

1、Insert

2、Delete from 【表名】

3、Update

(1) 多列更新

① -- 使用逗号对列进行分隔排列

UPDATE Product

SET sale_price = sale_price * 10,

purchase_price = purchase_price / 2

WHERE product_type = '厨房用具';

② -- 将列用()括起来的清单形式

UPDATE Product

SET (sale_price, purchase_price) = (sale_price * 10, 

purchase_price / 2)

WHERE product_type = '厨房用具';

4、事务是需要在同一个处理单元中执行的一系列更新处理的集合。

(1) 语法:

① 事务开始语句

② DML语句1,DML语句2,......

③ 事务结束语句(commit或rollback)

(2) 开启事务语句:

① (SQLserver、postgreSQL)Begin transaction

② (MySQL) start transaction

(3) 提交事务--commit

(4) 取消处理--rollback

5、ACID特性:所有的DBMS都遵循四种特性

(1) 原子性atomicity

(2) 一致性consistency

(3) 隔离性isolation

(4) 持久性durability

四、复杂查询

1.创建视图 view:保存好的select语句

(1)语法:

CREATE VIEW 视图名称(<视图列名1>, <视图列名2>, ……)

AS

<SELECT语句>

(2)法则:尽量避免在视图的基础上创建视图,会降低sql效率

(3)法则:定义视图时不能使用order by 语句

(4)法则:部分情况可以对视图进行更新,如既没有聚合也没有结合的select语句

①视图设定为只读,因此需要on insert do instead规则

例:CREATE OR REPLACE RULE insert_rule

AS ON INSERT

TO ProductJim DO INSTEAD

INSERT INTO Product VALUES (

new.product_id,

new.product_name,

new.product_type,

new.sale_price,

new.purchase_price,

new.regist_date);

2.删除视图:drop view 【表名】

3.删除关联视图:DROP VIEW ProductSum CASCADE;

4.关联子查询:在子查询中添加条件

五、函数

1.ABS绝对值:ABS(数值)

2.Mod求余:mod(被除数,除数)

3.Round四舍五入:round(对象数值,保留小数位数)

4.|| 拼接:字符串1||字符串2

5.Length字符串长度:length(字符串)

6.lower小写转换:lower(字符串)

7.upper大写转换:upper(字符串)

8.replace字符串的替换:replace(对象字符串,替换前字符串,替换后字符串)

9.Substring(对象字符串 from 截取的起始位置 for 截取的字符数)

10.Current_date当前日期

11.Current_time当前时间

12.Current_timestamp当前日期和时间

13.Extract(日期元素 from 日期)

14.cast类型转换:cast(转换前的值 as 想要转换的数据类型

15.Coalesce讲null值转换为其他值:coalesce(数值1,数值2,数值3......)

16.like字符串部分一致查询(%代表“0字符以上任意字符串”)

17.Like+指定字符串查询:

select * from samplelike where strcol like ‘abc__’;

查询”abc+任意三个字符”的字符串

18.Between范围查询

19.Is null ,is not null判断是否为null

20.in谓语--or 的简便用法

21.Exists

22.case表达式

语法:case when <求值表达式> then <表达式>

When <求值表达式> then <表达式>

When <求值表达式> then <表达式>

...

Else <>

          End

六、集合运算

1.Union表的加法

2.Union all包含重复行

3.Except记录的减法(Oracle中使用minus

4.Inner join内联结

5.Outer join外联结

6.Cross join 交叉联结

七、SQL高级处理

1.窗口函数

(1)语法:<窗口函数> OVER ([PARTITION BY <列清单>]  

ORDER BY <排序用列清单>)

PARTITION BY:能够设定排序的对象范围

ORDER BY:能够指定按照哪一列、何种顺序排序

(2)Rank函数:排序时,如存在相同位次的记录会跳过之后的位次(1,1,1,4)

(3)Dense_rank函数:排序时,如果存在相同位次,不会跳过(1,1,2,3)

(4)Row_number函数:赋予唯一连续位次

2.聚合函数作为窗口函数

(1)Sum函数:此处与纯聚合函数不一样,此处为累计

(2)Avg函数:计算移动平均

①Rows 2 preseding:(移动平均:截止到之前2行)

②Rows 2 following :(移动平均:截止到之后2行)

3.Grouping运算符

(1)Rollup同时得出合算和小计

(2)Grouping让null更加容易分辨

(3)Cube用数据搭积木

(4)Grouping sets取得期望的积木

(5)   可以从rollup或者cube的结果中取出部分记录

八、应用程序连接数据库

驱动:可以从网上下载(PostgreSQL JDBC Driver :https://jdbc.postgresql.org/download.html)

(1)ODBC:open database connectivity

(2)JDBC:java database connectivity

(3)C:\PostgreSQL\java\jdk\bin\java -cp D:\soft\PostgreSQL\jdbc\*;. DBConnect1

相关文章:

PostgreSQL 与MySQL 对比使用

一、前言 博主的系统既有 用到MySQL 也有用到PostgreSQL &#xff0c;之所以用到这两种数据库&#xff0c;主要是现在都是国产替代&#xff0c;虽然说这两款数据库也不是国产的&#xff0c;但是相对开源&#xff0c;oracle是不让用了。所以现在使用比较多的就是这两个关系型数据…...

配置nginx代理访问openai接口

环境&#xff1a; 阿里云硅谷地区服务器&#xff0c;ubuntu22 操作步骤 1.安装nginx apt install nginx2.编辑文件/etc/nginx/sites-enabled/default&#xff0c;内容替换如下 server {listen 80;location / {proxy_pass https://api.openai.com;proxy_set_header Host api.…...

使用Python语言实现一个基于动态数组的序列队列

一、动态数组的实现 首先&#xff0c;我们需要创建一个DynamicArray类&#xff0c;该类将管理我们的动态数组。 动态数组能够动态地调整其大小&#xff0c;以容纳更多的元素。 目录 一、动态数组的实现 代码示例&#xff1a; 二、序列队列的实现 接下来&#xff0c;我…...

面试数据库篇(mysql)- 07索引创建原则与失效及优化

索引创建原则 1). 针对于数据量较大,且查询比较频繁的表建立索引。 2). 针对于常作为查询条件(where)、排序(order by)、分组(group by)操作的字段建立索引。 3). 尽量选择区分度高的列作为索引,尽量建立唯一索引,区分度越高,使用索引的效率越高。 4). 如果是字符…...

《互联网的世界》第三讲-tcp

dns 找到了地址&#xff0c;spf 确定了路径&#xff0c;如何运输数据呢&#xff1f;今天讲 tcp。 计算机网络领域的特定技术是最后当你干这个事时才要用的&#xff0c;我对孩子们这样说&#xff0c;实际上你可以随便看一个快递单子来理解端到端传输协议。 源地址&#xff0c…...

JOSEF约瑟 JZS-7G-42 AC220V静态可调延时中间继电器 端子式导轨安装15ms-10s

系列型号&#xff1a;JZS-7G-57端子排延时中间继电器&#xff1b;JZS-7G-42X端子排延时中间继电器&#xff1b;JZS-7G-22X端子排延时中间继电器&#xff1b;JZS-7G-21端子排延时中间继电器&#xff1b;JZS-7G-41端子排延时中间继电器&#xff1b;JZS-7G-51端子排延时中间继电器…...

Hudi配置参数优化

1&#xff09;Commits&#xff1a;表示一批记录原子性的写入到一张表中。 2&#xff09;Cleans:清除表中不再需要的旧版本文件。 3&#xff09;Delta_commit:增量提交指的是将一批记录原子地写入MergeOnRead类型表&#xff0c;其中一些/所有数据都可以写入增量日志。 4&…...

适用Java SpringBoot项目的分布式锁

在分布式系统中&#xff0c;常用到分布式锁&#xff0c;它有多中实现方式&#xff0c;如&#xff1a;基于redis&#xff0c;database&#xff0c;zookeeper等。Spring integration组件有这三种服务的分布式锁实现&#xff0c;今天来看看用的比较多的redis和database实现方式。 …...

面试笔记系列二之java基础+集合知识点整理及常见面试题

目录 Java面向对象有哪些特征&#xff0c;如何应用 Java基本数据类型及所占字节 Java中重写和重载有哪些区别 jdk1.8的新特性有哪些 内部类 1. 成员内部类&#xff08;Member Inner Class&#xff09;&#xff1a; 2. 静态内部类&#xff08;Static Nested Class&#…...

搭建LNMP环境并搭建论坛和博客

目录 一、LNMP架构原理 二、编译安装Nginx 三、编译安装MySQL 四、编译安装PHP 五、配置Nginx支持PHP解析 六、安装论坛 七、安装博客 一、LNMP架构原理 LNMP架构&#xff0c;是指在Linux平台下&#xff0c;由运行Nginx的web服务器&#xff0c;运行PHP的动态页面解析程序…...

蓝桥杯刷题2

1. 修建灌木 import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scan new Scanner(System.in);int n scan.nextInt();for (int i 1;i < n1;i){int distance Math.max(i-1,n-i);System.out.println(distance*2);}scan.close…...

低代码与国产化部署:软件开发的未来趋势与应用实践

在数字化时代&#xff0c;软件开发已经成为企业创新和竞争力提升的关键。随着我国科技实力的不断提升&#xff0c;国产化部署逐渐成为软件开发领域的重要趋势。与此同时&#xff0c;低代码技术的发展也为国产化部署提供了新的机遇。本文将探讨如何在软件开发过程中充分发挥两者…...

【Python笔记-设计模式】迭代器模式

一、说明 迭代器模式是一种行为设计模式&#xff0c;让你能在不暴露集合底层表现形式&#xff08;列表、栈和树等&#xff09;的情况下遍历集合中所有的元素。 (一) 解决问题 遍历聚合对象中的元素&#xff0c;而不需要暴露该对象的内部表示 (二) 使用场景 需要对聚合对象…...

Linux基本指令(上)

在Linux中&#xff0c;将文件夹称为目录&#xff0c;后面的内容都与目录相关。 1. ls指令 语法&#xff1a; ls [选项][目录或文件] 功能&#xff1a;对于目录&#xff0c;该命令列出该目录下的所有子目录与文件。对于文件&#xff0c;将列出文件名以及其他信息。 常用选项 …...

浅谈XSS简单漏洞xss-labs-master(初级)

一、环境以及xss漏洞简介 网上很多gethub自己下就行 XSS简介&#xff1a; 当用户访问被XSS注入的网页&#xff0c;XSS代码就会被提取出来。用户浏览器就会解析这段XSS代码&#xff0c;也就是说用户被攻击了。 用户最简单的动作就是使用浏览器上网&#xff0c;并且浏览器中有J…...

WordPress分类目录ID怎么看?如何查找WordPress标签ID?

在WordPress网站中&#xff0c;我们需要判断某篇文章是否属于某个分类目录&#xff0c;或者是否拥有某个标签&#xff0c;那么就需要用到分类目录ID和标签ID&#xff0c;那么WordPress分类目录ID怎么看&#xff1f;如何查找WordPress标签ID&#xff1f;下面boke112百科就跟大家…...

达梦数据库基础操作(一):用户操作

达梦数据库基础操作(一)&#xff1a;用户操作 1 达梦运行状态 SELECT banner as 版本信息 FROM v$version;1.2 达梦版本号 SELECT banner as 版本信息 FROM v$version;1.3 用户相关操作 默认用户名密码&#xff1a;SYSDBA/SYSDBA 注意&#xff1a;在哪个数据库下创建的用户…...

Java进阶(锁)——锁的升级,synchronized与lock锁区别

目录 引出Java中锁升级synchronized与lock锁区别 缓存三兄弟&#xff1a;缓存击穿、穿透、雪崩缓存击穿缓存穿透缓存雪崩 总结 引出 Java进阶&#xff08;锁&#xff09;——锁的升级&#xff0c;synchronized与lock锁区别 Java中锁升级 看一段代码&#xff1a; public class…...

Flask+Gunicorn中文乱码解决方案

在使用FlaskGunicorn部署应用时&#xff0c;发现中文的输出存在乱码的现象。这是因为Python的默认编码是ASCII&#xff0c;而ASCII并不支持中文字符。 解决Python中文乱码问题的首要任务是确保使用合适的编码方式。当你处理中文字符时&#xff0c;应该使用UTF-8编码。UTF-8是一…...

vue3的开发小技巧

「总之岁月漫长&#xff0c;然而值得等待。」 目录 父组件调用子组件函数 父组件调用子组件函数 ref, defineExpose //父组件 代码 <child ref"ch">this.$refs.ch.fn();//子组件 函数抛出 const fn () > { }; defineExpose({ fn });...

【网络】每天掌握一个Linux命令 - iftop

在Linux系统中&#xff0c;iftop是网络管理的得力助手&#xff0c;能实时监控网络流量、连接情况等&#xff0c;帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...

深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录

ASP.NET Core 是一个跨平台的开源框架&#xff0c;用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录&#xff0c;以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...

【Oracle APEX开发小技巧12】

有如下需求&#xff1a; 有一个问题反馈页面&#xff0c;要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据&#xff0c;方便管理员及时处理反馈。 我的方法&#xff1a;直接将逻辑写在SQL中&#xff0c;这样可以直接在页面展示 完整代码&#xff1a; SELECTSF.FE…...

在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能

下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能&#xff0c;包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...

深入理解JavaScript设计模式之单例模式

目录 什么是单例模式为什么需要单例模式常见应用场景包括 单例模式实现透明单例模式实现不透明单例模式用代理实现单例模式javaScript中的单例模式使用命名空间使用闭包封装私有变量 惰性单例通用的惰性单例 结语 什么是单例模式 单例模式&#xff08;Singleton Pattern&#…...

重启Eureka集群中的节点,对已经注册的服务有什么影响

先看答案&#xff0c;如果正确地操作&#xff0c;重启Eureka集群中的节点&#xff0c;对已经注册的服务影响非常小&#xff0c;甚至可以做到无感知。 但如果操作不当&#xff0c;可能会引发短暂的服务发现问题。 下面我们从Eureka的核心工作原理来详细分析这个问题。 Eureka的…...

GitHub 趋势日报 (2025年06月06日)

&#x1f4ca; 由 TrendForge 系统生成 | &#x1f310; https://trendforge.devlive.org/ &#x1f310; 本日报中的项目描述已自动翻译为中文 &#x1f4c8; 今日获星趋势图 今日获星趋势图 590 cognee 551 onlook 399 project-based-learning 348 build-your-own-x 320 ne…...

代码规范和架构【立芯理论一】(2025.06.08)

1、代码规范的目标 代码简洁精炼、美观&#xff0c;可持续性好高效率高复用&#xff0c;可移植性好高内聚&#xff0c;低耦合没有冗余规范性&#xff0c;代码有规可循&#xff0c;可以看出自己当时的思考过程特殊排版&#xff0c;特殊语法&#xff0c;特殊指令&#xff0c;必须…...

Xela矩阵三轴触觉传感器的工作原理解析与应用场景

Xela矩阵三轴触觉传感器通过先进技术模拟人类触觉感知&#xff0c;帮助设备实现精确的力测量与位移监测。其核心功能基于磁性三维力测量与空间位移测量&#xff0c;能够捕捉多维触觉信息。该传感器的设计不仅提升了触觉感知的精度&#xff0c;还为机器人、医疗设备和制造业的智…...

命令行关闭Windows防火墙

命令行关闭Windows防火墙 引言一、防火墙:被低估的"智能安检员"二、优先尝试!90%问题无需关闭防火墙方案1:程序白名单(解决软件误拦截)方案2:开放特定端口(解决网游/开发端口不通)三、命令行极速关闭方案方法一:PowerShell(推荐Win10/11)​方法二:CMD命令…...