PerlGtk.pl

  
Menu główne
use PerlMongers::Warszawa;
use PerlMongers::Krakow;
NG_gRadio
Perl a Dane Tymczasowe
  przez wrares (57 odsłon)
Większość piszących oprogramowanie, przechowuje dane tymczasowe w różnych strukturach. Mogą to być skalar, tablica, hasz, plik. Struktury te pozwalają danym zapisać, odczytać, podmienić, usunąć, nadać status trwałości. W ekosystemie Perla, istnieje wiele mechanizmów które Nam ułatwiają to zadanie. Jedne są bardziej, inne mniej przystępne. Szczególnie jeśli dotyczy to początkujących adeptów Perla. Dziś chcemy zaproponować trochę inne podejście do tematu. A mianowicie wykorzystanie aparatu bazodanowego do tymczasowego przechowywania danych.

Chcielibyśmy
Cytat:

(1) Dowolną ilość danych zapisać, zmienić, usunąć, odczytać, podmienić
(2) Nie chcemy utrwalać danych
(3) Chcemy nimi w łatwy sposób manipulować


Co potrzebujemy
Cytat:

(1) Ekosystem Perla
(2) DBI...
(3) DBD-SQLite...
(4) SQLite...


Poniższy program przybliży Nam to zagadnienie
#!/usr/bin/perl


use strict;
use warnings;

use DBI;

my $dbh = DBI->connect("dbi:SQLite:dbname=:memory:", "", "", { RaiseError => 1 });
$dbh->do("CREATE TABLE pracownik (numer, nazwisko, imie, data)");
$dbh->do("INSERT INTO pracownik VALUES (1,'Marchewka','Janina','24-12-2009')");
$dbh->do("INSERT INTO pracownik VALUES (2,'Pietruszka','Magda','07-10-1987')");
$dbh->do("INSERT INTO pracownik VALUES (3,'Puchatek','Tomasz','02-01-1075')");
$dbh->do("INSERT INTO pracownik VALUES (4,'Kowalski','Jan','15-08-1966')");
$dbh->do("INSERT INTO pracownik VALUES (5,'Zebra','Piotr','11-03-1983')");

my $sth = $dbh->prepare("SELECT * FROM Pracownik");

$sth->execute;

while(my $wiersz = $sth->fetch) {

print join(", ", @$wiersz), "\n";

}

$sth->finish;

$dbh->disconnect;


Patrząc na zapis tego kodu, możemy wyszczególnić kilka elementów
Cytat:

(1) Brak trwałości zapisu :memory:
(2) Dane przechowujemy w bazie danych
(3) Różnorodność typów danych
(4) Dostępne, bazodanowe mechanizmy manipulacji


Dlaczego proponujemy taki wybór.
Cytat:

(1) Jest prosty i przejrzysty
(2) Łatwy w pielęgnacji
(3) Dobrze podatny na zmiany i łatwy w rozbudowie
(4) Dostępny mechanizm bazodanowy do manipulacji danymi
(5) Łatwa integracja z innymi bazami danych


Zachęcamy Wszystkich do skorzystania z proponowanego rozwiązania, szczególnie w tych obszarach, gdzie prostota kodu, jego funkcjonalność powinny odgrywać decydującą rolę.









Powrót
Szukaj w PerlGtk.pl
The Perl Job site
Szukaj kodu :