今天写下两个小问题,都与数据库相关。
第一个:前几天,实验室大迁移,学校网络也重新规划,Oracle的客户端设置也要随之改变,因为,服务器的IP地址换掉了(这也就是在很多情况下,连接服务器或者其他节点机器时,建议使用主机名的缘故——使用主机名,不会因为IP的更换而做相应的改变)。当然,重新安装肯定是一个方法,但是,毫无疑问,肯定有一个简单的设置即可完成,否则,Oracle就不叫“产品”了。
正准备Google,见豪客在线,遂决定“站在豪客的肩膀上”,呵呵,豪客支招,一切迅速OK。
修改Oracle客户端连接属性方法:
进入:%OracleHome%/ora92/network/ADMIN,修改tnsnames.ora文件,将其中的HOST修改为新的IP即可。例如:
BJMIGYJ =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.17.158.133)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = bjmigyj)
)
)
第二个:需求很明确,一张日志表,有一字段为RequestTime(请求时间),需要以小时为单位取得请求数最多的时间段。同时,提供了模糊查询情况下的该统计功能,所谓模糊查询情况,就是可以限定某段时期,查询到该时期内的访问高峰。
//构造查询条件:
public String buildWhere(String beginTime,String endTime) {
String strSql = "";
if(!beginTime.toLowerCase().equals("")) {
if(!endTime.toLowerCase().equals("")) {
//起止时间都有
strSql = strSql + " AND (requesttime between to_date('" + beginTime + "','yyyy-mm-dd hh24: mi: ss') and to_date('"+ endTime+ "','yyyy-mm-dd hh24: mi: ss'))";
} else {
//有开始时间,到当前系统日期为止
strSql = strSql + " AND (requesttime >= to_date('" + beginTime + "','yyyy-mm-dd hh24: mi: ss'))";
}
} else//无开始时间
{
if(!endTime.toLowerCase().equals("")) {
//到当前时间为止
strSql = strSql + " AND (requesttime <= to_date('" + endTime + "','yyyy-mm-dd hh24: mi: ss'))";
}
}
return strSql;
}
//获取请求集中的时间段:返回时间+数量
public String getHighestHour(String where) throws SQLException {
DbConnectionPool db = new DbConnectionPool();
ResultSet rs=null;
String strSql = "select to_char(requesttime,'yyyy-mm-dd hh24') requesttime,count(*) total from audit_extranet_log where 1=1 ";
strSql += where;
strSql = strSql + " group by to_char(requesttime,'yyyy-mm-dd hh24') order by count(*) desc";
String time = "";
int count = 0;
try {
System.out.println(strSql);
rs=db.executeQuery(strSql);
if(rs.next()){
time = rs.getString("requesttime");
count = rs.getInt("total");
}
} catch (Exception e) {
e.printStackTrace();
}finally{
rs.close();
db.closeConn();
}
return time + "时之后的一个小时内,请求数为:" +count ;
}
具体的JSP就不再说明,通过上述两个方法,配合页面参数,最后组合的查询类似如下(下面的情况只输入了开始时间):
select to_char(requesttime,'yyyy-mm-dd-hh24') requesttime,count(*)
from audit_admin_log
where requesttime > to_date('2007-04-06 16:25:15','yyyy-mm-dd hh24: mi: ss')
group by to_char(requesttime,'yyyy-mm-dd-hh24') order by count(*) desc;
分享到:
相关推荐
源码中默认使用的数据库为运行的Oracle数据库 如需修改,在java源码/database.propertie中修改即可!Oracle数据库课程设计医院系统数据库源代码。包含Java代码和SQL语句。源码中默认使用的数据库为运行的Oracle...
《Oracle 12c数据库基础教程》教学课件—03Oracle数据库管理工具.pdf《Oracle 12c数据库基础教程》教学课件—03Oracle数据库管理工具.pdf《Oracle 12c数据库基础教程》教学课件—03Oracle数据库管理工具.pdf《Oracle...
通过图形化界面和 RMAN 脚本两种方式可以实现 Oracle 数据库异机恢复。在异机恢复时,需要在恢复目标机上设置好 host 解析,推送 Oracle RMAN Plugin,并创建备份作业。 本文档详细介绍了如何使用 Veeam 备份恢复 ...
2. 提供oracle数据库dba日常管理方法。 3. 掌握oracle数据库体系机构,为oracle优化奠定基础。 三、适合人群: 1.有意从事oracle 数据库工作,担任dba角色的人员; 2. Oracle数据库设计、开发和备份等管理人员; ...
【Oracle数据库大作业】是一个关于Oracle数据库在教务管理系统中的应用项目,可能涵盖了数据库设计、实施、优化等多个方面的内容。这个大作业包含了PPT演示文稿、Word文档以及可能的源代码,为学习者提供了全面了解...
数据库连接组件用于建立与Oracle数据库的物理连接,而记录集组件则负责在程序中操作数据,如查询、插入、更新和删除记录。 1. 数据库连接组件: - 在易语言中,设置数据库连接通常涉及以下参数: - 数据源(DSN)...
Oracle数据库是全球广泛使用的大型关系型数据库管理系统之一,其强大的功能和稳定性使其在企业级应用中占据了重要地位。本文将详细解析Oracle数据库的体系结构,帮助读者深入理解其内部工作原理。 Oracle数据库的...
Oracle数据库是全球最广泛使用的商业关系型数据库管理系统之一,尤其在企业级应用中占据主导地位。本指南将针对初学者,详细介绍Oracle数据库的基础知识、安装与配置,以及一些常用的操作和管理技巧。 **1. Oracle...
Oracle数据库是全球广泛使用的大型关系型数据库管理系统,尤其在企业级应用中占据重要地位。这份"Oracle数据库编程pdf文档教案"提供了从基础到高级的Oracle学习路径,通过5天的学习内容,帮助读者深入理解并掌握...
在IT行业中,数据库管理是至关重要的任务之一,而Oracle数据库作为全球广泛使用的数据库管理系统,其数据安全性与备份策略显得尤为重要。本文将详细讲解如何利用批处理脚本(BAT)进行Oracle数据库的备份,并探讨...
"查看登录 Oracle 数据库用户记录" Oracle 数据库是一个强大的关系型数据库管理系统,提供了强大...本文介绍了如何使用触发器来查看登录 Oracle 数据库用户记录,帮助数据库管理员更好地管理和监控数据库的访问情况。
Oracle数据库是企业级应用中广泛使用的数据库管理系统之一,为了确保数据库系统的稳定运行和快速定位问题,掌握Oracle数据库日志查看方法至关重要。本文将详细介绍如何查看Oracle数据库中的各种日志文件,并提供具体...
在 Oracle 数据库中,exp 和 imp 命令是两个非常重要的命令。exp 命令用于将 Oracle 数据库数据导出到文件中,而 imp 命令用于将数据从文件中导入到 Oracle 数据库中。这些命令可以在命令行中使用,例如,在 Windows...
Oracle数据库系统是全球广泛使用的大型关系型数据库管理系统之一,它在企业级数据管理和应用程序开发中扮演着核心角色。本资源“Oracle数据库系统应用与开发”深入探讨了Oracle数据库的使用和开发技术,特别关注...
Oracle数据库是全球最广泛使用的商业关系型数据库管理系统之一,由美国甲骨文公司(Oracle Corporation)开发和维护。Oracle数据库以其高效、稳定和强大的功能在金融、电信、医疗、政府等多个领域得到广泛应用。本...
连接到Oracle数据库可以使用sqlplus和SQL developer两种方式。 使用sqlplus连接数据库 1. 打开cmd窗口,输入sqlplus /nolog回车。 2. 输入conn sys/admin@BOOKSALES as sysdba回车。 使用SQL developer连接数据库...
基于java的开发源码-Oracle数据库工具 WARTS.zip 基于java的开发源码-Oracle数据库工具 WARTS.zip 基于java的开发源码-Oracle数据库工具 WARTS.zip 基于java的开发源码-Oracle数据库工具 WARTS.zip 基于java的开发...