`
starbhhc
  • 浏览: 655534 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

java调用带输出参数的sybase存储过程

阅读更多
1 后台sp伪代码(T-sql):

if exists (select * from sysobjects where name = 'someProcedoreName' and type = 'P')      
   drop proc someProcedoreName      
go      
     
create proc dbo.someProcedoreName      
@param1 int,      
@param2 varchar(7),       
@param_out int output      
AS      
declare      
... some varivles...      
... some statements...      
......      
select @param_out = 0      
......     
  



2 在sql advantage客户端测试sp:

declare @rr int
exec someProcedoreName 920, '04/2009', @rr output

如果是一个没有带输出参数的sp, 用someProcedoreName param1, param2..就可以了,

但是我发现如果带输出参数,则要在前面加exec. 在这里耗了好久。



3 前端java代码:

public class TestSybaseProcedure {      
public static void main(String[] args)throws Exception{      
  Class.forName("com.sybase.jdbc2.jdbc.SybDriver");      
  Connection cnn = DriverManager.getConnection("jdbc:sybase:Tds:db_url:port", "username", "password");       
  int status=-1;      
  CallableStatement cs = cnn.prepareCall("{ call someProcedoreName ?,?,? }");      
  cs.setInt(1, 920);      
  cs.setString(2, "04/2009");      
  cs.registerOutParameter(3, java.sql.Types.INTEGER);      
  cs.execute();      
  status = cs.getInt(3);      
  System.out.println(status);      
}      
}     
分享到:
评论

相关推荐

    Java调用带参数的存储过程并返回集合

    总结,Java调用Oracle存储过程涉及的关键点包括:JDBC连接,CallableStatement,输入/输出参数的设定,以及结果集的处理。理解这些知识点,能够帮助开发者有效地实现数据库操作,提升应用性能。

    Java操做Sysbase存储过程

    以下是如何使用Java调用Sysbase存储过程的示例: ```java CallableStatement cs = conn.prepareCall("{call myProcedure(?, ?)}"); cs.setInt(1, inputParam1); cs.registerOutParameter(2, java.sql.Types.VARCHAR...

    Sybase ASE 12.5 Adaptive Server Enterprise中的Java.pdf

    - **创建Java存储过程**:首先需要编写Java类并编译成.class文件,然后通过SQL语句将这些文件加载到数据库中,最后定义存储过程的输入输出参数。 - **调用Java存储过程**:与传统的T-SQL存储过程类似,只需要使用...

    一些常用数据库存储过程

    此存储过程接受两个输入参数`num1`和`num2`,并计算它们的和,结果通过输出参数`result`返回。 ##### 调用存储过程 在Java中调用Oracle存储过程的方法如下: ```java CallableStatement cs = conn.prepareCall("{ ...

    Sybase IQ 15.1 系统管理手册(下)

    3. **设置输出参数**:如果存储过程需要返回结果,则需要定义输出参数。 4. **调用 `CREATE PROCEDURE` 命令**:使用 SQL 语法创建存储过程。 例如,创建一个名为 `GetSalesReport` 的存储过程,该过程接收一个日期...

    Java面试笔试题

    - **存储过程与函数**:利用存储过程和函数封装复杂的业务逻辑,减少网络传输量。 - **分区策略**:对于大型表,可以采用分区技术来分割数据,从而加速查询响应时间。 - **缓存机制**:利用缓存技术缓存频繁访问的...

    Sybase MobiLink服务器管理中文说明PDF

    - **从存储过程调用中下载结果集**:MobiLink 支持通过存储过程来获取数据,这为高级应用提供了灵活性。 - **从自引用表上载数据**:对于自引用表来说,同步时需要特别注意数据的一致性和完整性。 - **MobiLink ...

    超级有影响力霸气的Java面试题大全文档

     动态INCLUDE用jsp:include动作实现 它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数。 静态INCLUDE用include伪码实现,定不会检查所含文件的变化,适用于包含静态页面...

    软件工程师java方向面试题

    ### 软件工程师Java方向面试题解析 #### 1. 避免死锁的方法有哪些? 死锁是指两个或两个以上的进程在执行过程中,由于竞争资源或者彼此通信而造成的一种相互等待的现象,若无外力作用,它们都将无法推进下去。避免...

    velocity项目源代码

    项目中的"Sybase"可能指的是Sybase数据库管理系统,这表明项目可能使用了Sybase作为其后端存储系统。Sybase是一个高性能、企业级的数据库解决方案,常用于处理大量数据和高并发的场景。 这个项目的源代码可能包含了...

    JDBC连接数据库里面有各数据库的应用说明

    ### JDBC连接数据库应用详解 ... - 获取输出参数:`int result = cstmt.getInt(2);` 以上介绍了如何通过JDBC连接并操作数据库的基本流程。理解这些概念对于开发基于Java的应用程序来说是非常重要的。

    数据库设计和部署软件BDB 专业版v2.7

    开放的数据库物理结构文件格式(XML标准格式),并提供了外部调用数据库结构源程序 (包含C#/Delphi/JAVA三个版本)。 <br>11,支持多语言。 可根据需要增加新的语言包。 <br>website: ...

    嵌入式SQL(E-SQL)简介.doc

    - SQLDA是数据描述区,用于在SQL语句和宿主语言之间传递数据,包括输入参数、输出结果以及游标操作中的列信息。 ### 第二节 SYBASE SQL SERVER嵌入式SQL语言 2.1 **一个嵌入SQL语言的简单例子** - 示例程序通常...

    嵌入式SQL(E-SQL)简介

    - 用于在宿主语言和SQL之间传递数据的结构,支持输入和输出参数以及结果集。 ### 第二节 SYBASE SQL SERVER 嵌入式 SQL 语言 1. **一个嵌入 SQL 语言的简单例子** ``` EXEC SQL CONNECT TO mydb USER myuser ...

    2021-2022计算机二级等级考试试题及答案No.19764.docx

    14. 在 Java 程序 `Test.java` 的示例中,`main` 方法的参数数组 `args` 包含三个元素,但第二个元素 `args[1]` 的长度是 2,所以输出是 `3 2`。 15. C 语言程序中,字符数组 `p` 和字符串常量 `q` 的大小不同,`...

    2021-2022计算机二级等级考试试题及答案No.10899.docx

    静态初始化器不带任何参数,并且不能直接调用。 ### 2. SQL(结构化查询语言) SQL是一种专门用于处理关系数据库的标准语言。它可以用来执行各种数据库操作,如查询、更新、删除等。SQL被广泛应用于各种类型的...

    2021-2022计算机二级等级考试试题及答案No.4229.docx

    - **函数调用:** `fun`函数接收数组及其下标范围作为参数。 **答案解析:** 正确的答案是**12344**。经过`fun`函数的处理后,数组`a`的第4个元素被复制到第5个位置,其余元素不变,因此输出结果为12344。 ### 21....

    2008_初赛_试题_C++.pdf

    - 栈是一种后进先出(LIFO)的数据结构,非常适合用来处理递归调用中的参数传递和返回地址的保存。 #### 12. 不同数制间的加法运算 - **知识点概述**:掌握不同数制下数值的加法运算方法。 - **详细解释**: - 本...

Global site tag (gtag.js) - Google Analytics