/ Forside / Teknologi / Udvikling / Perl / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Perl
#NavnPoint
bjarneA 141
poul_from 50
soccer 30
Nicknack 14
Tmpj 0
Perl, Apache og Postgresql
Fra : M


Dato : 18-11-01 17:56

Hej!

Jeg er ny inden for Linux. Jeg har installeret et RedHat 7.2 system og vil
nu gerne forsøge at lave et Apache web site, der trækker på en postgresql
database. Jeg har installeret Apache, fået den konfigureret så jeg kan
afvikle Perl scripts server side og postgresql ser også ud til at køre (jeg
kan ihvertfald logge ind som postgres bruger og oprette tabeller samt
tilføje data).

Er der nogen, der ved, om jeg mangler noget for at kunne hive oplysninger ud
af databasen? Og vil det være muligt at se et eksempel på, hvordan det
gøres? Jeg har tidligere kun beskæftiget mig med ASP, IIS5 og SQL server...

På forhånd tak for evt. tips og eksempler.

Morten



 
 
Peter Makholm (19-11-2001)
Kommentar
Fra : Peter Makholm


Dato : 19-11-01 07:42

"M" <morten_skovgaard@hotmail.com> writes:

> Er der nogen, der ved, om jeg mangler noget for at kunne hive oplysninger ud
> af databasen? Og vil det være muligt at se et eksempel på, hvordan det
> gøres? Jeg har tidligere kun beskæftiget mig med ASP, IIS5 og SQL server...

Du skal bruge modulerne DBI og DBD::Pg. Læs dokumentationen til disse,
der står beskrevet hvordan man gør:

$ perldoc DBI
$ perldoc DBD::Pg

--
Når folk spørger mig, om jeg er nørd, bliver jeg altid ilde til mode
og svarer lidt undskyldende: "Nej, jeg bruger RedHat".
-- Allan Olesen på dk.edb.system.unix

wulff (19-11-2001)
Kommentar
Fra : wulff


Dato : 19-11-01 09:24

On Sun, 18 Nov 2001 17:55:34 +0100, "M" <morten_skovgaard@hotmail.com>
wrote:

>Er der nogen, der ved, om jeg mangler noget for at kunne hive oplysninger ud
>af databasen?
Umiddelbart mangler du kun at installere de Perl-moduler, der følger
med postgresql (jeg kan ikke lige huske om de bliver installeret
automatisk) _eller_ DBI med den tilhørende driver. Det sidste er nok
at foretrække...

>Og vil det være muligt at se et eksempel på, hvordan det
>gøres? Jeg har tidligere kun beskæftiget mig med ASP, IIS5 og SQL server...
Jeg har smidt et kort eksempel med hhv. postgresql's eget perl modul
og DBI i bunden af denne meddelelse.

/wulff


#!/usr/bin/perl
# postgresql's eget modul

use strict;
use Pg;

# connect to database
my $conn = Pg::connectdb("dbname=worldonline");
die "$conn->errorMessage" unless $conn->status eq
Pg::PGRES_CONNECTION_OK;

# build query
my $query = <<SQL;
SELECT *
FROM t_contacts
WHERE name = 'test'
SQL

# execute query
my $result = $conn->exec($query);
die "$conn->errorMessage" unless $result->resultStatus eq
Pg::PGRES_COMMAND_OK;




#!/usr/bin/perl
# med DBI

use strict;
use DBI;

# connect to database
my $DBH = DBI->connect(<DSN>, <username>, <password>)
or die "$DBI::errstr";

# build query
my $query = <<SQL;
SELECT *
FROM t_contacts
WHERE name = 'test'
SQL

# execute query
my $STH = $DBH->prepare($sql) or die "$DBI::errstr";
$STH->execute() or die "$DBI::errstr";

# print results
while ( my $row = $STH->fetchrow_hashref() )
{
   print "$row->{id}\t$row->{name}";
}

# disconnect from database
$DBH->disconnect or die "$DBI::errstr";


Søg
Reklame
Statistik
Spørgsmål : 177579
Tips : 31968
Nyheder : 719565
Indlæg : 6409075
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste