View Single Post

   
  #4 (permalink)  
Old 02-28-2008, 10:10 AM
Peter H. Coffin
 
Posts: n/a
Default Re: Can you do this in MySQL 4.1 scripting?

On Wed, 14 Feb 2007 11:19:37 -0000, Sam Smith wrote:
> "Willem Bogaerts" <w.bogaerts@kratz.maardanzonderditstuk.nl> wrote in
> message news:45b76d23$0$328$e4fe514c@news.xs4all.nl...
>>> Is it possible to catch an error in 4.1 scripting? I have found that whan
>>> I
>>> run a script and a line of the script cannot find a table - instead of
>>> halting
>>> the script continues to run.

>>
>> Funny question. MySQL does not support multiple queries, so the only one

>
> Not really. If I have a multiple list of commands in a script and one of
> those lines errors (perhaps the table doesn't exist etc.) then I would
> expect the whole script to stop running. It doesn't do this - it carries on
> regardless.
>
> Sort of basic expectation of what a set of code should do really.


But mostly mysql "script" are (effectively) typed commands from a
redirected standard input, using the same CLI as is used for a great
many other things. Stopping would require writing at least a gizmo that
sat between the redirect and watched for errors and threw away the rest
of the input after parsing an error response back from the CLI, OR
chaning the CLI so that it seizes up after the first error, which would
be inconvenient for interactive operation.

Basically, the CLI isn't *wrong*, it's just not doing what you'd like it
to do. So write a parser in expect, perl or php, or whatever language
you like, and watch for errors. It's not that tricky.

--
Judging by this particular thread, many people in this group spent their
school years taking illogical, pointless orders from morons and having
their will to live systematically crushed. And people say school doesn't
prepare kids for the real world. -- Rayner, in the Monastery
Reply With Quote