简介

SQL*Loader(SQLLDR)是Oracle的高速批量数据加载工具。这是一个非常有用的工具,可用于多种平面文件格式向Oralce数据库中加载数据。SQLLDR可以在极短的时间内加载数量庞大的数据。它有两种操作模式。
传统路径:(conventional path):SQLLDR会利用SQL插入为我们加载数据。
直接路径(direct path):采用这种模式,SQLLDR不使用SQL;而是直接格式化数据库块。
利用直接路径加载,你能从一个平面文件读数据,并将其直接写至格式化的数据库块,而绕过整个SQL引擎和undo生成,同时还可能避开redo生成。要在一个没有任何数据的数据库中充分加载数据,最快的方法就是采用并行直接路径加载。
要使用SQLLDR,需要有一个控制文件(control file)。 控制文件中包含描述输入数据的信息(如输入数据的布局、数据类型等),另外还包含有关目标表的信息。控制文件甚至还可以包含要加载的数据。
注:简介部分来着百度,如有侵权请联系删除

简单样例一

建表:
create table WCG_LDR_TEST
(
v_id NUMBER(18),
v_name VARCHAR2(4000),
v_text VARCHAR2(4000),
v_date DATE,
v_test VARCHAR2(64)
);
建立控制文件wcg_ldr_test.ctl:
load data
INFILE *
insert
CONCATENATE 4
into table wcg_ldr_test
(
v_id position (1:2) integer external,
v_name position (3:6) char “upper(:v_name)”,
v_text position (7:10) char
)
BEGINDATA
123456789ABCDEFG
34sdkajsyuebcjuhgduabcj

执行:sqlldr userid=wcg/123456 control=wcg_ldr_test.ctl
#数据库去查询表wcg_ldr_test就已经有数据装载进入

语法说明:

load data
INFILE *
/*
1> INFILE *:代表导入的数据在当前控制文件中,BEGINDATA关键字换行后面的就是导入的数据。换句话说如果导入的数据在控制文件中,关键字BEGINDATA是必须的
2> 如果想把导入的数据放到单独的文件,则把INFILE 换成 INFILE ‘文件路径/impdata.dat’,impdata为自定义的文件名,dat为特定的文件类型

*/

