From: "David Evans" <[email protected]>
> This is my Perl:
>
> *********Begin Perl Code*********
> use DBIx::SQLEngine;
>
> $sqllist1 = "IF EXISTS (\nSELECT 1 FROM
> INFORMATION_SCHEMA.ROUTINES\nWHERE ROUTINE_NAME = 'GetDriveSize'\nAND
> ROUTINE_SCHEMA = 'dbo'\nAND ROUTINE_TYPE = 'FUNCTION'\n)\nBEGIN\nDROP
> FUNCTION dbo.GetDriveSize\nEND\nGO";
AWWWWWW.
First, you can put normal newlines into string literals in Perl and
second you can use the "quote-like operators" (see perldoc perlop) or
here-docs so that you do not have to keep on escaping quotes:
$sqllist1 = qq{
IF EXISTS (
SELECT 1 FROM INFORMATION_SCHEMA.ROUTINES
WHERE ROUTINE_NAME = 'GetDriveSize'
AND ROUTINE_SCHEMA = 'dbo'
AND ROUTINE_TYPE = 'FUNCTION'
)
BEGIN
DROP FUNCTION dbo.GetDriveSize
PRINT 'Dropped dbo.GetDriveSize'
END
GO
};
or
sqllist1 = <<'*END*';
IF EXISTS (
SELECT 1 FROM INFORMATION_SCHEMA.ROUTINES
WHERE ROUTINE_NAME = 'GetDriveSize'
AND ROUTINE_SCHEMA = 'dbo'
AND ROUTINE_TYPE = 'FUNCTION'
)
BEGIN
DROP FUNCTION dbo.GetDriveSize
PRINT 'Dropped dbo.GetDriveSize'
END
GO
*END*
> )) {
> print STDERR "Connected to $device_id database!\n";
> print STDERR "sql = $sql\n";
> my $fish1;
> print STDERR "sqllist = $sqllist1\n";
> $fish1 = $dbhstr->prepare($sqllist1);
> $fish1->execute();
> print STDERR "sqllist = $sqllist2\n";
> $fish2 = $dbhstr->prepare($sqllist2);
> $fish2->execute();
> my $fish = $dbhstr->selectall_array($sqllist3);
> print STDERR "Free Gb = $fish\n"
> }
> ...
And the error you received was ... ?
Jenda
===== [email protected] === http://Jenda.Krynicky.cz =====
When it comes to wine, women and song, wizards are allowed
to get drunk and croon as much as they like.
-- Terry Pratchett in Sourcery
_______________________________________________
ActivePerl mailing list
[email protected]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs