Re: mySQL Problem
- From: Jerry Stuckle <jstucklex@xxxxxxxxxxxxx>
- Date: Thu, 08 Nov 2007 08:28:37 -0500
Steve wrote:
"The Natural Philosopher" <a@xxx> wrote in message news:1194484441.81272.6@xxxxxxxxxxxxxxxxxxxxxxxDarko wrote:On Nov 7, 10:37 pm, "Steve" <no....@xxxxxxxxxxx> wrote:I'm with darko here. It took me about 5 seconds flat to realise what was wrong."Darko" <darko.maksimo...@xxxxxxxxx> wrote in messageYes, please.
news:1194463439.305946.20240@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
On Nov 7, 6:19 pm, "Steve" <no....@xxxxxxxxxxx> wrote:you obviously haven't written very long or complex queries. 'near' and ONwell !!! lo-and-behold!!! when you get your error message back THIS time,Having yelled that out, haven't you ever noticed that mysql (and so do
you actually get a line number OTHER THAN 1 !!! now THAT would be
helpful!
imagine too, that you echo this out to the browser, copy it, and paste it
directly into your mysql query browser...then execute it. even before
then,
you might have discovered (since you can now READ IT) that there is
something wrong in the data you're inserting.
other
sql servers) specify precisely where the problem is - this time it
said:
near 'from, size, format, cat, host ...
LINE x are *worlds* apart, now aren't they.
... so it was quite clear that it had had problem with "from".apparently not quite as clear to the op. :)
Considering php andyou should ammend that...'considering the error information [IN THIS CASE]'.
queries code readability you are, of course, right, since a programmer
will much more
easily read the code formatted in the way you have, but considering
error information,
either way, it should be formatted as a rule...unless you're saying you can
predict your errors, in which case you wouldn't make mistakes anyway.
sql servers are pretty precise about where the problem occurred, codereally? which ones? what is 'pretty' precise?
being indented
or not.
the indenting is multipurpose. it is my experience that the top 4 sql
servers (ms sql, oracle, mysql, teradata) are generally *obtuse* in their
error messages...but they all give line numbers!
rude? lol.don't let me throw you on that one...bad data is NOT the problem here.As for rude yelling about making mistakes with reserved words, that is
there
are things called RESERVED WORDS. one of those would be the word
'FROM'...as
in "select * FROM". if you had correctly formatted your sql statement,
the
line number in error would have been line 6...a much better clue.
something that happens
to many people, even experienced, from time to time, so no need to get
upset about it.
you even infer rudeness about the mistake itself. no, i capitalized FROM so
that it stood out. if that hurt your ears, then you won't hear me laughing
right now. my intention throughout the thread here has been to make a point
about formatting. did you not notice that even though i told him what the
problem was, i did not tell him how to fix it? hmmmm...must not have been
the goal of my post. seems you've missed that point.
I oncechrist almighty! i suppose you proliferate the use of variables like $tmp
named two variables in C like "od" and "do", and couldn't find out
what was wrong with it until
I realised it was the "do" keyword.
too. what a goof! 'do'? for the love of god, almost *every* language has a
*do* loop construct. so, when you said, 'even experienced' above, you were
not associating yourself among those. :)
Finally, it is not "reserved" word in any sql, as you can indeed namewhy yes. now why would i NOT explain that to the op? must not have been the
any field "from", as long
as you make the parser know it. For an example, this is totally legal:
select name, img, descr, "from", size, format from table;
purpose of my post. what's more, i'd be encouraging BAD behavior. if you
think that's just my ho, why don't you prepose that question in a db
forum...bring your asbestos umbrella, cuz it'll rain fire from the first
response to the last. dba's are kinda picky that way.
just as long as you keep the double quotes around key words.ahhhh...you assume too much. oracle will fart on your double quotes. it
likes either single tics or single back tics (`). again, you just killed a
great chance for scalability. you should be able to take your code base and
plop it down in front of any db and nothing breaks. you've forced yourself
to reprogram when switching from one db to another...which is the shits when
you're prototyping on your local pc using mysql and pushing code to
production where teradata is the db being used.
wanna keep going, darko?
It wasn't my intention to encourage Einstein30000 to use such field
names as "from" or "select",
the idea was only that such errors happen even to experienced
programmers, not indicating whether
I consider myself one or not - it's pretty relative thing, as you
know.
As for "od" and "do", you should first know that I am a Serb, and that
in Serbian language "od" means "from",
and "do" means "to", so "od 1 do 10" means "from 1 to 10". Thus, once
in a simple C program I needed such "from" and
"to" helper variables, and I named them "od" and "do". It would have
been much easier to avoid if I was writing in
English, which I usually do when making non-test programs, since then
it would be easier to "hear" it as the English
do. But, being switched to Serbian in my mind, I didn't see any danger
coming of it, and the
compiler was pretty vague about the error, as you know it can be, and
I hardly recognized it. This is,
if you'd really like to know.
As for yelling, your uppercasing "FROM" explanation doesn't mention
the "your sql statement is F.U.C.K.E.D", "well !!! lo-and-behold!!!",
"a line number OTHER THAN 1 !!! now THAT would be helpful! ", "since
you can now READ IT", "bad data is NOT the problem here. there are
things called RESERVED WORDS. " statements, which I normally
considered yelling. It's just not polite to address people like that,
especially ones that came for advice and help.
Regards,
Darko
No need to blow it across 15 lines.
Unless you are the sort person who can't count beyond ten without taking their socks off.
Mysql barfs where its parser gets confused..that was at the word 'from' Simple.
right. and no one is arguing the simple nature of identifying the problem here. however, it becomes very difficult, not only to read, but to maintain and debug sql statements that are not well formatted...which helps more quickly identify the root cause when it is less than obvious.
i'm not for or against anyone. i'm for a systemic approach that covers all the bases and is a best practice. that's all. it has little to do with the actual problem faced here with reserved words.
Sorry, Steve - I don't agree with your method of "properly formatting" the SQL. It takes way too much space on the page. It is not "correct" by virtually any programmer I know.
--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstucklex@xxxxxxxxxxxxx
==================
.
- Follow-Ups:
- Re: mySQL Problem
- From: Darko
- Re: mySQL Problem
- From: Steve
- Re: mySQL Problem
- References:
- mySQL Problem
- From: Einstein30000
- Re: mySQL Problem
- From: Steve
- Re: mySQL Problem
- From: Darko
- Re: mySQL Problem
- From: Steve
- Re: mySQL Problem
- From: Darko
- Re: mySQL Problem
- From: The Natural Philosopher
- Re: mySQL Problem
- From: Steve
- mySQL Problem
- Prev by Date: Re: Read MS word doc using php from linux
- Next by Date: Re: mySQL Problem
- Previous by thread: Re: mySQL Problem
- Next by thread: Re: mySQL Problem
- Index(es):