insert
/*
1> insert为关键字,要装载的表必须是空的
2> replace为关键字,先删除表在装载。在使用replace开始作业时看到进度一直不动是因为正在删除装载表的数据
3> append为关键字,在原来的基础上添加
/
CONCATENATE 4
/

1> CONCATENATE 4 :CONCATENATE能把文件中的行合并,4代表四个物理行合并成一个逻辑行。这个关键字不是必加的,不加时默认一行是一个记录。
加的话必须在insert、replace、append后面
2> CONTINUEIF this (8:8) = ‘8’ #代表每个物理行的第八个字节如果等于8时,就把下一行和当前行合并成一个物理行,
如果下一行的第八位依然是8,则会是3个物理行合并成一个逻辑行.合并后用于比较的字符不会体现在合并的行中,例如本例中第八个字符8会被移除
3> CONTINUEIF last =‘j’ #代表每个物理行的最后一个字符是j时就会把下一个物理行和当前行合并成一个逻辑行,字符j依然会体现,不会像CONTINUEIF this中被移除
4> CONCATENATE 和 CONTINUEIF都不是必须参数,建议不要使用,他们会影响sqlloader的执行速度,因为当前这两个参数会导致sqlloader进行额外的扫描
/
into table wcg_ldr_test
/

如果此处加入以下可选参数说明:
#trailing nullcols:数据文件中没有,但是控制文件中有的列,这些列通过该语句置null
/
(
v_id position (1:2) integer external,
v_name position (3:6) char “upper(:v_name)”,
v_text position (7:10) char
/

1> 这部分是数据文件和数据库字段的映射,以上例子中v_id、v_name、v_text都是数据库的表字段
2> position 是关键字
3> 类似于(1:2)是说取逻辑行的第一到第二个字符
4> integer external、char是取值的数据类型,和数据库的对应字段的数据类型关联,
支持的数据类型有:INTEGER(n) --二进制整数,其中n可以是1 2 4或8、SMALLINT、CHAR、INTEGER EXTERNAL、FLOAT EXTERNAL 、DECIMAL EXTERNAL
5> position 是指定数据的位置,当然也可以使用分隔符TERMINATED BY ','说明以逗号为分隔,使用的映射例子如:
v_id terminated by ‘,’,
v_name terminated by ‘,’,
v_text terminated by ‘,’
然也可以使用全局设置,例如下insert 表名后面使用FIELDS TERMINATED BY ‘,’
注:TERMINATED BY WHITESPACE 说明以空格为分隔符
6> 还有一个可选参数optionally enclosed by '"'它数据文件的对于字段是由双引号括括起来的,数据导入时不用导入双引号
(因为Oracle的数据导出字符串类型默认都加了双引号),例如一行数据12,“34” ,如果你不加optionally enclosed by ‘"’ 那么导入数据库存储就是"34",
两边的双引号也被当成了内容。可以和terminated by在同一个地方使用,例子如下:
v_id terminated by ‘,’,
v_name terminated by ‘,’ optionally enclosed by ‘"’,
v_text terminated by ‘,’
*/
7> 现实使用时能使用position确定字段位置时尽量使用。因为TERMINATED BY 会要寻找分隔符而进行多余的扫描,效率也会有响应降低
8> 在数据装载时也可以使用函数,例如上面的upper(:v_name)
9> 映射字段如果不想从数据文件中获取,ldr还支持自动生成:
常量值例子:v_textconstant “wcg” #那么生成的每一行v_text字段值都是wcg
表达式值:由SQL操作符或者plsql函数生成,例如:v_text expression “TO_CHAR(sysdate,‘yyyymmddhh24miss’)” #expression时关键字
系统日期例子:v_date sysdate
序列值例子:v_id sequence(max,1)
行数号记录值例子:v_id recnum #recnum为关键字
获取数据库用户:v_name “USER” #把数据库用户填充到v_name字段,例如我的数据库执行用户是wcg,填充到v_name就是wcg 注:USER必须使用双引号括起来,不区分大小写
)
BEGINDATA
123456789ABCDEFG
34sdkajsyuebcjuhgduabcj

关键字说明(这些关键参数主要按分类来说的话主要在参数文件中):
#userid:户名跟着要操作的数据库用户名和密码
#control:用户指定执行时使用的控制文件
#data:如果数据文件是单独的文件(不是直接在控制文件跟在BEGINDATA),data用于指定读取的数据文件。使用例子:data=‘wcg_ldr_test.dat’(数据文件后缀名统一为dat)
#bindsize:为指定一次处理的数组大小。一般要处理的数据都很大,那么ldr就会分批处理。bindsize就是定义一次处理的最大字节。例子:bindsize=512000
#rows:它的功能和bindsize一样。它是从行上进行单次处理数据的限制。如果两个都配置,ldr会去较小的那个。使用例子:rows=6400
#dirrct:direct=true时,sqlloader使用直接路径的方法装载,为false时是使用传统的方法进行加载。默认是false
#errors:允许的错误的数目(默认 50),例子:errors=99
#load:要加载的逻辑记录的数目(全部默认),就是可以用来限定处理的数据的条数,例子:load=10000
#log:指定的日志文件,例子:log=’/home/wcg_ldr_test.log’
#bad:指定用来记录那些装载失败数据的文件,例如你有100条数据需要装载,成功99条,失败了1条。失败的这条需要一个文件来记录。如果不指定的话sql
loader会
生成一个和控制文件同名的文件来记录。我们俗称这类文件为坏文件,后缀名为bad,例子:bad=’/home/wcg/wcg_ldr_test.bad’
#silent:隐藏运行过程中屏幕上显示的消息,all是所有信息都不显示
#parallel:是否运行并行加载,默认为false,例子:parallel=true
#resumable:当装载遇到错误时是否运行程序挂起,例如表空间不足时,是否运行程序挂起等待问题处理。和ddl操作时锁等待功能是否开启类似
#resumable_name:为上一个参数resumable指定一个名词。默认为用户名、会话id和实例ID的组合,只有resumable=true时有用
#resumable_timeout:resumable参数的超时时间,只有resumable=true时有用。默认7200秒
#skip:装载开始的行数,在我们装载过程中有可能中途出现意外停止了。下次继续装载时可以使用skip跳过我们装载过的内容,例子:skip=99999

