[prev in list] [next in list] [prev in thread] [next in thread]
List: php-db
Subject: Re: [PHP-DB] Query Question
From: maarten <maarten.foque () edchq ! com>
Date: 2011-05-23 12:32:55
Message-ID: 1306153975.6792.17.camel () localhost
[Download RAW message or body]
That's a very good point,
but since I use postgres that's one point that doesn't affect me and as
such didn't cross my mind at the time.
(Postgres uses schemas where mysql uses databases, a different database
on postgres usually means a different database machine. And joining
tables from different database machines isn't really plausible.)
I read the question as 'schema names' in stead of 'database names'.
On Mon, 2011-05-23 at 06:47 -0500, Bret Hughes wrote:
> I like to set the dbname in a config file and use it only for making the
> connection to the database. That way I can test/develop against
> different databases on the same server. By locking yourself into
> dbnames in the queries themselves I believe you loose a huge amount of
> environmental flexibility.
>
> Using tablenames and or aliases is something I do a fair amount of but
> only when joining or with complicated queries where clarity is an issue.
>
> On 05/23/2011 02:20 AM, maarten wrote:
> > I would keep the db names and/or schema names in your queries.
> >
> > It clarifies what you are doing with the query making it easier for
> > someone else to debug, improve, ... Certainly for those not familiar
> > with your db structure.
> >
> > I am not aware of any drawbacks that can result from this. (Ok, maybe
> > your program is a few bytes longer?)
> >
> > regards,
> > Maarten
> >
> > On Sun, 2011-05-22 at 05:27 -0400, admin@buskirkgraphics.com wrote:
> >> I have been working on a class methods for some time now.
> >>
> >>
> >>
> >> I have reached a cross road when it comes to common practice of developing
> >> query structure.
> >>
> >>
> >>
> >> Long ago I wrote queries where I just called the field I wanted on a
> >> particular table unless I was joining them.
> >>
> >>
> >>
> >> Example:
> >>
> >> $query = " SELECT id FROM Table WHERE Clause";
> >>
> >>
> >>
> >> Through time I developed a habit of queering as such.
> >>
> >> Example:
> >>
> >> $query = "SELECT tablename.id FROM db.table WHERE clause";
> >>
> >>
> >>
> >>
> >>
> >> I have felt that, because my server contains multiple databases and I needed
> >> to jump between databases and tables without changing the connector this
> >> always has been best practice for me.
> >>
> >>
> >>
> >> Someone recently told me,
> >>
> >> Rich,
> >>
> >> I do not agree with your design of the queries.
> >>
> >> There is no need to include the DB and table name in the query if you are
> >> not joining tables.
> >>
> >>
> >>
> >>
> >>
> >> While I have a very hard time understanding this response as being valid. I
> >> will propose the question.
> >>
> >>
> >>
> >>
> >>
> >> Is it bad practice to write queries with the database and table name in the
> >> queries even if I am NOT joining tables?
> >>
> >> Is there an impact from PHP or MySQL that is caused by doing so?
> >>
> >>
> >>
> >> I know this more a MySQL question but as PHP developers we all deal with
> >> queries on a day to day bases,
> >>
> >> and when developing more flexible class methods I build the queries in the
> >> method.
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >> Richard L. Buskirk
> >>
--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic