[Pdx-pm] (OT) SQL style question
Austin Schutz
tex at off.org
Thu Jan 13 15:33:10 PST 2005
On Thu, Jan 13, 2005 at 03:19:53PM -0800, Randall Lucas wrote:
> > Quoting column names and using periods as separators:
>
> I recommend against this, even if all your target database platforms
> support escaped identifier names with periods in them. For one thing,
> Class::DBI (and/or at least some of its related modules) doesn't play
> nice with quoted names. I got a good ways into an implementation that
> worked with all of my own software, using odd but escaped names on
> Postgres, but found myself in a world of hurt when trying to use a
> number of automation tools for SQL.
>
> If you have the luxury, ban leading, trailing, and double underscores in
> all db identifiers except for the prefixed names. That should preserve
> uniqueness of __ so that you can do a s/__/\./g to change names back.
>
This is pretty unrelated, but it reminded me of something truly
obvious I "discovered" recently.
Perl let's you use qq{}; as a double quoting mechanism. That's
really handy for code like:
$statement = qq{
SELECT $table."bar.baz" FROM $table where "bar.baz" LIKE 'STUFF%'
};
where you have both single and double quotes in the mix. Also
makes it easy to maintain indentation without too much ugliness, as opposed
to constructs like
$statement = <<' EOF'
SELECT ...
EOF
;
One of those features in perl that I always knew about but never
considered using until fairly recently. Well, I did say it was obvious. :-)
Austin
More information about the Pdx-pm-list
mailing list