涉及文件说明:
1>后缀名ctl – 控制文件名
2>后缀名log – 日志文件名
3>后缀名bad – 错误文件名(外部文件中不符合终止要求,不入库的数据)
4>后缀名dat – 数据文件名
5>后缀名dsc – 废弃文件名(也就是不符合where条件内容的数据,装载可以加where条件的)

sql*loader调用方式:

1> 直接命令调用:sqlldr userid=wcg/123456 control=wcg_ldr_test.ctl log=wcg_ldr_test.log …
这样调用的话在参数较多的情况下比较混乱,而且命令的数据字数系统也是有一定限制的
2>使用参数文件par,例如建立一个参数文件wcg_ldr_test.par 在文件里面定义:
userid=wcg/123456
control=wcg_ldr_test.ctl
log=wcg_ldr_test.log

然后使用sqlldr parfile=wcg_ldr_test.par来执行。这是比较建议的方式,可视性比较强
3> 如果我们为了确保密码的安全性,不想在配置文件中写userid。那么可以使用命令时不填写userid,类似sqlldr control=wcg_ldr_test.ctl
然后系统会提示手动输入的

直接装载和传统装载

传统装载方法使用SQL insert 语句将数据插入到表中,一次插入一个绑定数组大小的数据。直接装载不使用sql insert语句将数据装载到表中,而是格式化Oracle数据块,然后再直接把
它们写入数据文件。这种直接写入的过程省去直接装载表的SQL语句的大量开销。因为直接路径装载方法不争夺数据库资源,所以比传统数据装载快得多。对于量更大的数据装载
,用直接装载方法更好,而且在传统装载所需时间超过要求时,它是唯一的方法。

对比这两种加载方式的区别:
直接装载
1>数据绕过SGA直接写入磁盘的数据文件。
2>数据直接写入高水位线HWM之后的新块,不会扫描HWM之前的空闲块。
3>不对已用空间进行扫描。
4>通过设置UNRECOVERABLE=Y参数,直接装载中可规避写重做信息
5>适用OLAP在线分析场景,增删改不频繁的场景。
6>直接装载不会触发触发器、外部键和检查约束。但是唯一、主键和非空约束还是保留的
受到的限制:
1>不能装载正在使用的群表
2>不能同时装载父表和子表
3>不能装载VARRAY或BFILE列
4>不能在正在异构平台上使用Oracle Net执行装载
5>装载过程中不是使用函数

传统加载特点
1>数据先加载 -> SGA -> 磁盘的数据文件。
2>会扫描高水位线HWM之前的数据块,如果有空闲块(碎片经常DML导致)就会利用,如果没有再插入新块。
3>高水位线HWM之前的数据块是放在SGA区的。
4>会产生redo log和undo数据。
5>安全性高,可恢复数据。
6>传统加载与SQL语句insert插入没区别。

