`
jayghost
  • 浏览: 451791 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

使用SQL PROFILE固定SHARED POOL中的执行计划

阅读更多
如何使用SQL PROFILE固定当前SHARED POOL的执行计划。
 
如果采用手工的方法,需要用到 sqlprof_attr 类型。
自己手工构造相对麻烦点。
ORACLE提供了一个脚本coe_xfr_sql_profile.sql 用来用共享池中获得SQL语句及其执行计划,
并生成一个创建SQL PROFLE的脚本,这个脚本附属在SQLT工具中。
看一下这个脚本的使用方法。
 
 
 
SQL> desc test
 名称                                                  是否为空? 类型
 ----------------------------------------------------- -------- ------------------------------------
 OWNER                                                 NOT NULL VARCHAR2(30)
 OBJECT_NAME                                           NOT NULL VARCHAR2(30)
 SUBOBJECT_NAME                                                 VARCHAR2(30)
 OBJECT_ID                                             NOT NULL NUMBER
 DATA_OBJECT_ID                                                 NUMBER
 OBJECT_TYPE                                                    VARCHAR2(19)
 CREATED                                               NOT NULL DATE
 LAST_DDL_TIME                                         NOT NULL DATE
 TIMESTAMP                                                      VARCHAR2(19)
 STATUS                                                         VARCHAR2(7)
 TEMPORARY                                                      VARCHAR2(1)
 GENERATED                                                      VARCHAR2(1)
 SECONDARY                                                      VARCHAR2(1)
 
SQL> set autot traceonly exp
SQL> select count(1) from test where object_type='SYNONYM';
 
执行计划
----------------------------------------------------------
Plan hash value: 3958077978
 
-------------------------------------------------------------------------------------
| Id  | Operation             | Name        | Rows  | Bytes | Cost (%CPU)| Time     |
-------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT      |             |     1 |     9 |    35   (3)| 00:00:01 |
|   1 |  SORT AGGREGATE       |             |     1 |     9 |            |          |
|*  2 |   INDEX FAST FULL SCAN| IDX_CPIC_01 | 19221 |   168K|    35   (3)| 00:00:01 |
-------------------------------------------------------------------------------------
 
Predicate Information (identified by operation id):
---------------------------------------------------
 
   2 - filter("OBJECT_TYPE"='SYNONYM')
 
SQL> set autot off
SQL> column sql_text format a40
SQL> select sql_id,sql_text from v$sql where sql_text like 'select count(1) from test where object_type=%';
 
SQL_ID        SQL_TEXT
------------- ----------------------------------------
8ma7qaqmmt5bn select count(1) from test where object_t
              ype='SYNONYM'
 
 
SQL> select plan_hash_value from v$sql_plan where sql_id='8ma7qaqmmt5bn' and rownum=1;
 
PLAN_HASH_VALUE
---------------
     3958077978
 
SQL>
 
下面我们用coe_xfr_sql_profile.sql脚本生成创建SQL PROFILE的脚本。
 
SQL> @coe_xfr_sql_profile.sql 8ma7qaqmmt5bn 3958077978
 
Parameter 1:
SQL_ID (required)
 
 
 
PLAN_HASH_VALUE AVG_ET_SECS
--------------- -----------
     3958077978
 
Parameter 2:
PLAN_HASH_VALUE (required)
 
 
Values passed to coe_xfr_sql_profile:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SQL_ID         : "8ma7qaqmmt5bn"
PLAN_HASH_VALUE: "3958077978"
 
SQL>BEGIN
  2    IF :sql_text IS NULL THEN
  3      RAISE_APPLICATION_ERROR(-20100, 'SQL_TEXT for SQL_ID &&sql_id. was not found in memory (gv$sqltext_with_newlines) or AWR (dba_hist_sqltext).');
  4    END IF;
  5  END;
  6  /
SQL>SET TERM OFF;
SQL>BEGIN
  2    IF :other_xml IS NULL THEN
  3      RAISE_APPLICATION_ERROR(-20101, 'PLAN for SQL_ID &&sql_id. and PHV &&plan_hash_value. was not found in memory (gv$sql_plan) or AWR (dba_hist_sql_plan).');
  4    END IF;
  5  END;
  6  /
SQL>SET TERM OFF;
 
Execute coe_xfr_sql_profile_8ma7qaqmmt5bn_3958077978.sql
on TARGET system in order to create a custom SQL Profile
with plan 3958077978 linked to adjusted sql_text.
 
 
COE_XFR_SQL_PROFILE completed.
SQL>
 
 
生成的脚本coe_xfr_sql_profile_8ma7qaqmmt5bn_3958077978.sql内容如下:
 
SPO coe_xfr_sql_profile_8ma7qaqmmt5bn_3958077978.log;
SET ECHO ON TERM ON LIN 2000 TRIMS ON NUMF 99999999999999999999;
REM
REM $Header: 215187.1 coe_xfr_sql_profile_8ma7qaqmmt5bn_3958077978.sql 11.4.4.4 2013/01/11 carlos.sierra $
REM
REM Copyright (c) 2000-2012, Oracle Corporation. All rights reserved.
REM
REM AUTHOR
REM   carlos.sierra@oracle.com
REM
REM SCRIPT
REM   coe_xfr_sql_profile_8ma7qaqmmt5bn_3958077978.sql
REM
REM DESCRIPTION
REM   This script is generated by coe_xfr_sql_profile.sql
REM   It contains the SQL*Plus commands to create a custom
REM   SQL Profile for SQL_ID 8ma7qaqmmt5bn based on plan hash
REM   value 3958077978.
REM   The custom SQL Profile to be created by this script
REM   will affect plans for SQL commands with signature
REM   matching the one for SQL Text below.
REM   Review SQL Text and adjust accordingly.
REM
REM PARAMETERS
REM   None.
REM
REM EXAMPLE
REM   SQL> START coe_xfr_sql_profile_8ma7qaqmmt5bn_3958077978.sql;
REM
REM NOTES
REM   1. Should be run as SYSTEM or SYSDBA.
REM   2. User must have CREATE ANY SQL PROFILE privilege.
REM   3. SOURCE and TARGET systems can be the same or similar.
REM   4. To drop this custom SQL Profile after it has been created:
REM      EXEC DBMS_SQLTUNE.DROP_SQL_PROFILE('coe_8ma7qaqmmt5bn_3958077978');
REM   5. Be aware that using DBMS_SQLTUNE requires a license
REM      for the Oracle Tuning Pack.
REM   6. If you modified a SQL putting Hints in order to produce a desired
REM      Plan, you can remove the artifical Hints from SQL Text pieces below.
REM      By doing so you can create a custom SQL Profile for the original
REM      SQL but with the Plan captured from the modified SQL (with Hints).
REM
WHENEVER SQLERROR EXIT SQL.SQLCODE;
REM
VAR signature NUMBER;
VAR signaturef NUMBER;
REM
DECLARE
sql_txt CLOB;
h       SYS.SQLPROF_ATTR;
PROCEDURE wa (p_line IN VARCHAR2) IS
BEGIN
DBMS_LOB.WRITEAPPEND(sql_txt, LENGTH(p_line), p_line);
END wa;
BEGIN
DBMS_LOB.CREATETEMPORARY(sql_txt, TRUE);
DBMS_LOB.OPEN(sql_txt, DBMS_LOB.LOB_READWRITE);
-- SQL Text pieces below do not have to be of same length.
-- So if you edit SQL Text (i.e. removing temporary Hints),
-- there is no need to edit or re-align unmodified pieces.
wa(q'[select count(1) from test where object_type='SYNONYM' ]');
DBMS_LOB.CLOSE(sql_txt);
h := SYS.SQLPROF_ATTR(
q'[BEGIN_OUTLINE_DATA]',
q'[IGNORE_OPTIM_EMBEDDED_HINTS]',
q'[OPTIMIZER_FEATURES_ENABLE('10.2.0.1')]',
q'[ALL_ROWS]',
q'[OUTLINE_LEAF(@"SEL$1")]',
q'[INDEX_FFS(@"SEL$1" "TEST"@"SEL$1" ("TEST"."OBJECT_TYPE"))]',
q'[END_OUTLINE_DATA]');
:signature := DBMS_SQLTUNE.SQLTEXT_TO_SIGNATURE(sql_txt);
:signaturef := DBMS_SQLTUNE.SQLTEXT_TO_SIGNATURE(sql_txt, TRUE);
DBMS_SQLTUNE.IMPORT_SQL_PROFILE (
sql_text    => sql_txt,
profile     => h,
name        => 'coe_8ma7qaqmmt5bn_3958077978',
description => 'coe 8ma7qaqmmt5bn 3958077978 '||:signature||' '||:signaturef||'',
category    => 'DEFAULT',
validate    => TRUE,
replace     => TRUE,
force_match => FALSE /* TRUE:FORCE (match even when different literals in SQL). FALSE:EXACT (similar to CURSOR_SHARING) */ );
DBMS_LOB.FREETEMPORARY(sql_txt);
END;
/
WHENEVER SQLERROR CONTINUE
SET ECHO OFF;
PRINT signature
PRINT signaturef
PRO
PRO ... manual custom SQL Profile has been created
PRO
SET TERM ON ECHO OFF LIN 80 TRIMS OFF NUMF "";
SPO OFF;
PRO
PRO COE_XFR_SQL_PROFILE_8ma7qaqmmt5bn_3958077978 completed
 
 
我们可以直接使用这个脚本,也可以自己根据实际情况进行修改后在执行。
 
SQL>@coe_xfr_sql_profile_8ma7qaqmmt5bn_3958077978.sql
SQL>REM
SQL>REM $Header: 215187.1 coe_xfr_sql_profile_8ma7qaqmmt5bn_3958077978.sql 11.4.4.4 2013/01/11 carlos.sierra $
SQL>REM
SQL>REM Copyright (c) 2000-2012, Oracle Corporation. All rights reserved.
SQL>REM
SQL>REM AUTHOR
SQL>REM   carlos.sierra@oracle.com
SQL>REM
SQL>REM SCRIPT
SQL>REM   coe_xfr_sql_profile_8ma7qaqmmt5bn_3958077978.sql
SQL>REM
SQL>REM DESCRIPTION
SQL>REM   This script is generated by coe_xfr_sql_profile.sql
SQL>REM   It contains the SQL*Plus commands to create a custom
SQL>REM   SQL Profile for SQL_ID 8ma7qaqmmt5bn based on plan hash
SQL>REM   value 3958077978.
SQL>REM   The custom SQL Profile to be created by this script
SQL>REM   will affect plans for SQL commands with signature
SQL>REM   matching the one for SQL Text below.
SQL>REM   Review SQL Text and adjust accordingly.
SQL>REM
SQL>REM PARAMETERS
SQL>REM   None.
SQL>REM
SQL>REM EXAMPLE
SQL>REM   SQL> START coe_xfr_sql_profile_8ma7qaqmmt5bn_3958077978.sql;
SQL>REM
SQL>REM NOTES
SQL>REM   1. Should be run as SYSTEM or SYSDBA.
SQL>REM   2. User must have CREATE ANY SQL PROFILE privilege.
SQL>REM   3. SOURCE and TARGET systems can be the same or similar.
SQL>REM   4. To drop this custom SQL Profile after it has been created:
SQL>REM  EXEC DBMS_SQLTUNE.DROP_SQL_PROFILE('coe_8ma7qaqmmt5bn_3958077978');
SQL>REM   5. Be aware that using DBMS_SQLTUNE requires a license
SQL>REM  for the Oracle Tuning Pack.
SQL>REM   6. If you modified a SQL putting Hints in order to produce a desired
SQL>REM  Plan, you can remove the artifical Hints from SQL Text pieces below.
SQL>REM  By doing so you can create a custom SQL Profile for the original
SQL>REM  SQL but with the Plan captured from the modified SQL (with Hints).
SQL>REM
SQL>WHENEVER SQLERROR EXIT SQL.SQLCODE;
SQL>REM
SQL>VAR signature NUMBER;
SQL>VAR signaturef NUMBER;
SQL>REM
SQL>DECLARE
  2  sql_txt CLOB;
  3  h       SYS.SQLPROF_ATTR;
  4  PROCEDURE wa (p_line IN VARCHAR2) IS
  5  BEGIN
  6  DBMS_LOB.WRITEAPPEND(sql_txt, LENGTH(p_line), p_line);
  7  END wa;
  8  BEGIN
  9  DBMS_LOB.CREATETEMPORARY(sql_txt, TRUE);
 10  DBMS_LOB.OPEN(sql_txt, DBMS_LOB.LOB_READWRITE);
 11  -- SQL Text pieces below do not have to be of same length.
 12  -- So if you edit SQL Text (i.e. removing temporary Hints),
 13  -- there is no need to edit or re-align unmodified pieces.
 14  wa(q'[select count(1) from test where object_type='SYNONYM' ]');
 15  DBMS_LOB.CLOSE(sql_txt);
 16  h := SYS.SQLPROF_ATTR(
 17  q'[BEGIN_OUTLINE_DATA]',
 18  q'[IGNORE_OPTIM_EMBEDDED_HINTS]',
 19  q'[OPTIMIZER_FEATURES_ENABLE('10.2.0.1')]',
 20  q'[ALL_ROWS]',
 21  q'[OUTLINE_LEAF(@"SEL$1")]',
 22  q'[INDEX_FFS(@"SEL$1" "TEST"@"SEL$1" ("TEST"."OBJECT_TYPE"))]',
 23  q'[END_OUTLINE_DATA]');
 24  :signature := DBMS_SQLTUNE.SQLTEXT_TO_SIGNATURE(sql_txt);
 25  :signaturef := DBMS_SQLTUNE.SQLTEXT_TO_SIGNATURE(sql_txt, TRUE);
 26  DBMS_SQLTUNE.IMPORT_SQL_PROFILE (
 27  sql_text    => sql_txt,
 28  profile     => h,
 29  name        => 'coe_8ma7qaqmmt5bn_3958077978',
 30  description => 'coe 8ma7qaqmmt5bn 3958077978 '||:signature||' '||:signaturef||'',
 31  category    => 'DEFAULT',
 32  validate    => TRUE,
 33  replace     => TRUE,
 34  force_match => FALSE /* TRUE:FORCE (match even when different literals in SQL). FALSE:EXACT (similar to CURSOR_SHARING) */ );
 35  DBMS_LOB.FREETEMPORARY(sql_txt);
 36  END;
 37  /
 
PL/SQL 过程已成功完成。
 
SQL>WHENEVER SQLERROR CONTINUE
SQL>SET ECHO OFF;
 
            SIGNATURE
---------------------
  5779641010256874563
 
 
           SIGNATUREF
---------------------
  2423517717540587142
 
 
... manual custom SQL Profile has been created
 
 
COE_XFR_SQL_PROFILE_8ma7qaqmmt5bn_3958077978 completed
 
 
SQL>select name,sql_text,status from dba_sql_profiles;
 
NAME                           SQL_TEXT                                                                 STATUS
------------------------------ -------------------------------------------------------------------------------- --------
coe_8ma7qaqmmt5bn_3958077978   select count(1) from test where object_type='SYNONYM'                    ENABLED
 
SQL>select sql_text,sql_profile from v$sql where sql_id='8ma7qaqmmt5bn';
 
SQL_TEXT                       SQL_PROFILE
------------------------------ ------------------------------
select count(1) from test wher
e object_type='SYNONYM'
 
 
SQL>comment on table test is '';--将当期的执行计划淘汰出去
 
注释已创建。
 
SQL>select sql_text,sql_profile from v$sql where sql_id='8ma7qaqmmt5bn';
 
未选定行
 
SQL>set autot traceonly exp
SQL>select count(1) from test where object_type='SYNONYM';
 
执行计划
----------------------------------------------------------
Plan hash value: 3958077978
 
-------------------------------------------------------------------------------------
| Id  | Operation             | Name        | Rows  | Bytes | Cost (%CPU)| Time     |
-------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT      |             |     1 |     9 |    35   (3)| 00:00:01 |
|   1 |  SORT AGGREGATE       |             |     1 |     9 |            |          |
|*  2 |   INDEX FAST FULL SCAN| IDX_CPIC_01 | 19221 |   168K|    35   (3)| 00:00:01 |
-------------------------------------------------------------------------------------
 
Predicate Information (identified by operation id):
---------------------------------------------------
 
   2 - filter("OBJECT_TYPE"='SYNONYM')
 
Note
-----
   - SQL profile "coe_8ma7qaqmmt5bn_3958077978" used for this statement  <-- 可以看到SQL PROFILE已经正常工作了。
 
SQL>set autot off
SQL>select sql_text,sql_profile from v$sql where sql_id='8ma7qaqmmt5bn';
 
SQL_TEXT                       SQL_PROFILE
------------------------------ ------------------------------
select count(1) from test wher coe_8ma7qaqmmt5bn_3958077978
e object_type='SYNONYM'

 

分享到:
评论

相关推荐

    汽车轮胎识别数据集,837张训练图 识别率99.5%,支持yolov11格式的标注

    汽车轮胎识别数据集,837张训练图 识别率99.5%,支持yolov11格式的标注

    毕业论文-奇鹿一物一码返红包V1.0.5 安装更新一体版-整站商业源码.zip

    毕业论文-奇鹿一物一码返红包V1.0.5 安装更新一体版-整站商业源码.zip

    【Android App开发】基于ContentProvider的数据共享与访问:实现应用间数据交互及权限管理

    内容概要:本文档详细介绍了Android开发中内容提供者(ContentProvider)的使用方法及其在应用间数据共享的作用。首先解释了ContentProvider作为四大组件之一,能够为应用程序提供统一的数据访问接口,支持不同应用间的跨进程数据共享。接着阐述了ContentProvider的核心方法如onCreate、insert、delete、update、query和getType的具体功能与应用场景。文档还深入讲解了Uri的结构和作用,它是ContentProvider中用于定位资源的重要标识。此外,文档说明了如何通过ContentResolver在客户端应用中访问其他应用的数据,并介绍了Android 6.0及以上版本的运行时权限管理机制,包括权限检查、申请及处理用户的选择结果。最后,文档提供了具体的实例,如通过ContentProvider读写联系人信息、监听短信变化、使用FileProvider发送彩信和安装应用等。 适合人群:对Android开发有一定了解,尤其是希望深入理解应用间数据交互机制的开发者。 使用场景及目标:①掌握ContentProvider的基本概念和主要方法的应用;②学会使用Uri进行资源定位;③理解并实现ContentResolver访问其他应用的数据;④熟悉Android 6.0以后版本的权限管理流程;⑤掌握FileProvider在发送彩信和安装应用中的应用。 阅读建议:建议读者在学习过程中结合实际项目练习,特别是在理解和实现ContentProvider、ContentResolver以及权限管理相关代码时,多进行代码调试和测试,确保对每个知识点都有深刻的理解。

    【Java毕业设计】勤顺勤平台 - 论文、源码、PPT,打造毕业作品.zip

    开发语言:Java 框架:SSM(Spring、Spring MVC、MyBatis) JDK版本:JDK 1.8 或以上 开发工具:Eclipse 或 IntelliJ IDEA Maven版本:Maven 3.3 或以上 数据库:MySQL 5.7 或以上 此压缩包包含了本毕业设计项目的完整内容,具体包括源代码、毕业论文以及演示PPT模板。 项目配置完成后即可运行,若需添加额外功能,可根据需求自行扩展。 运行条件 确保已安装 JDK 1.8 或更高版本,并正确配置 Java 环境变量。 使用 Eclipse 或 IntelliJ IDEA 打开项目,导入 Maven 依赖,确保依赖包下载完成。 配置数据库环境,确保 MySQL 服务正常运行,并导入项目中提供的数据库脚本。 在 IDE 中启动项目,确认所有服务正常运行。 主要功能简述: 用户管理:系统管理员负责管理所有用户信息,包括学生、任课老师、班主任、院系领导和学校领导的账号创建、权限分配等。 数据维护:管理员可以动态更新和维护系统所需的数据,如学生信息、课程安排、学年安排等,确保系统的正常运行。 系统配置:管理员可以对系统进行配置,如设置数据库连接参数、调整系统参数等,以满足不同的使用需求。 身份验证:系统采用用户名和密码进行身份验证,确保只有授权用户才能访问系统。不同用户类型(学生、任课老师、班主任、院系领导、学校领导、系统管理员)具有不同的操作权限。 权限控制:系统根据用户类型分配不同的操作权限,确保用户只能访问和操作其权限范围内的功能和数据。 数据安全:系统采取多种措施保障数据安全,如数据库加密、访问控制等,防止数据泄露和非法访问。 请假审批流程:系统支持请假申请的逐级审批,包括班主任审批和院系领导审批(针对超过三天的请假)。学生可以随时查看请假申请的审批进展情况。 请假记录管理:系统记录学生的所有请假记录,包括请假时间、原因、审批状态及审批意见等,供学生和审批人员查询。 学生在线请假:学生可以通过系统在线填写请假申请,包括请假的起止日期和请假原因,并提交给班主任审批。超过三天的请假需经班主任审批后,再由院系领导审批。 出勤信息记录:任课老师可以在线记录学生的上课出勤情况,包括迟到、早退、旷课和请假等状态。 出勤信息查询:学生、任课老师、班主任、院系领导和学校领导均可根据权限查看不同范围的学生上课出勤信息。学生可以查看自己所有学年的出勤信息,任课老师可以查看所教班级的出勤信息,班主任和院系领导可以查看本班或本院系的出勤信息,学校领导可以查看全校的出勤信息。 出勤统计与分析:系统提供出勤统计功能,可以按班级、学期等条件统计学生的出勤情况,帮助管理人员了解学生的出勤状况

    基于python开发的牛马计费器

    可以根据月工作天数、月工资、每日工作时长实时计算今日收益

    IBM认知制造实践与分享.pdf

    IBM认知制造实践与分享.pdf

    毕业论文-ThinkPHP微信域名防封防红检测API平台源码-整站商业源码.zip

    毕业论文-ThinkPHP微信域名防封防红检测API平台源码-整站商业源码.zip

    毕业论文-婚纱摄影-整站商业源码.zip

    毕业论文-婚纱摄影-整站商业源码.zip

    java毕业设计】一键勤考勤(源码+论文+PPT).zip

    开发语言:Java 框架:SSM(Spring、Spring MVC、MyBatis) JDK版本:JDK 1.8 或以上 开发工具:Eclipse 或 IntelliJ IDEA Maven版本:Maven 3.3 或以上 数据库:MySQL 5.7 或以上 此压缩包包含了本毕业设计项目的完整内容,具体包括源代码、毕业论文以及演示PPT模板。 项目配置完成后即可运行,若需添加额外功能,可根据需求自行扩展。 运行条件 确保已安装 JDK 1.8 或更高版本,并正确配置 Java 环境变量。 使用 Eclipse 或 IntelliJ IDEA 打开项目,导入 Maven 依赖,确保依赖包下载完成。 配置数据库环境,确保 MySQL 服务正常运行,并导入项目中提供的数据库脚本。 在 IDE 中启动项目,确认所有服务正常运行。 主要功能简述: 用户管理:系统管理员负责管理所有用户信息,包括学生、任课老师、班主任、院系领导和学校领导的账号创建、权限分配等。 数据维护:管理员可以动态更新和维护系统所需的数据,如学生信息、课程安排、学年安排等,确保系统的正常运行。 系统配置:管理员可以对系统进行配置,如设置数据库连接参数、调整系统参数等,以满足不同的使用需求。 身份验证:系统采用用户名和密码进行身份验证,确保只有授权用户才能访问系统。不同用户类型(学生、任课老师、班主任、院系领导、学校领导、系统管理员)具有不同的操作权限。 权限控制:系统根据用户类型分配不同的操作权限,确保用户只能访问和操作其权限范围内的功能和数据。 数据安全:系统采取多种措施保障数据安全,如数据库加密、访问控制等,防止数据泄露和非法访问。 请假审批流程:系统支持请假申请的逐级审批,包括班主任审批和院系领导审批(针对超过三天的请假)。学生可以随时查看请假申请的审批进展情况。 请假记录管理:系统记录学生的所有请假记录,包括请假时间、原因、审批状态及审批意见等,供学生和审批人员查询。 学生在线请假:学生可以通过系统在线填写请假申请,包括请假的起止日期和请假原因,并提交给班主任审批。超过三天的请假需经班主任审批后,再由院系领导审批。 出勤信息记录:任课老师可以在线记录学生的上课出勤情况,包括迟到、早退、旷课和请假等状态。 出勤信息查询:学生、任课老师、班主任、院系领导和学校领导均可根据权限查看不同范围的学生上课出勤信息。学生可以查看自己所有学年的出勤信息,任课老师可以查看所教班级的出勤信息,班主任和院系领导可以查看本班或本院系的出勤信息,学校领导可以查看全校的出勤信息。 出勤统计与分析:系统提供出勤统计功能,可以按班级、学期等条件统计学生的出勤情况,帮助管理人员了解学生的出勤状况

    springfox-schema-3.0.0.jar中文文档.zip

    # 压缩文件中包含: 中文文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    IBM:智能制造之旅.pdf

    IBM:智能制造之旅.pdf

    spring-web-5.2.17.RELEASE.jar中文-英文对照文档.zip

    # 压缩文件中包含: 中文-英文对照文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文-英文对照文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    GibbsCAM2009 v9.0 车床模块.pdf

    GibbsCAM2009 v9.0 车床模块.pdf

    电机-42HS40,步进电机3d模型

    电机-42HS40,步进电机3d模型

    基于STM32的简易信号发生与测量装置项目源码+文档说明.zip

    基于STM32的简易信号发生与测量装置项目源码+文档说明.zip,个人经导师指导并认可通过的高分设计项目,评审分99分,代码完整确保可以运行,小白也可以亲自搞定,主要针对计算机相关专业的正在做毕业设计的学生和需要项目实战练习的学习者,可作为毕业设计、课程设计、期末大作业,代码资料完整,下载可用。 基于STM32的简易信号发生与测量装置项目源码+文档说明.zip基于STM32的简易信号发生与测量装置项目源码+文档说明.zip基于STM32的简易信号发生与测量装置项目源码+文档说明.zip基于STM32的简易信号发生与测量装置项目源码+文档说明.zip基于STM32的简易信号发生与测量装置项目源码+文档说明.zip基于STM32的简易信号发生与测量装置项目源码+文档说明.zip基于STM32的简易信号发生与测量装置项目源码+文档说明.zip基于STM32的简易信号发生与测量装置项目源码+文档说明.zip基于STM32的简易信号发生与测量装置项目源码+文档说明.zip基于STM32的简易信号发生与测量装置项目源码+文档说明.zip基于STM32的简易信号发生与测量装置项目源码+文档说明.zip基于STM32的简易信号发生与测量装置项目源码+文档说明.zip基于STM32的简易信号发生与测量装置项目源码+文档说明.zip基于STM32的简易信号发生与测量装置项目源码+文档说明.zip基于STM32的简易信号发生与测量装置项目源码+文档说明.zip基于STM32的简易信号发生与测量装置项目源码+文档说明.zip基于STM32的简易信号发生与测量装置项目源码+文档说明.zip基于STM32的简易信号发生与测量装置项目源码+文档说明.zip基于STM32的简易信号发生与测量装置项目源码+文档说明.zip基于STM32的简易信号发生与测量装置项目源码+文档说明.zip基于STM32的简易

    可控硅(SCR)与双向可控硅(TRIAC)工作原理及应用:参数详解与封装形式汇总

    内容概要:本文档详细介绍了可控硅(SCR)的基础知识,包括其定义、结构、分类以及工作原理。文档首先解释了单相可控硅的基本构造和工作原理,指出其阳极、阴极和控制极的功能,并区分了小功率与大功率可控硅。接着描述了双向可控硅(TRIAC)的特点及其与单向可控硅的区别,重点介绍了TRIAC的触发特性,即根据控制极电压和阳极间电压的不同组合实现导通。此外,文档还列举了可控硅的关键参数如正向阻断峰值电压、反向阻断峰值电压、额定正向平均电流等,并简述了其在自动控制系统中的应用价值。最后,文档提及了常见的封装形式和一些使用中的注意事项,如灵敏度、过载保护及对电网干扰的避免措施。; 适合人群:电子工程专业学生、电气工程师及相关领域的技术人员。; 使用场景及目标:①帮助读者理解可控硅的工作原理和应用场景;②为从事电力电子设计的技术人员提供理论支持和技术指导;③辅助解决实际操作中遇到的问题,如选择合适的可控硅型号和规格。; 其他说明:建议读者结合实际电路进行实验,以便更好地掌握可控硅的工作特性和应用技巧。同时,注意阅读过程中关注各类参数的具体含义及其对可控硅性能的影响。

    Abaqus软件应用于管中管系统深水管非线性动力分析:基于Tube-to-tube ITT单元的数值模拟

    内容概要:本文深入探讨了Abaqus软件在管中管系统深水管非线性动力分析中的应用,特别是基于Tube-to-tube ITT单元的数值模拟研究。文章首先介绍了管中管系统的基本概念及其在深海石油、天然气开发中的重要性。接着阐述了Abaqus软件的功能特点及其在复杂工程问题中的优势。随后详细讲解了如何在Abaqus中建立管中管系统的模型,包括定义材料属性、设定几何尺寸、处理接触关系等。还讨论了设置分析步和载荷的方法,强调了非线性动力分析的必要性。最后展示了求解与结果分析的具体步骤,并提供了相关代码片段以辅助理解和操作。 适合人群:从事海洋工程、石油天然气开发等领域工作的工程师和技术人员,尤其关注深水管系统非线性动力分析的专业人士。 使用场景及目标:适用于需要深入了解并掌握Abaqus软件在管中管系统深水管非线性动力分析中的应用方法,旨在提升对这类复杂系统的认识水平,优化设计方案,确保工程安全可靠。 其他说明:文中提供的代码片段有助于读者更快上手实际操作,使理论与实践相结合,便于后续工作中灵活运用所学知识。

    Java设计定制】勤智算宝考勤工具 - 论文+源码+PPT.zip

    此压缩包包含了本毕业设计项目的完整内容,具体包括源代码、毕业论文以及演示PPT模板。 开发语言:Java 框架:SSM(Spring、Spring MVC、MyBatis) JDK版本:JDK 1.8 或以上 开发工具:Eclipse 或 IntelliJ IDEA Maven版本:Maven 3.3 或以上 数据库:MySQL 5.7 或以上 项目配置完成后即可运行,若需添加额外功能,可根据需求自行扩展。 运行条件 确保已安装 JDK 1.8 或更高版本,并正确配置 Java 环境变量。 使用 Eclipse 或 IntelliJ IDEA 打开项目,导入 Maven 依赖,确保依赖包下载完成。 配置数据库环境,确保 MySQL 服务正常运行,并导入项目中提供的数据库脚本。 在 IDE 中启动项目,确认所有服务正常运行。 主要功能简述: 请假审批流程:系统支持请假申请的逐级审批,包括班主任审批和院系领导审批(针对超过三天的请假)。学生可以随时查看请假申请的审批进展情况。 请假记录管理:系统记录学生的所有请假记录,包括请假时间、原因、审批状态及审批意见等,供学生和审批人员查询。 学生在线请假:学生可以通过系统在线填写请假申请,包括请假的起止日期和请假原因,并提交给班主任审批。超过三天的请假需经班主任审批后,再由院系领导审批。 出勤信息记录:任课老师可以在线记录学生的上课出勤情况,包括迟到、早退、旷课和请假等状态。 出勤信息查询:学生、任课老师、班主任、院系领导和学校领导均可根据权限查看不同范围的学生上课出勤信息。学生可以查看自己所有学年的出勤信息,任课老师可以查看所教班级的出勤信息,班主任和院系领导可以查看本班或本院系的出勤信息,学校领导可以查看全校的出勤信息。 出勤统计与分析:系统提供出勤统计功能,可以按班级、学期等条件统计学生的出勤情况,帮助管理人员了解学生的出勤状况。 用户管理:系统管理员负责管理所有用户信息,包括学生、任课老师、班主任、院系领导和学校领导的账号创建、权限分配等。 数据维护:管理员可以动态更新和维护系统所需的数据,如学生信息、课程安排、学年安排等,确保系统的正常运行。 系统配置:管理员可以对系统进行配置,如设置数据库连接参数、调整系统参数等,以满足不同的使用需求。 身份验证:系统采用用户名和密码进行身份验证,确保只有授权用户才能访问系统。不同用户类型(学生、任课老师、班主任、院系领导、学校领导、系统管理员)具有不同的操作权限。 权限控制:系统根据用户类型分配不同的操作权限,确保用户只能访问和操作其权限范围内的功能和数据。 数据安全:系统采取多种措施保障数据安全,如数据库加密、访问控制等,防止数据泄露和非法访问。

    毕业论文- 易用同城二手V1.0.6 原版-整站商业源码.zip

    毕业论文- 易用同城二手V1.0.6 原版-整站商业源码.zip

    光伏系统中基于电压定向控制的改进型最大功率点跟踪方法及其应用

    内容概要:本文详细介绍了针对快速变化的辐照条件提出的基于电压定向控制(VOC)的改进型最大功率点跟踪(MPPT)方法。文中首先指出了传统VOC算法存在的问题,特别是在辐照突变时导致的相位误差和功率振荡。为了解决这些问题,作者提出了引入动态补偿项的方法,使q轴电流参考值能够自适应调节。此外,还采用了滑动窗口方差法来检测辐照度突变,并设计了一种新的变步长算法以减少功率振荡。同时,在实际工程实践中总结了一些实用经验,如PI控制器的动态限幅处理。经过多个地区的长期测试验证,该方法不仅提高了系统的动态响应速度和稳定性,还在一定程度上实现了组串级优化。 适合人群:从事光伏系统研究与开发的技术人员,特别是关注最大功率点跟踪算法优化的研究者。 使用场景及目标:适用于需要提高光伏系统在复杂环境下的稳定性和效率的应用场合,旨在改善现有MPPT算法在快速变化辐照条件下的表现。 其他说明:文中提供了具体的算法实现细节以及一些实践经验分享,有助于读者更好地理解和应用所介绍的技术。

Global site tag (gtag.js) - Google Analytics