Apprendre à utiliser CPAN.
A propos de cette tâche
Pour ajouter un module Perl à partir du CPAN, vous devez exécuter la commande nzcpan et installer votre module en utilisant les commandes de l'application CPAN. Lorsque vous avez installé les paquets analytiques Netezza, configurez CPAN pour les hôtes et SPU et installez un module à tester.
Procédure
- A partir d'une ligne de commande, exécutez 'nzcpan host.
Si vous n'avez jamais exécuté la commande auparavant, acceptez les valeurs par défaut choisies par la commande.
[nz@host]$ nzcpan host
- Exécutez la commande suivante à l'invite " cpan.
install String::Util
Attendez la fin de la commande.
- Exécutez " nzcpan spu à partir de la ligne de commande.
Si vous n'avez jamais exécuté la commande auparavant, acceptez les valeurs par défaut choisies par la commande.
[nz@host]$ nzcpan spu
- Exécutez la commande suivante à l'invite " cpan.
force install String::Util
Dans ce cas, vous devez utiliser '
force car les ressources CPAN sont partagées (bien que les chemins pour Perl soient différents).
- Lorsque les installations sont terminées, quittez " nzcpan et créez l'AE suivante.
#########################################################################
package Unquote;
use nzae::Ae;
use strict;
use String::Util ':all';
use autodie;
our @ISA = qw(nzae::Ae);
my $ae = Unquote->new();
$ae->run();
sub _getFunctionResult(@)
{
my $self = shift;
# BREAK APART OUR ROW OF INPUT.
my $str = $_[0];
return unquote($str);
}
1;
#########################################################################
- Compilez et enregistrez le programme en procédant comme suit.
commands:/nz/export/ae/utilities/bin/compile_ae --language perl --version 3
--template deploy Unquote.pm
/nz/export/ae/utilities/bin/register_ae --language perl --version 3 --template
udf --exe Unquote.pm --sig "unquote(varchar(10000))" --return "varchar(10000)"
--level 4
- Test de l'installation.
[nz@host]$ nzsql
Exemple :
[nz@host]$ nzsql
Welcome to nzsql, the IBM Netezza SQL interactive terminal.
Type: \h for help with SQL commands
? for help on internal slash commands
\g or terminate with semicolon to execute query
\q to quit
SYSTEM(ADMIN)=> select unquote('"hello"');
UNQUOTE
hello
(1 row)