奇趣技术网 收藏本站
设为主页
商务合作
首页 新闻中心 行业动态 软件新闻 安全资讯 病毒预警 漏洞发布 操作系统 Dos Win9x Win2000 WinXP Win2003 WinVista Linux Unix
数据库 DB2 Access MSSQL MySQL Oracle Sybase 编程技术 ASP PHP JSP CGI/Perl XML .Net C/C++/C# VB VC Delphi Java 汇编
安全技术 安全教学 工具介绍 漏洞利用 病毒防范 入侵检测 防火墙 安全防范 汉化破解 攻击实例 加密解密 技术论坛
中华网络安全联盟 >> 数据库 >> Sybase >> sybase存储过程问题
数据库
Access
SQL Server
MySQL
DB2
Oracle
Sybase
  • Sybase数据库死锁对策

  • SYBASE ASA数据库恢复

  • Sybase数据库简介

  • SYBASE零售行业解决方

  • SYBASE数据库日志详解

  • Sybase数据库备份方案

  • SYBASE数据库用户管理

  • Sybase数据库的碎片整

  • sybase存储过程问题
    字体:

    中华网络安全联盟    作者:佚名    来源:网络转载    时间:2006-3-23

    问: 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) 
    确定是否存在这样的记录,在执行相应的处理。   
    字体:
     
    设为主页 收藏本站 联系我们 友情连接 商务合作 网友留言
    Copyright©2006-2008 中华网络安全联盟 All rights reserved.