直接装载选项:
direct:如果要是用直接装载,则这个参数必须为direct=true
data_cache:这个参数设置时可以做到相同时间缓存的作用,例如设置data_cache=1000,那么它们缓存1000个装载的日期或者时间戳。
那么缓存的这些时间数据就不用重复装换,因为我们装载常常涉及时间转换(ps:这个参数我没验过,使用的话自己验证一下)
rows:用于限定装载文件的数量,例如:rows=10000,那么它便只会装载10000条
unrecoverable:用户限定重做日志的最小化产生,例如:unrecoverable=true
skip_index_maintenance:用户决定在装载时是否同时维护索引,默认值为false,当为true时便不会维护索引
sorted_indexes:用户决定数据在装载时按某个索引的排序进行装载(ps:传闻这个参数的设置能提升装载的性能,没测过)
columnarrayrows:用户限定单次装载的数组大小,例如:columnarrayrows=10000,那么它一次装载10000条。也就相当于单次事务的大小
streamsize:设置缓存流的大小,单位是字节
multithreading:设置是否开启并行处理,默认为true开启

样例一:装载数据时使用when字句过滤数据

建表:
create table WCG_LDR_TEST
(
v_id NUMBER(18),
v_name VARCHAR2(4000),
v_text VARCHAR2(4000),
v_date DATE,
v_test VARCHAR2(64)
);

控制文件wcg_ldr_test.ctl(测试阶段为了尽量减少工作,就没有使用参数文件,而且只配置了一些主要参数,其他都使用缺省的):
load data
INFILE *
DISCARDFILE test.dsc

insert
into table wcg_ldr_test
when v_test != ‘12’
(
v_test position(1:2) char,
v_id recnum,
v_name constant “wcg”,
v_text expression “TO_CHAR(sysdate,‘yyyymmddhh24miss’)”,
v_date sysdate
)
BEGINDATA
a12,“34”,56789,ABCDEFG834sdkajsyuebcjuhgduabcj
12,dn,fjk8nc,iojdno1111j
34,qdw,qcerve,vbrgbj

执行命令:
sqlldr wcg/123456 control=wcg_ldr_test.ctl #wcg/123456 为数据库用户名/登录密码

结果:
SQL> select * from wcg_ldr_test;

V_ID V_NAME V_TEXT V_DATE V_TEST


1 wcg       20211026083145         2021/10/26/  a1
3 wcg       20211026083145         2021/10/26/  34

#如控制文件中when v_test != '12’筛选所示,装载的结果只有两条,v_test为’12’的数据被排除了

样例二:将长度大于255字节的数据装载到某个字段

如果在做字段映射时使用char,那么就会报Field in data file exceeds maximum length,
即使映射对于的数据库表字段是varchar2(4000),那么我们在在写控制文件中的映射时就需要使用char(1000)代替,这个1000是自定义的,符合你要装载内容大小就行
建表:
create table WCG_LDR_TEST
(
v_id NUMBER(18),
v_name VARCHAR2(4000),
v_text VARCHAR2(4000),
v_date DATE,
v_test VARCHAR2(64)
);
控制文件:
load data
INFILE *
DISCARDFILE test.dsc

insert
into table wcg_ldr_test
FIELDS TERMINATED BY ‘,’
(
v_id integer external,
v_name char,
v_text char,
v_test char(1000)
)
BEGINDATA
312,“34”,56789,ABCDEFG834sdkajsyuebcjuhgduabcjABCDEFG834sdkajsyuebcjuhgduabcjABCDEFG834sdkajsyuebcjuhgduabcjABCDEFG834sdkajsyuebcjuhgduabcjABCDEFG834sdkajsyuebcjuhgduabcjABCDEFG834sdkajsyuebcjuhgduabcjBCDEFG834sdkajsyuebcjuhgduabcjABCDEFG834sdkajsyuebcjuhgduabcj12w1reregergfwef
12,dn,fjk8nc,iojdno1111j
34,qdw,qcerve,vbrgbj

#如果v_test char(1000)不是这样定义映射,而是直接v_test char则会报Field in data file exceeds maximum length。对应的行就会装载失败

样例三:将表数据装载到ASCII文件

