- 【自学笔记】Oracle基础知识点总览-持续更新
Long_poem
笔记oracle数据库
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录Oracle数据库基础知识点总览1.数据库安装与配置2.SQL基础3.PL/SQL基础4.数据库管理5.高级主题总结Oracle数据库基础知识点总览1.数据库安装与配置安装Oracle数据库:下载Oracle安装包,按照向导进行安装。配置监听器:使用netca工具配置监听器,确保客户端可以连接到数据库。创建数据库:使用dbca
- CentOS Stream 8 安装Oracle 19C (静默模式)
3301_
centosstrreamlinuxOracle19Coraclecentos数据库
CentOSStream8安装Oracle19C(静默模式)1.提前准备工作说明:必须严格遵守用户规则去创建目录,否则会导致缺少目录权限进而影响安装!安装以下软件包最新版本(注意:如果打算使用32位客户端应用程序访问64位服务器,则还必须安装(如果可用)此表中列出的包的最新32位版本。)[root@Test2CentOSStream8~]#dnfinstallbcbinutilselfutils-
- Docker部署常见应用之Oracle数据库
weixin_44585288
Docker数据库dockeroracle
文章目录安装部署参考文章安装部署使用Docker安装Oracle数据库是一个相对简便的过程,可以避免在本地环境中直接安装Oracle数据库的复杂性。安装Docker环境:确保你的系统上已经安装了Docker,并且Docker服务正在运行。具体的安装方法可以根据你的操作系统查找相应的Docker安装指南。Centos安装可以参考Docker和Docker-Compose安装。获取Oracle镜像:使
- jdbc连接数据库步骤oracle,jdbc连接oracle数据库的步骤
weixin_39726044
使用E-MapReduce集群sqoop组件同步云外Oracle数据库数据到集群hiveE-MapReduce集群sqoop组件可以同步数据库的数据到集群里,不同的数据库源网络配置有一些差异网络配置。最常用的场景是从rdsmysql同步数据,最近也有用户询问如何同步云外专有Oracle数据库数据到hive。云外专有数据库需要集群所有节点通过公网访问,要创建VPC网络,使用VPC网络...文章鸿初2
- oracle生成ddl语句,oracle导出DDL
杰克小号
oracle生成ddl语句
dbms_metadata.get_ddl[@more@]dbms_metadata.get_ddl1.得到一个表或索引的ddl语句SELECTDBMS_METADATA.GET_DDL('TABLE','DEPT','SCOTT')FROMDUAL;selectdbms_metadata.get_ddl('INDEX','PK_DEPT','SCOTT')fromdual;2.得到一个用户下的所
- oracle数据库只导出索引,oracle数据库全库的导出导入实战手册
Lorraine张
oracle数据库只导出索引
Oracle数据库导入导出(expdp/impdb)1、全库导出(expdp参考shell脚本)#!/bin/bash#导入环境变量source/home/oracle/.bash_profileexportORACLE_BASE=/u01/app/oracleexportORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1/exportPATH=$PAT
- oracle批量生成索引,ORACLE迁移时批量导出索引、存储过程,表结构等
张口袋
oracle批量生成索引
[toc]ORACLE迁移中的一些经验(一)批量导出sequence批量导出squence在网上找到这样一条语句:select'createsequence'||sequence_name||'minvalue'||min_value||'maxvalue'||max_value||'startwith'||last_number||'incrementby'||increment_by||(ca
- oracle怎么只导出索引,oracle存储过程导出索引
故事后来都变了
oracle怎么只导出索引
oracle存储过程导出索引1、首先要建立一个directorycreateorreplacedirectoryDIR_DUMPas'd:/index';2、执行过程,在路径'd:/index'下有index.txt文件为导出所有索引的创建语句。createorreplaceprocedureindex_frameistypeindex_name_typeistableofuser_indexes
- 【oracle19c静默安装RAC】
sqlboy-yuzhenc
DBAORACLEoracle数据库
目录安装规划软件规划虚拟机规划主机信息网络规划硬盘规划ASM磁盘组Oracle规划用户组和用户软件目录规划整体数据库安装规划虚拟机准备操作系统安装yum源配置openfiler安装安装前准备配置host文件(rac1和rac2)关闭防火墙(rac1和rac2)关闭Selinux(rac1和rac2)安装依赖包(rac1和rac2)修改内核参数(rac1和rac2)配置资源限制参数(rac1和rac
- 【Oracle11g SQL详解】INSERT INTO 的用法及插入数据注意事项
m0_74823715
面试学习路线阿里巴巴sql数据库
INSERTINTO的用法及插入数据注意事项在Oracle11g中,INSERTINTO语句用于向表中插入数据,是数据写入操作中最常用的SQL语句之一。本文将详细介绍INSERTINTO的基本语法、常见场景、注意事项及常见错误处理。一、INSERTINTO的基本语法INSERTINTO支持两种基本用法:指定列插入(推荐,明确指定列名,有助于维护性)。完整插入(省略列名,插入所有列的值)。1.指定列
- 轻松连接MySQL与Oracle:Spoon(Kettle)配置指南
黄豪宙
轻松连接MySQL与Oracle:Spoon(Kettle)配置指南项目地址:https://gitcode.com/Resource-Bundle-Collection/3c3aa项目介绍在数据处理和ETL(Extract,Transform,Load)领域,Spoon(Kettle)是一款功能强大的开源工具,广泛应用于数据集成和数据转换任务。然而,对于许多用户来说,配置Spoon(Kettle
- 【在Oracle Linux 7 上安装Oracle 19c - 基于ASM存储的单实例数据库】
AllanHwang
Oracleoracle数据库linux
在OracleLinux7上安装Oracle19c-基于ASM存储的单实例数据库前言环境环境准备阶段配置主机名、网络等安装ORACLE先决条件的软件包修改系统参数安装阶段下载软件安装GRID安装ORACLEDBCA建库使用阶段ASM的启动和暂停自动启停手动启停前言记录Oracle学习过程,形成自己的知识体系。目前有部分操作还不清楚具体原理,后期随着学习的深入,逐渐完善本文档。环境系统:Oracle
- 错误:ORA-01034: ORACLE不可用ORA-27101:共享内存域不存在
走到哪,爬到哪
oraleoracle数据库database
出现原因出现的原因有多种,我出现的原因是,登录oracle后,非正常退出,比如直接关闭窗口。解决方法在虚拟机命令窗口输入sqlplus/assysdba启动oraclestartup
- 同时导出Oracle,PostgreSQL库中相同的表位CSV后调用Beyond Compare脚本对比
[.]*?
oraclepostgresql数据库
##同时导出Oracle,PostgreSQL库中相同的表位CSV后调用BeyondCompare脚本对比把Oracle库里的表移行至PostgreSQL后,需要确保数据一致性,1.把表数据以CSV形式分别导出至\out\old\out\new2.通过cmd命令调用BeyondCompare4附加脚本(BeyondCompare支持使用命令行调用其脚本功能),参数生成对比结果报告D:\Progra
- Oracle v$sql 视图详解
SHIZHK
数据库Oracle
SQL_TEXT:SQL文本的前1000个字符SHARABLE_MEM:占用的共享内存大小(单位:byte)PERSISTENT_MEM:生命期内的固定内存大小(单位:byte)RUNTIME_MEM:执行期内的固定内存大小SORTS:完成的排序数LOADED_VERSIONS:显示上下文堆是否载入,1是0否OPEN_VERSIONS:显示子游标是否被锁,1是0否USERS_OPENING:执行语
- 【云原生进阶之数据库技术】第二章-Oracle-使用-3.4.2-Oracle Active Data Guard调优
江中散人
云原生进阶-数据库专栏云原生进阶-PaaS专栏数据库云原生oracleADG数据库调优
1OracleActiveDataGuard调优1.1调优策略OracleActiveDataGuard(ADG)调优涉及多个层面,旨在确保备用数据库在提供实时查询服务的同时,维持高效的数据同步与良好的系统性能。为了确保ADG环境的高性能和可靠性,需要进行适当的调优。以下是一些关键的调优领域和建议:1.网络连接与日志传输优化:带宽与延迟:确保主备数据库之间的网络连接具有足够的带宽和低延迟,以减少日
- 数据库学习笔记一
Ziguangkkk
数据库数据库学习笔记
数据库基础概念数据库定义:数据库(DataBase)是专门用于存储数据的仓库,可类比为数据的“存放地”。数据库分类:分为关系型数据库和非关系型数据库。关系型数据库中表与表之间存在关联关系,所有关系型数据库需遵循1999年制定的SQL标准,语法上90%相似,10%为各自“方言”;非关系型数据库中表相互独立,无统一标准,不同数据库语法各异。主流关系型数据库介绍Oracle数据库:由美国甲骨文公司开发,
- Oracle 12CR2 中alert.log出现大量的 WARNING: too many parse errors 告警
weixin_34007886
数据库运维
Oracle12CR2中alert.log出现大量的WARNING:toomanyparseerrors告警日志如下:2018-06-24T17:16:21.024586+08:00WARNING:toomanyparseerrors,count=3800SQLhash=0x03b77f5bPARSEERROR:ospid=6223,error=1031forstatement:2018-06-2
- oracle+mybatis批量插入数据
崔lc
javamybatisjavaspringbootspring后端
使用oracle+mybatis进行批量添加数据,并且id是传参并不是自增。表user_info有以下两个字段:u_idvarchar,u_namevarchardao层:packagetest.dao;importjava.util.List;importorg.apache.ibatis.annotations.Param;importtest.entity.UserInfo;importtk
- rman 备份恢复1
Dav_2099
oracle备份恢复oracle
前提:rman用户必须具有sysdba权限使用常用连接方式如下:rmantarget/rmantargetsys/oraclermantargetsys/oracle@prod1catalogdav/oracle@dav_db一个rman连接会产生两个进程,action字段为空的就是rman的监控进程,另一个是主会话。selectsid,serial#,module,actionfromv$ses
- 利用数据库特性和函数一次性生成多条动态数据
那片海还在吗
test数据库
利用数据库特性和函数一次性生成多条动态数据在数据库操作中,有时需要一次性生成多条动态数据,以满足测试、初始化等需求。不同的数据库系统提供了各自的特性和函数来实现这一目的。以下将分别介绍MySQL、Oracle和SQLServer中实现一次性生成多条动态数据的方法。一、MySQL1.1使用INSERTINTO...SELECT结合自增序列和随机函数示例场景假设要向users表(包含id、userna
- Java 新手宝典(带案例)
浪九天
Javajavajvm
一、入门基础1.环境搭建JDK安装访问Oracle或OpenJDK官方网站,根据自己的操作系统(Windows、Linux、MacOS)下载合适的JDK版本。安装过程中按照提示操作,注意记住安装路径。环境变量配置Windows:在系统环境变量中配置JAVA_HOME(指向JDK安装目录)、PATH(添加%JAVA_HOME%\bin)和CLASSPATH(可设置为.表示当前目录)。Linux/Ma
- Java 17新特性解析:为什么你应该尽快升级?
吴晓斌kobe
Java学习java开发语言java17
Java17是继Java11之后的长期支持(LTS)版本,于2021年9月发布。作为LTS版本,Java17将获得长期的技术支持和安全更新,因此对于企业和开发者来说,升级到Java17是一个重要的决策。以下是Java17的一些关键新特性以及为什么你应该尽快升级的原因:1.长期支持(LTS)长期支持:Java17是一个LTS版本,Oracle将提供至少8年的支持,直到2029年。这意味着你可以获得长
- python pandas 读取数据库_Python+Pandas 获取数据库并加入DataFrame的实例
weixin_39955149
pythonpandas读取数据库
Python+Pandas获取数据库并加入DataFrame的实例实例如下所示:importpandasaspdimportsysimportimpimp.reload(sys)fromsqlalchemyimportcreate_engineimportcx_Oracledb=cx_Oracle.connect('userid','password','10.10.1.10:1521/dbins
- python导出结果_Python连接Oracle数据查询导出结果
weixin_39712821
python导出结果
python连接oracle,需用用到模块cx_oracle,可以直接pip安装,如网络不好,可下载离线后本地安装本人由于工作需要,期望便捷查询所得结果,且固定输出某个格式具体代码如下:#!coding:utf-8importcx_Oracleconn=cx_Oracle.connect('username/password@IP/连接名')cur=conn.cursor()cur.execute
- python把oracle的查询结果导出为insert语句
优游的鱼
oraclepython数据库开发语言
可以使用cx_Oracle库在Python中连接Oracle数据库并执行查询。然后,可以使用pandas库将查询结果读取为DataFrame,并使用to_sql()方法将其导出为insert语句。示例代码如下:importcx_Oracleimportpandasaspd#ConnecttoOracledatabaseconn=cx_Oracle.connect('username/passwor
- 记一次从mysql数据迁移到oralce (基于python和pandas)
qq_36532060
mysqloraclepandaspython
记一次从mysql数据迁移到oralce(基于python)前景提要具体实现创建数据库链接读取mysql数据写入orcale结语前景提要公司最近有个从mysql迁移数据到oracle的需求,于是进行了一下方案调研和分析,但作为一个之前从没接触过Oracle的人真的感到好难,但再难也难上,这篇文章主要是记录一下做这件事时遇到的坑以及分享一下最终的方案及代码。具体实现创建数据库链接其实我觉得这个算是最
- python实现从oracle数据库查询数据生成excel透视表发送outlook
niceme!
python
#-*-coding:utf-8-*-#http://pypi.cq.pegatroncorp.com/simple--trusted-hostpypi.cq.pegatroncorp.comimportchardetimportdatetimeimporttimeimportxlwtimportwin32com.clientaswin32fromwin32com.clientimportcons
- 使用Python导出Oracle数据库数据表目录
SeanData
Python数据分析pythonoracle数据目录导出
###Oracle数据库数据表目录导出###导入包importpandasaspdimportcx_Oracle###数据库信息username='xxx'password='yyy'ipaddr='100.28.60.132'port='1521'service_name='service_name'connect_string=ipaddr+":"+port+"/"+service_name#
- 非关系型数据库和关系型数据库的区别
纠结哥_Shrek
数据库nosql
非关系型数据库(NoSQL)和关系型数据库(SQL)的主要区别体现在以下几个方面:数据模型:关系型数据库(SQL):数据以表格形式存储,数据行和列组成,每个表都有固定的模式(Schema)。常见的关系型数据库有MySQL、PostgreSQL、Oracle等。非关系型数据库(NoSQL):数据没有固定的模式,存储方式更加灵活。可以是键值对、文档、列族、图等形式。常见的非关系型数据库有MongoDB
- Algorithm
香水浓
javaAlgorithm
冒泡排序
public static void sort(Integer[] param) {
for (int i = param.length - 1; i > 0; i--) {
for (int j = 0; j < i; j++) {
int current = param[j];
int next = param[j + 1];
- mongoDB 复杂查询表达式
开窍的石头
mongodb
1:count
Pg: db.user.find().count();
统计多少条数据
2:不等于$ne
Pg: db.user.find({_id:{$ne:3}},{name:1,sex:1,_id:0});
查询id不等于3的数据。
3:大于$gt $gte(大于等于)
&n
- Jboss Java heap space异常解决方法, jboss OutOfMemoryError : PermGen space
0624chenhong
jvmjboss
转自
http://blog.csdn.net/zou274/article/details/5552630
解决办法:
window->preferences->java->installed jres->edit jre
把default vm arguments 的参数设为-Xms64m -Xmx512m
----------------
- 文件上传 下载 解析 相对路径
不懂事的小屁孩
文件上传
有点坑吧,弄这么一个简单的东西弄了一天多,身边还有大神指导着,网上各种百度着。
下面总结一下遇到的问题:
文件上传,在页面上传的时候,不要想着去操作绝对路径,浏览器会对客户端的信息进行保护,避免用户信息收到攻击。
在上传图片,或者文件时,使用form表单来操作。
前台通过form表单传输一个流到后台,而不是ajax传递参数到后台,代码如下:
<form action=&
- 怎么实现qq空间批量点赞
换个号韩国红果果
qq
纯粹为了好玩!!
逻辑很简单
1 打开浏览器console;输入以下代码。
先上添加赞的代码
var tools={};
//添加所有赞
function init(){
document.body.scrollTop=10000;
setTimeout(function(){document.body.scrollTop=0;},2000);//加
- 判断是否为中文
灵静志远
中文
方法一:
public class Zhidao {
public static void main(String args[]) {
String s = "sdf灭礌 kjl d{';\fdsjlk是";
int n=0;
for(int i=0; i<s.length(); i++) {
n = (int)s.charAt(i);
if((
- 一个电话面试后总结
a-john
面试
今天,接了一个电话面试,对于还是初学者的我来说,紧张了半天。
面试的问题分了层次,对于一类问题,由简到难。自己觉得回答不好的地方作了一下总结:
在谈到集合类的时候,举几个常用的集合类,想都没想,直接说了list,map。
然后对list和map分别举几个类型:
list方面:ArrayList,LinkedList。在谈到他们的区别时,愣住了
- MSSQL中Escape转义的使用
aijuans
MSSQL
IF OBJECT_ID('tempdb..#ABC') is not null
drop table tempdb..#ABC
create table #ABC
(
PATHNAME NVARCHAR(50)
)
insert into #ABC
SELECT N'/ABCDEFGHI'
UNION ALL SELECT N'/ABCDGAFGASASSDFA'
UNION ALL
- 一个简单的存储过程
asialee
mysql存储过程构造数据批量插入
今天要批量的生成一批测试数据,其中中间有部分数据是变化的,本来想写个程序来生成的,后来想到存储过程就可以搞定,所以随手写了一个,记录在此:
DELIMITER $$
DROP PROCEDURE IF EXISTS inse
- annot convert from HomeFragment_1 to Fragment
百合不是茶
android导包错误
创建了几个类继承Fragment, 需要将创建的类存储在ArrayList<Fragment>中; 出现不能将new 出来的对象放到队列中,原因很简单;
创建类时引入包是:import android.app.Fragment;
创建队列和对象时使用的包是:import android.support.v4.ap
- Weblogic10两种修改端口的方法
bijian1013
weblogic端口号配置管理config.xml
一.进入控制台进行修改 1.进入控制台: http://127.0.0.1:7001/console 2.展开左边树菜单 域结构->环境->服务器-->点击AdminServer(管理) &
- mysql 操作指令
征客丶
mysql
一、连接mysql
进入 mysql 的安装目录;
$ bin/mysql -p [host IP 如果是登录本地的mysql 可以不写 -p 直接 -u] -u [userName] -p
输入密码,回车,接连;
二、权限操作[如果你很了解mysql数据库后,你可以直接去修改系统表,然后用 mysql> flush privileges; 指令让权限生效]
1、赋权
mys
- 【Hive一】Hive入门
bit1129
hive
Hive安装与配置
Hive的运行需要依赖于Hadoop,因此需要首先安装Hadoop2.5.2,并且Hive的启动前需要首先启动Hadoop。
Hive安装和配置的步骤
1. 从如下地址下载Hive0.14.0
http://mirror.bit.edu.cn/apache/hive/
2.解压hive,在系统变
- ajax 三种提交请求的方法
BlueSkator
Ajaxjqery
1、ajax 提交请求
$.ajax({
type:"post",
url : "${ctx}/front/Hotel/getAllHotelByAjax.do",
dataType : "json",
success : function(result) {
try {
for(v
- mongodb开发环境下的搭建入门
braveCS
运维
linux下安装mongodb
1)官网下载mongodb-linux-x86_64-rhel62-3.0.4.gz
2)linux 解压
gzip -d mongodb-linux-x86_64-rhel62-3.0.4.gz;
mv mongodb-linux-x86_64-rhel62-3.0.4 mongodb-linux-x86_64-rhel62-
- 编程之美-最短摘要的生成
bylijinnan
java数据结构算法编程之美
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
public class ShortestAbstract {
/**
* 编程之美 最短摘要的生成
* 扫描过程始终保持一个[pBegin,pEnd]的range,初始化确保[pBegin,pEnd]的ran
- json数据解析及typeof
chengxuyuancsdn
jstypeofjson解析
// json格式
var people='{"authors": [{"firstName": "AAA","lastName": "BBB"},'
+' {"firstName": "CCC&
- 流程系统设计的层次和目标
comsci
设计模式数据结构sql框架脚本
流程系统设计的层次和目标
 
- RMAN List和report 命令
daizj
oraclelistreportrman
LIST 命令
使用RMAN LIST 命令显示有关资料档案库中记录的备份集、代理副本和映像副本的
信息。使用此命令可列出:
• RMAN 资料档案库中状态不是AVAILABLE 的备份和副本
• 可用的且可以用于还原操作的数据文件备份和副本
• 备份集和副本,其中包含指定数据文件列表或指定表空间的备份
• 包含指定名称或范围的所有归档日志备份的备份集和副本
• 由标记、完成时间、可
- 二叉树:红黑树
dieslrae
二叉树
红黑树是一种自平衡的二叉树,它的查找,插入,删除操作时间复杂度皆为O(logN),不会出现普通二叉搜索树在最差情况时时间复杂度会变为O(N)的问题.
红黑树必须遵循红黑规则,规则如下
1、每个节点不是红就是黑。 2、根总是黑的 &
- C语言homework3,7个小题目的代码
dcj3sjt126com
c
1、打印100以内的所有奇数。
# include <stdio.h>
int main(void)
{
int i;
for (i=1; i<=100; i++)
{
if (i%2 != 0)
printf("%d ", i);
}
return 0;
}
2、从键盘上输入10个整数,
- 自定义按钮, 图片在上, 文字在下, 居中显示
dcj3sjt126com
自定义
#import <UIKit/UIKit.h>
@interface MyButton : UIButton
-(void)setFrame:(CGRect)frame ImageName:(NSString*)imageName Target:(id)target Action:(SEL)action Title:(NSString*)title Font:(CGFloa
- MySQL查询语句练习题,测试足够用了
flyvszhb
sqlmysql
http://blog.sina.com.cn/s/blog_767d65530101861c.html
1.创建student和score表
CREATE TABLE student (
id INT(10) NOT NULL UNIQUE PRIMARY KEY ,
name VARCHAR
- 转:MyBatis Generator 详解
happyqing
mybatis
MyBatis Generator 详解
http://blog.csdn.net/isea533/article/details/42102297
MyBatis Generator详解
http://git.oschina.net/free/Mybatis_Utils/blob/master/MybatisGeneator/MybatisGeneator.
- 让程序员少走弯路的14个忠告
jingjing0907
工作计划学习
无论是谁,在刚进入某个领域之时,有再大的雄心壮志也敌不过眼前的迷茫:不知道应该怎么做,不知道应该做什么。下面是一名软件开发人员所学到的经验,希望能对大家有所帮助
1.不要害怕在工作中学习。
只要有电脑,就可以通过电子阅读器阅读报纸和大多数书籍。如果你只是做好自己的本职工作以及分配的任务,那是学不到很多东西的。如果你盲目地要求更多的工作,也是不可能提升自己的。放
- nginx和NetScaler区别
流浪鱼
nginx
NetScaler是一个完整的包含操作系统和应用交付功能的产品,Nginx并不包含操作系统,在处理连接方面,需要依赖于操作系统,所以在并发连接数方面和防DoS攻击方面,Nginx不具备优势。
2.易用性方面差别也比较大。Nginx对管理员的水平要求比较高,参数比较多,不确定性给运营带来隐患。在NetScaler常见的配置如健康检查,HA等,在Nginx上的配置的实现相对复杂。
3.策略灵活度方
- 第11章 动画效果(下)
onestopweb
动画
index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/
- FAQ - SAP BW BO roadmap
blueoxygen
BOBW
http://www.sdn.sap.com/irj/boc/business-objects-for-sap-faq
Besides, I care that how to integrate tightly.
By the way, for BW consultants, please just focus on Query Designer which i
- 关于java堆内存溢出的几种情况
tomcat_oracle
javajvmjdkthread
【情况一】:
java.lang.OutOfMemoryError: Java heap space:这种是java堆内存不够,一个原因是真不够,另一个原因是程序中有死循环; 如果是java堆内存不够的话,可以通过调整JVM下面的配置来解决: <jvm-arg>-Xms3062m</jvm-arg> <jvm-arg>-Xmx
- Manifest.permission_group权限组
阿尔萨斯
Permission
结构
继承关系
public static final class Manifest.permission_group extends Object
java.lang.Object
android. Manifest.permission_group 常量
ACCOUNTS 直接通过统计管理器访问管理的统计
COST_MONEY可以用来让用户花钱但不需要通过与他们直接牵涉的权限
D