Wouldn't that hit every row in the table where xyz = ?, if so could you
short circuit it with an exists or something:

my $statement = q{select 1 from x where exists xyz = ?};

> -----Original Message-----
> From: Thomas A. Lowery [mailto:[EMAIL PROTECTED]]
> Sent: Saturday, July 07, 2001 4:57 PM
> To: [EMAIL PROTECTED]
> Subject: Re: Checking for the existence of a certain row.
>
>
> What I do is:
>
>       my $statement = q{select 1 from x where xyz = ?};
>
> Prepare:
>
>       my $exist_sth = $dbh->prepare( $statement );
>
> Then call selectrow_array with a scalar:
>
>       $does_exists  = $dbh->selectrow_array($statement, undef,
> $key_to_check );
>
> Tom
>
>
> On Fri, Jul 06, 2001 at 05:08:56PM -0400, James Kufrovich wrote:
> > Hi.
> >
> >     I'd like to check for the existence of data in a row of a database
> > (MySQL), if given the value of a primary key.  ("Is there
> already a row in
> > the database that has this value as a key?") I don't care what
> data is in
> > the row, or if more than one row (!!) is found.  I'd hope that whatever
> > method I use will stop searching the database after it finds the first
> > match.
> >
> >     What would be the best way to go about this? Is there a special
> > method that can do this, or would I have to use selectrow_array (or
> > fetchrow_array or one of those) and then see if it finds anything?  I
> > suppose I can call 'finish' as soon as a match is found, if the
> method (or
> > whatever) doesn't stop by itself.  I'd appreciate any tips. Thanks.
> >
> > Jamie Kufrovich
> >
> > Egg, eggie (at) sunlink (dot) net
> > FMSp3am/MSp3am A- C+ D H+ M+ P+++ R+ T W Z+
> > Sp#/p++ RL->CT a+ cl++ d? e++ f h* i+ j p+ sm+
>
> --
> Thomas A. Lowery
> See DBI/FAQ http://tlowery.hypermart.net
>
> _________________________________________________________
> Do You Yahoo!?
> Get your free @yahoo.com address at http://mail.yahoo.com
>
>

Reply via email to