Oracle用户下建立一个sql文件,名称自定义,例如:wcg_test.sql 然后把如下内容复制到sql文件中(select部分自定义),然后登录Oracle用户执行
SET TERMOUT OFF
SET PAGESIZE 0
SET ECHO OFF
SET FEED OFF
SET HEAD OFF
SET LINESIZE 100
COLUMN v_id FORMAT 999,999
COLUMN v_name FORMAT a15
COLUMN v_text FORMAT a25
SPOOL test.txt
select v_id,v_name,v_text from wcg_ldr_test;
SPOOL OFF

注:
SET TERMOUT:显示脚本中的命令的执行结果,缺省为on
SET ECHO:设置运行命令是否显示语句,缺省为on
SET FEED:回显本次sql命令处理的记录条数,缺省为on
SET HEAD:
SET LINESIZE :输出一行字符个数,缺省为80
set pagesize:输出每页行数,缺省为24,为了避免分页,可设定为0
set trimout:去除标准输出每行的拖尾空格,缺省为off
FORMAT a15:设置列宽为15,但是不能这样设置数字类型,数字类型要如第一个。具体可以搜关键字"oracle 格式化输出"

样例四:UTL_FILE写文件简单样例

UTL_FILE是oracle提供的一个标准的工具包,用来读写文件使用
使用
创建directory目录:create or replace directory wcg_test_dir as ’ /home/oracle ’ ;
#/home/oracle可以是任意Oracle属主的目录,当前directory创建后,后期就可以使用该directory下的文件与数据库进行交互
#wcg_test_dir 为自定义的一个名词

授权:grant read,write on directory wcg_test_dir to wcg;
#wcg为需要对wcg_test_dir这个directory操作的用户
操作模式:

‘r’:读文件(文本),一定要保证有该文件,不然会报UTL_FILE.INVALID_PATH异常
‘w’:写文件(文本),没有该文件的话会自动添加;有的话会覆盖
‘a’:追加文件(文本),如果文件不存在,则会以write模式创建此文件
->带有’b’后缀的为使用byte(字节)模式,BLOB与VARCHAR2不一样,BLOB打开时一定要用带有’b’后,例如rb、wb、ab

declare
file utl_file.file_type;
begin
file:= utl_file.fopen(‘HOME_ORACLE_DIR’,‘abc.txt’,‘a’);
utl_file.put_line( file , ’ I am writing to file ’ );
utl_file.fclose( file );
end ;
/

样例五:同时往两个表插入数据

建表:
create table WCG_LDR_TEST01
(
v_id NUMBER(18),
v_name VARCHAR2(4000),
v_text VARCHAR2(4000),
v_date DATE,
v_test VARCHAR2(64)
);

create table WCG_LDR_TEST
(
v_id NUMBER(18),
v_name VARCHAR2(4000),
v_text VARCHAR2(4000),
v_date DATE,
v_test VARCHAR2(64)
);

控制文件wcg_ldr_test.ctl:
load data
INFILE ‘wcg_ldr_test.dat’
DISCARDFILE test.dsc

insert
into table wcg_ldr_test
when v_name = ‘12’
(
v_name position(1:2) char
)
into table wcg_ldr_test01
when v_name = ‘12’
(
v_name position(1:2) char
)

数据文件wcg_ldr_test.dat:
312,“34”,56789,ABCDEFG834sdkajsyuebcjuhgduabcjABCDEFG834sdkajsyuebcjuhgduabcjABCDEFG834sdkajsyuebcjuhgduabcjABCDEFG834sdkajsyuebcjuhgduabcjABCDEFG834sdkajsyuebcjuhgduabcjABCDEFG834sdkajsyuebcjuhgduabcjBCDEFG834sdkajsyuebcjuhgduabcjABCDEFG834sdkajsyuebcjuhgduabcj12w1
12,dn,fjk8nc,iojdno1111j
34,qdw,qcerve,vbrgbj

