or
replace
package
Tools
is
type
ResultData
is
ref
cursor
procedure
sp_Page(p_PageSize
int,
--每页记录数
p_PageNo
int,
--当前页码,从
1
开始
p_SqlSelect
varchar2,
--查询语句,含排序部分
p_SqlCount
varchar2,
--获取记录总数的查询语句
p_OutRecordCount
out
int,--返回总记录数
p_OutCursor
out
ResultData)
end
Tools
create
or
replace
package
body
Tools
is
procedure
sp_Page(p_PageSize
int,
--每页记录数
p_PageNo
int,
--当前页码,从
1
开始
p_SqlSelect
varchar2,
--查询语句,含排序部分
p_SqlCount
varchar2,
--获取记录总数的查询语句
p_OutRecordCount
out
int,--返回总记录数
p_OutCursor
out
ResultData)
as
v_sql
varchar2(3000)
v_count
int
v_heiRownum
int
v_lowRownum
int
begin
----取记录总数
execute
immediate
p_SqlCount
into
v_count
p_OutRecordCount
:=
v_count
----执行分页查询
v_heiRownum
:=
p_PageNo
*
p_PageSize
v_lowRownum
:=
v_heiRownum
-
p_PageSize
+1
v_sql
:=
'SELECT
*
FROM
(
SELECT
A.*,
rownum
rn
FROM
('||
p_SqlSelect
||')
A
WHERE
rownum
<=
'||
to_char(v_heiRownum)
||
'
)
B
WHERE
rn
>=
'
||
to_char(v_lowRownum)
--注意对rownum别名的使用,第一次直接用rownum,第二次一定要用别名rn
OPEN
p_OutCursor
FOR
v_sql
end
sp_Page
end
Tools
论文是以语言文字为信号,是传达信息的方式,下面我给大家分享一些论文中页码怎么设置的方法,大家快来跟我一起欣赏吧。论文中页码怎么设置
一、 在菜单栏选择插入,进入页脚选项,在d出的窗口点击编辑页脚
二、接着在菜单栏会出现设计这一选项,点击页码,在d出的窗口选择页面底端,然后出现底端各种样式,一般选择居中的页码也就是选择普通数字2
三、点击普通数字2选项
四、有时我们的毕业论文需要用到其他的页码,而非普通的阿拉伯数字,这时就需要在页码选项点击设置页码格式选项
五、在页码格式窗口,选择编号格式,起始页码,点击确定.
六、最后在页脚就出现数字
关于java的论文范文
Oracle中基于Java的存储过程开发
摘要:存储过程是一种数据库对象,将执行计划存储在数据库的服务器中,它的执行速度比独立执行同样的程序要快。任何一个设计良好的数据库应用程序都应该用到存储过程。存储过程可以使得对数据库的管理、显示关于数据库及其用户信息的工作容易很多。文中详细分析了Java存储过程的开发步骤。
关键词:Java存储过程,Oracle9i数据库,Java函数
一、存储过程的介绍
1.存储过程的概念
存储过程是一种数据库对象,将执行计划存储在数据库的服务器中,它的执行速度比独立执行同样的程序要快。存储过程可以使得对数据库的管理、显示关于数据库及其用户信息的工作容易很多。存储过程可以包含数据流、逻辑以及对数据库的查询。在 Oracle9i 中应用开发人员除了可使用PL/SQL还可以使用 Java 来开发他们的业务逻辑,并将这个业务逻辑作为存储过程、函数和触发程序部署在数据库中。
当调用Java存储过程时,数据库会直接运行该存储过程,无需进行编译。相对于SQL语句或PL/SQL块而言,其执行速度更快。
2.设计存储过程的方针
(1)在定义存储过程时,要使用其完成单一、相对集中的任务。
(2)在定义存储过程时,不要定义已经由其它特征所提供功能的过程。例如,不要定义强制数据完整性的过程(使用完整性约束)。
3.存储过程的类型
Oracle9i 支持四种不同类型的存储过程,用PL/SQL或Java,都可以实现全部四种类型的存储过程。这四种存储过程类型是:存储过程、存储函数、数据库触发器和对象类型方法
4.存储过程的调用
在Oracle9i里,这四种存储程序类型的每一种,都可以从不同的调用环境调用,这些调用环境是:SQL语句或DML语句、顶级CALL语法、PL/SQL块、子程序(包)和触发器的隐式调用
二、教师信息管理系统中Java存储过程的开发和设计
1.创建Java存储过程的一般步骤
(1)Java存储过程的开发步骤:编写Java源代码、装载Java代码及类到Oracle9i数据库中 、生成调用说明和调用JSP。
要将Java方法转换为Java存储过程需要几个步骤,包括:用loadjava实用程序将Java类加载到数据库中,利用调用规范(Call Spec)发布Java方法,将Java方法、参数类型和返回类型映射到其SQL的对应部分。
(2)编写Java源代码
当开发Java存储过程时,首先应该编写Java源代码。
import…//导入Java类
public class p1//创建一个公用类
{
…
public static viod method a() //方法一
{
…
}
}
(3)装载Java代码及类到Oracle9i数据库中
在编写了Java源代码之后,接下来应该将Java代码及相应的Java类装载到Oracle9i数据库中。如图1所示:
图1 Oracle9i中的Java类
装载Java代码及类到RDBMS有以下两种方法:
?使用loadjava工具,通过该工具可以快速装载Java源代码(.java)、Java二进制代码(.class)以及Java打包文件(.jar)。
?使用CREATE Java、ALTER Java装载Java代码。
(4)生成调用说明
在装载了Java类之后计算机论文,接下来应该生成对public static方法的调用说明,最终完成Java存储过程的开发工作。
完成上述步骤之后,就完成了Java存储过程的开发工作,然后就可以调用并执行该Java存储过程了。
2.使用Java开发过程
过程用于执行某种 *** 作。需要注意的是,过程所对应的Java方法返回值必须为空(void)。本节以创建用于插入、修改和删除THEACHERS表的JSP为例,说明使用Java开发过程的方法。如图2所示:
图2使用Java开发过程示例
下面讲述完成上述任务的方法及过程:
(1)编写Java源代码
程序清单如下(manipulate_teachers.java):
import java.sql.*
import java.io.*
import oracle.jdbc.driver.*
public class manipulate_teachers {
public static void insert_teachers
(String code,Stringname,int sex,String birthdate,String entry_date_time)
throws SQLException {
/* 建立到数据库的缺省连接 */
Connection conn = newOracleDriver().defaultConnection()
/* 构造动态SQL语句 */
String sql ="INSERT INTO teachers
(teacher_code,name,sex,birthdate,entry_date_time)" +
"VALUES (?,?,?,?,?)"
/* 使用try ... catch语句抓取并抛出例外 */
try {
/* 准备动态SQL语句 */
PreparedStatement pstmt = conn.prepareStatement(sql)
/* 设置动态SQL参数值 */
pstmt.setString(1, code)
pstmt.setString(2, name)
pstmt.setInt(3, sex)
pstmt.setString(4, birthdate)
pstmt.setString(5,entry_date_time)
/* 执行动态SQL语句 */
pstmt.executeUpdate()
/* 关闭动态SQL语句 */
pstmt.close()
} catch (SQLException e) {}
}
public static void delete_teachers(String code)
throws SQLException {
Connection conn = newOracleDriver().defaultConnection()
String sql = "DELETEFROM teacherss WHERE teachers_code = ?"
try {
PreparedStatement pstmt = conn.prepareStatement(sql)
pstmt.setString(1, code)
pstmt.executeUpdate()
pstmt.close()
} catch (SQLException e) {}
}
public static void modify_salary(String code,float salary)
throws SQLException {
Connection conn = newOracleDriver().defaultConnection()
String sql = "UPDATEteachers SET salary = ? WHERE teacher_code = ?"
try {
PreparedStatement pstmt = conn.prepareStatement(sql)
pstmt.setFloat(1, salary)
pstmt.setString(2, code)
pstmt.executeUpdate()
pstmt.close()
} catch (SQLException e) {}
}
}
(2)装载Java代码及类到Oracle9i数据库中
在编写了Java源代码之后,就可以将Java对象装载到Oracle9i数据库中了。下面是完成这项任务的方法:
//设置环境变量classpath
setclasspath=c:\oracle\ora9l\jdbc\classeslll.zip
c:\oracle\ora9l\sqlj\runtime.zip
c:\oracle\ora9l\sqlj\translator.zip
loadjava-useraca/xtgtoup@xtdh-o-y-f-rd:\jsp\manipulateteachers.java
(3)发行Java,生成调用说明
在装载了Java类后,就可以发行该Java类,并生成调用其方法的过程说明了。下面是完成该项任务的方法:
①//登陆到数据库
Sqlplus aca/xtgroup@xtbdh
②create or replace procedure insert_teachers
(code varcharr2,namevarchar2,sex number
birthdatevarchar2,entry_date_time varchar2
)as language java name
‘mainpulate_auths.insert_teachers(java.lang.String,
Java.lang.String.int.java.lang.String.java.lang.String)’
③create or replace procedure delete_teachers(codevarchar2)
as language java name
‘manipulate_teachers.delete_teachers(java.lang.String)’
④create or replace procedure modify_salary
(code varchars2,salary number) aslanguage java name
‘manipulate_auths.midify_salary(java.lang.String,float)’
(4)调用JSP
在生成了调用Java方法的过程说明之后,我们就可以调用JSP了。例如:
//插入一条记录
call insert_teachers(‘A00012’,’张云’,1,’16-JUN-1968’,’16- JUN-2006’)
//修改教师的工资
callmodify_salary(‘A00012’,2000)
//删除教师记录
call delete_teachers(‘A00012’)
(5)分析
在这我们使用了Java存储过程,与PL/SQL相比,使用Java语言开发存储过程只被发送到数据库一次,相对于SQL语句或PL/SQL块而言,其网络通信量更小。而且当调用Java存储过程时,数据库会直接运行该存储过程,无需进行编译。相对于SQL语句或PL/SQL块而言,它省去了编译的时间,因此其执行速度更快。
3.使用Java开发函数
函数用于返回特定数据。可通过创建用于返回教师所教授的课程标题,以及课程数为例,说明使用Java开发函数的方法。
图3 使用Java开发函数示例
三、结束语
任何一个设计良好的数据库应用程序都应该用到存储过程。存储过程可以使得对数据库的管理、显示关于数据库及其用户信息的工作容易很多。存储过程可以帮助你在代码中分离逻辑.Oracle数据库与Java VM的集成可以创建可移植、功能强大和数据库无关的数据逻辑和持续性逻辑。Java语言具有更强大的运算能力,提供了更多的运算方法,可以应用于更多的数据库系统(如Sybase、DB2、Informix等等)。Java的存储过程可以解决不同数据库厂商使用各种专有的、且依赖于数据库的实现语言的问题。利用Java存储过程沟通SQL、XML、Java、J2EE和Web服务。
【参考文献】:
1.Kevin Loney,Marlene Theriault等著,蒋蕊,王磊等译.《Oracle 9i DBA手册》[M].北京:机械工业出版社,2005
2.丁岳伟,彭敦陆编著.《Java程序设计》[M].北京:高等教育出版社,2005
3.John Carnell等著,康博译.《Oracle 9i Java程序设计—使用PL/SQL和Java的解决方案》[M].北京:清华大学出版社,2002
4.周悦芝著.《OracleJ2EE应用开发》[M].北京:清华大学出版社,2005
5.王洪,朱锐.数据库存储过程设计及应用[M].《电子信息对抗技术》,2009年2期-
看了“论文中页码怎么设置”的人还看:
1. 论文的页码怎样设置
2. 论文的页码怎么设置
3. 毕业论文怎么设置页码呢
4. 论文页码怎么设置
5. 毕业论文的页码如何设置页码
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)