sybase存储过程问题

问:SYBASE存储过程,为什么执行到这一句就不执行了

select @nSerialNo = serialno from schedule where phonenum= @strPhoneNum and type = @nType
if @@rowcount = 0
begin
...
end
else
begin
...
end


上面的select结果是空记录集,存储过程一执行到空记录集,就会返回?

答:if exists(select @nSerialNo = serialno from schedule where phonenum= @strPhoneNum and type = @nType)这个语句的逻辑有点问题?

if exists 一般是用来确定是否存在类似的记录?你现在又要将存在的结果赋值?其实还不如写 if exists(select 1 from schedule where phonenum= @strPhoneNum and type = @nType)

确定是否存在这样的记录,在执行相应的处理。

时间: 2024-11-02 10:44:50

sybase存储过程问题的相关文章

c#调用sybase存储过程

存储过程 c#调用sybase存储过程                 1:引用Odbc命名空间 using System.Data;using System.Data.Odbc; 2:建立连接 connstr="Driver={SYBASE SYSTEM 11};Srvr=数据库名;Uid=用户名;Pwd=密码"; OdbcConnection Conn=new OdbcConnection(connstr); 3:调用存储过程     Conn.Open();    OdbcCom

c# 调用sybase存储过程带返回值的,怎么搞?

问题描述 c#调用sybase存储过程带返回值的,怎么搞? 解决方案 解决方案二:大哥们帮帮我啊解决方案三:晕,怎么没有人啊

CallableStatement 调用sybase存储过程无法取得结果集问题!!!

问题描述 Stringsql="{?=callhtgl..SP_CIMS_ZDCX(?,?,?,?,?)}";CallableStatementcstmt=con.prepareCall(sql);cstmt.registerOutParameter(1,Types.INTEGER);cstmt.setString(2,"111");cstmt.setInt(3,0);cstmt.setString(4,"");cstmt.setInt(5,10

C#获取Sybase存储过程的Return值出错!

问题描述 代码:publicintInsertDBBySend(stringbranchId,stringoperatorA,outstringfileName){intresult=-1;OdbcParameter[]pars=newOdbcParameter[]{newOdbcParameter("@branch_id",OdbcType.VarChar,11),newOdbcParameter("@operator",OdbcType.VarChar,10),

sybase跨数据库调用sql server存储过程

问题描述 sybase跨数据库调用sql server存储过程 sql server能调用sybase存储过程,sybase如何调用sql server的存储过程呢? 解决方案 Sql Server数据库的存储过程sql server 数据库存储过程SQL Server 2000数据库存储过程的调用(VB) 解决方案二: http://blog.sina.com.cn/s/blog_b5b346bb0102vbg8.html

Sybase数据库中存储过程的建立和使用

Sybase的存储过程是集中存储在SQL Server中的预先定义且已经编译好的事务.存储过程由SQL语句和流程控制语句组成.它的功能包括:接受参数;调用另一过程;返回一个状态值给调用过程或批处理,指示调用成功或失败;返回若干个参数值给调用过程或批处理,为调用者提供动态结果;在远程SQL Server中运行等. 存储过程的性能特点如下: ·存储过程是预编译过的,这就意味着它与普通的SQL语句或批处理的SQL语句不同,当首次运行一个存储过程时,SQL Server的查询处理器对其进行分析,在排除了

sybase的存储过程编写经验和方法

一.前言:在经过一段时间的存储过程开发之后,写下了一些开发时候的小结和经验与大家共享,希望对大家有益,主要是针对Sybase和SQL Server数据库,但其它数据库应该有一些共性. 二.适合读者对象:数据库开发程序员,数据库的数据量很多,涉及到对SP(存储过程)的优化的项目开发人员,对数据库有浓厚兴趣的人. 三.介绍:在数据库的开发过程中,经常会遇到复杂的业务逻辑和对数据库的操作,这个时候就会用SP来封装数据库操作.如果项目的SP较多,书写又没有一定的规范,将会影响以后的系统维护困难和大SP逻

存储过程-如何删除sybase数据库中某个用户所拥有的全部对象

问题描述 如何删除sybase数据库中某个用户所拥有的全部对象 如何删除sybase数据库中某个用户所拥有的全部对象,可以写一个存储过程来实现

sybase的存储过程

存储过程是存储在服务器端的一类数据库对象,它实质上是一段用SQL语言编写的程序,它在服务器端预先经过编译,并确定出执行计划,因此与同样功能的批处理语句相比,它的执行速度较快. 基本语法: Create Procedure[owner.]过程名 [@参数名 数据类型[=默认值][Output]] [,@参数名 数据类型[=默认值][Output]] [--] AS Begin SQL语句(块) End 存储过程是数据库对象,和表.索引是一个级别的:是SQL语句和控制流语言的集合,存储过程在首次运行