执行命令:sqlldr userid=wcg/123456 control=wcg_ldr_test.ctl
#如果是使用position这样的位置来获取数据是可以使用上面的例子,但是映射时使用分隔符来获取,那么从第二张表开始就必须加上filler position(1),
它注明开始的行数。控制文件wcg_ldr_test.ctl如下:
load data
INFILE ‘wcg_ldr_test.dat’
DISCARDFILE test.dsc

insert
into table wcg_ldr_test
when v_name = ‘dn’
fields terminated ‘,’
(
v_id integer external,
v_name char,
v_text char,
v_test char(1000)
)
into table wcg_ldr_test01
when v_name = ‘dn’
fields terminated ‘,’
(
v_id filler position(1) integer external,
v_name char,
v_text char,
v_test char(1000)
)

样例六:参数文件、控制文件、数据文件结合使用的例子

建表:
create table WCG_LDR_TEST
(
v_id NUMBER(18),
v_name VARCHAR2(4000),
v_text VARCHAR2(4000),
v_date DATE,
v_test VARCHAR2(64)
);
数据文件wcg_ldr_test.dat:
312,“34”,56789,ABCDEFG834sdkajsyuebcjuhgduabcjABCDEFG834sdkajsyuebcjuhgduabcjABCDEFG834sdkajsyuebcjuhgduabcjABCDEFG834sdkajsyuebcjuhgduabcjABCDEFG834sdkajsyuebcjuhgduabcjABCDEFG834sdkajsyuebcjuhgduabcjBCDEFG834sdkajsyuebcjuhgduabcjABCDEFG834sdkajsyuebcjuhgduabcj12w1reregergfwef
12,dn,fjk8nc,iojdno1111j
34,qdw,qcerve,vbrgbj

控制文件wcg_ldr_test.ctl:
load data
DISCARDFILE test.dsc

insert
into table wcg_ldr_test
fields terminated ‘,’
(
v_id integer external,
v_name char,
v_text char,
v_test char(1000)
)

参数文件wcg_ldr_test.par:
userid=wcg/123456
control=wcg_ldr_test.ctl
log=wcg_ldr_test.log
errors=99
data=wcg_ldr_test.dat
bindsize=512000
silent=all
parallel=false

执行:
sqlldr parfile=wcg_ldr_test.par

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

