PEPPLER.ORG
Michael Peppler
Sybase Consulting
Menu
Home
Sybase on Linux
Install Guide for Sybase on Linux
General Sybase Resources
General Perl Resources
Freeware
Sybperl
Sybase::Simple
DBD::Sybase
BCP Tool
Bug Tracker
Mailing List Archive
Downloads Directory
FAQs
Sybase on Linux FAQ
Sybperl FAQ
Personal
Michael Peppler's resume

sybperl-l Archive

Up    Prev    Next    

From: "Peter Collard" <collardp at rabo-bank dot com>
Subject: RE: Error when checking "if exists"
Date: Jun 1 1998 10:27AM

Its much faster to do an insert, and trap the error return. If the row exists then do an update. Alternatively if you expect the row to be there more frequently than not, do the update first, and insert on fail.

________________________________________________________

Peter Collard 
Sybase Database Administrator
0171-410-3863
"The views expressed in this correspondence are mine and not necessarily those of Rabobank International"
________________________________________________________

-----Original Message-----
From:	Rashmi Anand [SMTP:rashmi5@yahoo.com]
Sent:	Monday, June 01, 1998 10:55 AM
To:	SybPerl Discussion List
Subject:	Error when checking "if exists"

Hello, 
I am trying to check for the existance of a row and if it exists, send
an update otherwise, send an Insert statement:

if exists (select * from ... where ...)
   begin 
     Update ... where ...
   end
else
   begin 
     Insert ...
   end

and I get the following error:

DB-Library error: Attempt to initiate a new SQL Server operation with
results pending.

I don't think the above SQL is returning any results, and I am not
expecting any, then why is dblib throwing the above error?

Any help will be appreciated.
Thanks in advance
--Rashmi




_________________________________________________________
DO YOU YAHOO!?
Get your free @yahoo.com address at http://mail.yahoo.com