[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bacula-devel] bad sql??

> Kern Sibbald wrote:
> > On Thursday 18 September 2008 17:23:06 Dan Langille wrote:
> >> Kern Sibbald wrote:
> >>> On Thursday 18 September 2008 15:40:04 Dan Langille wrote:
> >>>> resending, with CC to list.
> >>>>
> >>>> John Huttley wrote:
> >>>>> https://people.planetpostgresql.org/xzilla/index.php?/archives/360-Ba
> >>>>>cu la
> >>>>> ,-Sqlite,-Postgres...-when-good-tools-go-horribly-horribly-wrong.html
> >>>>
> >>>> John: whenever people post a URL without commenting up on it, I always
> >>>> ask them for their comments upon it.
> >>>>
> >>>> John: What do you think?
> >>>>
> >>>> and FYI, no, it is not bad SQL.
> >>>
> >>> I agree, and SQLite is doing the correct thing not to quote the table
> >>> names.
> >>>
> >>> Dan: do you think we could ease database conversion problems such as
> >>> this one by changing the make_postgresql_tables script to define the
> >>> table names using Bacula standard capitalization?
> >>
> >> I think the best thing to do is to stop using capitalization altogether.
> >>   Go lower case.
> >
> > That is not a solution will work for Bacula. First it would require
> > *massive* changes in Bacula source code. Second, a good number of studies
> > show that using either _ in variable names or using capitalization of the
> > parts significantly improves the readability.
> I hope there is a solution that will work everywhere.
> The SQL standard says that "SELECT * FROM FOO" should be the same as
> "SELECT * FROM foo"
> In short,  FOO == Foo == foo <> "Foo"
>  From what I understand, we're doing a lot of 'SELECT * FROM "Foo"'.
> If we stop putting quotes around the table and field names, that might
> solve a lot of the issues.

Actually I don't think your assesment here is correct. I have a feeling that 
your actually doing a lot of  SELECT * FROM Foo, which in postgres becomes 
SELECT * FROM foo and in Sqlite becomes SELECT * FROM Foo (which might look 
nice but is completly broken from a sql standard point of view). 

So... someone should look at the code and confirm that, because if you are 
doing SELECT * FROM Foo, then there is no way to fix this without modifiying 
the queries inside of bacula, which does up the bar considerably. 

Robert Treat
Build A Brighter LAMP :: Linux Apache {middleware} PostgreSQL

This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
Bacula-devel mailing list

This mailing list archive is a service of Copilot Consulting.