相关文章

  1. 单臂路由出现的问题及排错过程

    要求,在R1上划分子接口并配相应网关,实现PC间互通 过程, 路由器间配置接口配置trunk口并允许相应vlan通过,链接终端使用接口使用access,并划分到对应vlan,在R1上配置对应子接口及网关 遇到问题&#xff0…...

    2024/4/15 19:28:02
  2. 第五章 数据的清洗与检验

    一、完全去重 1、打开kettle工具,新建转换 2、配置“csv文件输入”控件 3、配置“唯一行(哈希值)”控件 4、运行 二、填充缺失值 1、打开kettle工具,创建转换 2、配置“文本文件输入”控件 3、配置“过滤记录”控件 4、配置“替…...

    2024/4/18 17:40:27
  3. 普歌+IDEA中Tomcat的工件配置错误

    IDEA中Tomcat工件部署错误: java.lang.ClassNotFoundException 对于错误的认识查找Tomcat中工件的部署错误解决如何放到正确的位置以上的解决方法就可以帮助你解决所存的问题了。如果还没有解决,那么就需要继续寻找属于你错误的答案了。对于错误的认识 …...

    2024/4/5 7:38:44
  4. 2021/10/30CTF爆破小结ctfshow

    burp suite设置 Authorization: Basic YWRtaW46MTIz解密的admin:123 设置为散弹模式 改为解密后的 payload set1 suffix意思是后缀 payload set2 开始爆破 子域名爆破 子域名查询网站https://phpinfo.me/domain 伪随机数爆破 程序下载地址https://www.openwall.com/ph…...

    2024/4/18 17:38:44
  5. Semtech公司lora芯片官方驱动下载链接

    semtech各个Lora产品官方驱动仓库链接如下: SX1272/73, SX1276/77/78/79, SX1261/2 and LR1110 radio drivers. 注:sx1268的驱动也可以用sx1261/2的改改,这两个芯片差不多 另外一个官方驱动代码链接如下: Semtech官方代码 注&a…...

    2024/4/20 11:01:04
  6. 等保2.0

    http://www.rising.com.cn/2019/db2/#_Toc12535289...

    2024/4/17 6:36:44
  7. Semtech公司lora芯片官方驱动

    semtech各个Lora产品官方驱动仓库链接如下: SX1272/73, SX1276/77/78/79, SX1261/2 and LR1110 radio drivers. 注:sx1268的驱动也可以用sx1261/2的改改,这两个芯片差不多 另外一个官方驱动代码链接如下: Semtech官方代码 注&a…...

    2024/4/18 17:39:20
  8. 未来人工智能,有什么新的发展趋势?

    AI芯片包含三大类市场,分别是数据中心(云端)、通信终端产品(手机)、特定应用产品(自驾车、头戴式AR/VR、无人机、机器人……)。目前来看,未来AI发展有八大新趋势。 趋势一&#xff1…...

    2024/4/6 10:27:39
  9. SpringCloud-Config学习笔记

    1.创建git仓库&#xff0c;上传一个配置文件{application}-{profile}.yml 2.创建config-server项目工程&#xff0c;作为配置中心 <dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-…...

    2024/4/20 15:14:04
  10. python socket

    python socket 服务端 import sockets socket.socket(socket.AF_INET,socket.SOCK_STREAM)# 套接字类型AF_INET, socket.SOCK_STREAM tcp协议&#xff0c;基于流式的协议 s.bind((127.0.0.1, 8080)) s.listen(1) # 最多可以连接多少个客户端 output 我是服务端 while 1:pr…...

    2024/4/18 14:59:49
  11. vue组件数据传递

    1、父传子 参考官网 &#xff08;1&#xff09;使用props传递 &#xff08;2&#xff09;prop说明(参考props )&#xff0c;类型&#xff1a;&#xff1a;①数组&#xff0c;数组里面是变量名字符串 ②对象&#xff0c;对象的key是变量名&#xff0c;value是变量的约束条件 &a…...

    2024/4/15 19:25:11
  12. Semtech公司lora芯片官方代码

    semtech各个Lora产品官方驱动仓库链接如下&#xff1a; SX1272/73, SX1276/77/78/79, SX1261/2 and LR1110 radio drivers. 注&#xff1a;sx1268的驱动也可以用sx1261/2的改改&#xff0c;这两个芯片差不多 另外一个官方驱动代码链接如下&#xff1a; Semtech官方代码 注&a…...

    2024/4/15 20:50:57
  13. MSP430 5xx/6xx系列 低频振荡器VLO编程实例(源码+电路)

    MSP430 5xx/6xx系列内部VLO提供10 kHz的典型频率(参数见芯片的特定数据表),无需晶体。VLO为不需要精确时基的应用提供了一个低成本的超低功耗时钟源。 本实例示范如何使用VLO,并将其作为ACLK SMLK MCLK时钟来使用,通过将此三个时钟输出到特定的管脚,便于示波器测量验证。…...

    2024/4/6 10:27:34
  14. spring的注解使用

    Spring的注解可以替代.xml文件。 1.Component生成类对象 &#xff08;1&#xff09;项目架构 定义一个Student类&#xff1a; 配置文件&#xff1a; 注意&#xff1a; 测试运行&#xff1a; 注意&#xff1a;Component还可以写为"Component(“myStudent”)“或者”Co…...

    2024/4/6 10:27:33
  15. 记录一下 homebrew 安装PHP7.4 报错

    记录一下 homebrew 安装PHP7.4 报错&#xff1a; 问题描述&#xff1a; 提示&#xff1a;mac 自带的 php7.3 已经不能满足我的日常开发环境&#xff0c;需要更新到PHP7.4。但是在安装的时候报错了。查了半天才发现问题&#xff0c;所以就记录一下。 //报错信息 > Pouring…...

    2024/4/18 17:38:44
  16. javabean的标准

    ...

    2024/4/15 20:35:44
  17. 3n+1问题(C++)

    题目&#xff1a; 猜想&#xff1a;对于任意大于1的自然数n&#xff0c;若n为奇数&#xff0c;则将n变为3n1&#xff0c;否则变为n的一般一半。 经过若干次这样的变换。 例如&#xff1a;3->10->5->16->8->4->2->1 输入n&#xff0c;输出变换次数。n&…...

    2024/4/18 13:06:54
  18. JS-集合、字典和散列表

    集合 集合是一组无须且唯一不能重复的项组成的&#xff0c;可以看成没有顺序概念、重复元素的数组 class Set {constructor() {this.items {}}has(element){return element in this.items}has_2(element){//hasOwnProperty该方法返回一个表明对象是否具有该属性的方法return…...

    2024/4/20 12:44:50
  19. Java 手写一个可重入锁(带注释)

    手写一个可重入锁 package com.example.test.juc;import java.util.*; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.locks.Condition; import java.util.concurrent.locks.Lock; import java.util…...

    2024/4/15 19:25:11
  20. 汇编语言 王爽 第四版 第六章 检测点6.1

    汇编语言 王爽 第四版 课后检测点 课后实验 持续更新~~ 检测点6.1 1 下面的程序实现依次用内存0:0~0:15单元中的内容改写程序中的数据&#xff0c;完成程序&#xff1a; assume cs:codesg codesg segment dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h;ip为0,2,4,6,…...

    2024/4/17 18:18:53

