Dkid Posted August 18, 2009 at 03:41 PM Report #283732 Posted August 18, 2009 at 03:41 PM Para realizarem este exemplo vão necessitar de uma base de dados (PostgreSQL ou MySQL). Para criarem a tabela: CREATE DATABASE perldb; CREATE TABLE tblutilizador ( id integer NOT NULL, nome character varying(50), idpasswd integer NOT NULL, CONSTRAINT tblutilizador_pkey PRIMARY KEY (id) ) insert into tblutilizador values('1','maria','213'); Na realidade eu ia criar duas tabelas, uma com o nome do utilizador e outra com a password associada ao mesmo, mas estou um pouco esquecido de sql, portanto fica apenas com uma tabela, que serve bem para o exemplo. Uma vez a base de dados criada, vamos passar ao perl: #!/usr/bin/perl use strict; use DBI; #Precisamos dele para realizarmos a ligação na base de dados #realiza a ligação na base de dados 'perldb', user, password my $dbcon = DBI ->connect("dbi:Pg:dbname=perldb","nome","pass"); # caso sejam fans de mysql-> dbi:mysql:perldb #realiza o select my $sql = $dbcon->prepare("select * from tblutilizador"); $sql->execute(); #envia o pedido para executar o select #retorna os valores while(my $out = $sql->fetchrow_hashref()) #retorna a linha da tabela { print "$out->{'nome'} utiliza o idpasswd $out->{'idpasswd'}\n"; #vai retornar as colunas nome e idpasswd } #fecha a ligação $dbcon->disconnect(); ## Output: # maria utiliza o idpasswd 213 PS: Queria perguntar como é que podemos inserir os valores nas tabelas sem sabermos o id? EDIT : Já descobri, estou mesmo enferrujado. insert into tblutilizador values((select max(id)+1 as idx from tblutilizador),'magda','1233'); select * from tblutilizador; Fontes: http://www.perl.com/pub/a/2003/10/23/databases.html http://articles.techrepublic.com.com/5100-10878_11-6039937.html I promise that I will not change the PATH variable again other than:PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
falco Posted September 30, 2011 at 02:29 PM Report #414148 Posted September 30, 2011 at 02:29 PM Se usasses um numero que auto-incrementa não tinhas que te preocupar com isso...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now