Re: mySQL Problem
- From: "Steve" <no.one@xxxxxxxxxxx>
- Date: Fri, 9 Nov 2007 04:05:21 -0600
"AnrDaemon" <anrdaemon@xxxxxxxxxxx> wrote in message
news:247167785.20071109125445@xxxxxxxxxxxxxx
Greetings, Jerry Stuckle.
In reply to Your message dated Thursday, November 8, 2007, 16:31:15,
AnrDaemon wrote:
Greetings, Steve.
In reply to Your message dated Wednesday, November 7, 2007, 20:19:23,
"Einstein30000" <dominic_ernst@xxxxxx> wrote in message
news:1194453026.587359.180320@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Hi,
in one of my php-scripts is the following query (with an already open
db-connection):
$q = "INSERT INTO main (name, img, descr, from, size, format, cat,
host, link, date) VALUES ('$name', '$img', '$descr', '$user', '$size',
'$format', '$cat', '$host', '$link', '$date')" or die(mysql_error());
And when the query gets executed i get back the following error:
You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use
near 'from, size, format, cat, host, link, date) VALUES ('bla', '-',
'keine', 'Holgi',' at line 1
Whats wrong here?!
your sql statement is F.U.C.K.E.D !!!
Agree but not in the way You think about.
hmmmm...perhaps you'll now see the
value in FORMATTING your queries where a HUMAN BEING can read it. makes
it
easier to debug. :)
Actually, problem is proper quoting, not the format or anything else.
$sql = "
INSERT INTO main
(
`name` ,
`img` ,
`descr` ,
`from` ,
`size` ,
`format` ,
`cat` ,
`host` ,
`link` ,
`date`
)
That way. All should work now.
No, the REAL solution is to not use reserved words as column names.
Why if it's expected name for a column?
ask a dba in a db usenet group...or one at your company. :)
As far as field names is a strings, You can use any given name, even in
Your
local encoding, and You can use spaces too.
no, it's an alias for an object really. but, yes, you can name it whatever
you wish. there is plenty of documentation in *every* db about avoiding such
conventions, esp. reserved words as dbo names, like the plague.
Then you don't need the quotes - which, BTW, are a MySQL extension to
the SQL standard and won't work on any other RDBMS I'm familiar with.
MS SQL Server use square brackets in the same way.
so, you admit that mssql uses something DIFFERENT and PARTICULAR to alias?
you realize that your code becomes TIED to that db until you rewrite every
query to fit the NEXT db you want to use, don't you?
And I have no doubt that other server have identical solution for field
names.
no, only a reliable few share the same notation...and even fewer of those
are among the most commonly used dbs. next!
I think You are wrong and lack of proper quotation in field names isan
extension, not the quotation.
no, jerry is right. what you think is unimportant in light of what can be
cited and proven as correct...which we certainly can here in this case.
And it's better to ask SQL questions in a SQL newsgroup.
/agree
cheers
.
- Follow-Ups:
- Re: mySQL Problem
- From: AnrDaemon
- Re: mySQL Problem
- References:
- mySQL Problem
- From: Einstein30000
- Re: mySQL Problem
- From: Steve
- Re: mySQL Problem
- From: AnrDaemon
- Re: mySQL Problem
- From: Jerry Stuckle
- Re: mySQL Problem
- From: AnrDaemon
- mySQL Problem
- Prev by Date: Re: mySQL Problem
- Next by Date: Re: iframes, src parameters, and browsers
- Previous by thread: Re: mySQL Problem
- Next by thread: Re: mySQL Problem
- Index(es):
Relevant Pages
|