最新文章

  1. APP UI设计秉承哪些原则可以开发出更好的用户体验?

    设计一个优秀的APP UI需要考虑多方面因素&#xff0c;以下是一些原则可以帮助你开发出更好的用户体验&#xff1a; 简洁性&#xff08;Simplicity&#xff09;&#xff1a;保持界面简洁清晰&#xff0c;避免过多的复杂元素和信息。简洁的设计能够减少用户的认知负荷&#xff0c…...

    2024/4/27 22:03:26
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. 《前端防坑》- JS基础 - 你觉得typeof nullValue === null 么?

    问题 JS原始类型有6种Undefined, Null, Number, String, Boolean, Symbol共6种。 在对原始类型使用typeof进行判断时, typeof stringValue string typeof numberValue number 如果一个变量(nullValue)的值为null&#xff0c;那么typeof nullValue "?" const u …...

    2024/4/25 5:18:48
  4. 手机无线投屏到windows11电脑

    1 安装无线投影组件 2 电脑端打开允许其他设备投影的开关 3 手机找到投屏选项 4 手机搜索可用设备连接即可 这里的官方文档给的不太好,给了一些让人眼花撩乱的信息,以下是经过整合的有效信息...

    2024/4/26 12:46:48
  5. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/4/26 18:09:39
  6. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/4/26 20:12:18
  7. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/4/26 23:05:52
  8. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/4/27 4:00:35
  9. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/4/27 17:58:04
  10. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/4/27 14:22:49
  11. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/4/26 21:56:58
  12. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/4/27 9:01:45
  13. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/4/27 17:59:30
  14. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/4/25 18:39:16
  15. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/4/25 18:39:16
  16. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/4/26 19:03:37
  17. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/4/26 22:01:59
  18. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/4/25 18:39:14
  19. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/4/26 23:04:58
  20. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/4/25 2:10:52
  21. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/4/25 18:39:00
  22. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/4/26 19:46:12
  23. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/4/27 11:43:08
  24. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/4/27 8:32:30
  25. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  26. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  27. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  28. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  29. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  30. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  31. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  32. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  33. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  34. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  35. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  36. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  37. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  38. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  39. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  40. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  41. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  42. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  43. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  44. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57