Next Previous Contents

19. Applicazioni e strumenti per PostgreSQL

19.1 4GL per applicazioni web database con PostgreSQL - AppGEN Development System

AppGEN può essere scaricato da

AppGEN è un linguaggio ad alto livello di quarta generazione, ed un generatore di applicazioni per produrre applicazioni basate sul World Wide Web (WWW). Queste applicazioni sono tipicamente usate in internet o nelle intranet aziendali. Le applicazioni AppGEN sono implementate come script C conformi al Common Gateway Interface (CGI), che è uno standard supportato dalla maggior parte dei Web Server.

Per usare AppGEN vi servirà quanto segue:

PostgreSQL, sistema di gestione di database relazionali (RDMBS).

Un Web server compatibile con CGI, come l'HTTPD di NCSA.

Un compilatore ansi C come GCC.

AppGEN consiste dei seguenti eseguibili Unix (Linux):

L'autore, Andrew Whaley, può essere contattato all'indirizzo

19.2 Interfaccia Web WWW per PostgreSQL - DBENGINE

Dbengine, un'interfaccia Web plug 'n play per PostgreSQL, è stata creata da Ingo Ciechowski. La trovate al sito

Qualche informazione su DBENGINE: dbengine è un'interfaccia tra il Web e Postgres95, che fornisce un semplice accesso a qualsiasi database esistente in pochissimi minuti.

PHP offre un linguaggio simile al Perl per i vostri documenti, ma non è un vero Perl; per contro AppGen e wdb-p95 richiedono la creazione di un qualche file di configurazione per ognuno dei vostri database; sembra quindi che, prima di poter iniziare a usare questi strumenti, si debba imparare una qualche specie di nuovo meta linguaggio.

Diversamente da altri strumenti, per iniziare ad usare dbengine non dovete imparare qualche speciale linguaggio di programmazione o di scripting. Inoltre non si deve realizzare un file di configurazione per ogni database, così non dovete familiarizzare con questa nuova struttura. Comunque, nel caso vogliate accedere a tutte le funzionalità di dbengine, dovreste conoscere il linguaggio Perl.

L'intero sistema può essere configurato mediante la semplice manipolazione di un database aggiuntivo, che contiene informazioni riservate riguardanti il vostro accesso al database. Potete anche specificare Campi virtuali che vengono calcolati al volo poco prima di essere visualizzati sullo schermo.

19.3 Un modulo del Webserver Apache per PostgreSQL: NeoWebScript di NeoSoft

Apache è un notissimo Server Web. Un modulo, per interfacciare PostgreSQL ad Apache Webserver, è reperibile presso:

NeoWebScript è un linguaggio di programmazione che permette a programmi semplici o complessi di essere incorporati in file HTML.

Quando viene richiesta una pagina HTML con codice NeoWebScript incorporato, il server Web, abilitato all'esecuzione dei NeoWebScript, esegue il codice script incorporato, producendo una pagina web dal contenuto appositamente creato dal programma.

NeoWebScript è un modo rapido, sicuro, facile da apprendere, per realizzare programmi interattivi nel codice HTML delle pagine web, ed ospitati su server. Con NeoWebScript i contatori, i form per email, i graffiti wall, i guest book ed il tracciamento dei visitatori, sono facilissimi, anche per un programmatore alle prime armi. Potrete verificare che NeoWebScript non teme rivali, come PERL e JavaScript.

Se volete installare NeoWebScript sul vostro server web, il vostro Webmaster dovrebbe leggere, per cominciare, la nostra Sysop FAQ. In 'Theory of Operations' si renderà chiaro il funzionamento di NeoWebScript, mentre l'installazione procederà passo dopo passo. 'Management' tratta di questioni riguardanti la configurazione ed il funzionamento del server; i test vi permetteranno di verificare la correttezza delle operazioni di NeoWebScript, e 'troubleshooting' tratta dei problemi del server.

Usare NeoWebScript-2.2 non comporta alcuna spesa per voi, per il vostro ISP, la vostra intranet o extranet. Potrete leggere la licenza durante la registrazione per il download; notate che esiste un costo di 99 $ se volete incorporarlo nei vostri prodotti, od usarli in un server commerciale (come SSL)

NeoWebScript è un modulo per il server Web Apache che vi permette di includere il linguaggio di programmazione Tcl/Tk, nelle vostre pagine web, come strumento di scripting. È stato inventato da Karl Lehenbauer, Chief Technical Officer della NeoSoft, ed è documentato, migliorato ed esteso dai programmatori della NeoSoft e da redattori di documenti tecnici.

Il server web Apache è il più diffuso server web del mondo, ed il suo uso è stimato al 68% dei siti sondati.

Tcl/Tk è il potente e gratuito linguaggio di scripting multipiattaforma sviluppato dal Dr. John Ousterhout. Utilizzando le sue stesse parole:

"Tcl/Tk permette agli sviluppatori di software di far girare i programmi dieci volte più rapidamente di quanto possano fare i toolkit basati su C o C++. Esso è anche un pregevole linguaggio di interconnessione, che permette di far funzionare insieme le applicazioni già esistenti, e di dotarle di migliore grafica e di interconnessione ad Internet".

Karl Lehenbauer, Fondatore e Chief Technical Officer di NeoSoft, è stato parte del team di sviluppo delle primissime versioni di Tcl/Tk. Insieme con Mark Diehkans, è l'autore di Extended Tcl, noto anche come TclX o NeoSoft Tcl, che è un potente insieme di estensioni al linguaggio. Molti degli attuali comandi Tcl sono stati creati in Extended Tcl, e sono stati inclusi del nucleo del linguaggio dal Dr. Ousterhout.

NeoSoft Inc., 1770 St. James Place, Suite 500, Houston, TX 77056 USA

19.4 HEITML: estensione lato server dell'HTML, e linguaggio 4GL per PostgreSQL

Lo strumento heitml è un altro modo di interfacciare postgres con il world wide web. Per maggiori dettagli contattate

          Helmut Emmelmann H.E.I. Informationssyteme GmbH
          Wimpfenerstrasse 23 Tel. 49-621-795141
          68259 Mannheim Germany Fax. 49-621-795161

heitml è un'estensione dal lato server dell'HTML e, nello stesso tempo, è un linguaggio 4GL. Ci si può scrivere applicazioni web utilizzando lo stile HTML, usando nuovi marcatori simili a quelli dell'HTML.

heitml (pronunciato h-ai-TML) è un'estensione dell'HTML, ed è un linguaggio di quarta generazione ricco di funzionalità; esso permette alle applicazioni, basate su Web, di interagire con i dati archiviati nei database SQL, evitando di far ricorso a complessi script CGI.

heitml estende HTML nel lato server, convertendo dinamicamente i file ".hei" nel formato HTML, e rimanendo così compatibile con qualsiasi browser web. Heitml accetta la comoda sintassi HTML e fornisce un vasto assortimento di marcatori pre-sviluppati e librerie, per gestire i compiti che in precedenza richiedevano il CGI. Come XML, heitml fornisce marcatori definiti dall'utente. Con heitml, i marcatori definiti dall'utente possono essere tradotti in HTML ed inviati ad un browser.

heitml può interessare sia i designer HTML che i programmatori professionali. I designer HTML possono usare i marcatori heitml per costruire pagine web dinamiche, per accedere a database SQL, o per creare applicazioni web complete. Contatori, database di registrazione, form di ricerca, form di e-mail, o menu gerarchici, possono tutti essere creati semplicemente usando marcatori pre-sviluppati, simili ai marcatori HTML, reperibili nelle moltissime librerie di componenti.

I programmatori troveranno in heitml un linguaggio completo di quarta generazione incorporabile nel codice HTML

          (ad es. con i marcatori <if>, <while>, e <let>),

inoltre heitml ammette una potente valutazione delle espressioni con i tipi di dati interi, reali, booleani, stringhe e n-uple. Le n-uple hanno riferimenti semantici come nei moderni linguaggi orientati agli oggetti e vengono memorizzate in un heap. Le variabili heitml, comprese tutte le strutture di dati complessi memorizzate nel heap, conservano i loro valori tra le pagine utilizzando la Modalità di Sessione (Session Mode). È possibile definire marcatori personalizzati o marcatori di ambiente, e persino ri-definire i marcatori HTML.

heitml rende possibile

- - - sviluppare siti Web in modo strutturato e modulare, riducendo drasticamente il superlavoro di manutenzione.

- - - sviluppare siti Web intelligenti ed interattivi, con contenuto che si adatta dinamicamente alle necessità dell'utente.

- - - mostrare il contenuto dei database SQL con il solo utilizzo della nostra libreria di marcatori "dba" predefiniti.

- - - sviluppare database complessi ed applicazioni per Cataloghi di Vendita utilizzando Variabili di Sessione (Session Variables)

heitml gira sotto Linux con qualsiasi server Web che utilizzi l'interfaccia CGI, ed è particolarmente veloce (evitando gli overhead del CGI) all'interno del Server Web APACHE, utilizzando le API apache. Attualmente MSQL (Versione 1 e 2), PostgreSQL (Versione 6), mysql, e gli altri database d'uso comune sono supportati). heitml, inoltre gira su Linux, BSDi, Solaris e SunOS, come anche su Windows NT con CGI, ISAPI, ODBC e Windows 95.

heitml (su linux) è gratuito per studio, per uso privato e non-commerciale. I siti Web commerciali devono pagare la licenza. La versione pienamente operativa di heitml, utilizzabile liberamente per un periodo di prova, è liberamente scaricabile. (Notate, comunque, che ogni Pagina Web ".hei" da voi sviluppata, visualizzerà un messaggio che identifica la vostra versione di heitml come quella per un uso non-commerciale). Dopo la registrazione, riceverete una chiave per disattivare il messaggio senza dover re-installare il programma.)

heitml (si pronuncia "h-ai"-TML) estende e migliora significativamente la funzionalità del linguaggio HTML con la definibilità dei marcatori e con le sue reali qualità di linguaggio di programmazione. Ciò rende possibile realizzare applicazioni con contenuto dinamico ed applicazioni con accesso ai database, semplicemente all'interno del mondo HTML, senza dover ricorrere al CGI e a linguaggi di programmazione o di scripting esterni. Ciò significa che voi, in qualità di autori web, potete aggiungere applicazioni nelle vostre pagine, usando semplicemente alcuni marcatori nuovi senza ricorrere al CGI e senza programmare. Invece, in qualità di utente esperto o di programmatore, potete creare e programmare potenti librerie di marcatori. Questo approccio rende heitml adeguato sia ai principianti dell'HTML sia ai programmatori professionisti. heitml gira sul server web e genera codice HTML dinamicamente, così heitml è compatibile con gli standard di internet e con qualsiasi browser web. Inoltre heitml permette un accesso completo ai database e mette al riparo l'utente dalla complessità non necessaria del CGI. heitml è stato sviluppato secondo le più recenti ricerche riguardo la realizzazione di compilatori e dei sistemi di transazione.

Le pagine heitml vengono sviluppate proprio come le pagine HTML, con un editor di testi o con un editor HTML, e vengono posizionate su un server web come si fa solitamente. Tuttavia ora le pagine possono contenere marcatori heitml dinamici, e possono accedere a librerie di marcatori. Potete usare questi marcatori per accedere al database, per creare contenuto dinamico, per inviare email, ed anche per creare applicazioni potenti come database di registrazione e sistemi di commercio elettronico.

I principianti dell'HTML ed i programmatori professionisti, saranno stupiti di come sia rapido e facile progettare applicazioni eccitanti, come un Guestbook Interattivo, senza dover ricorrere all'apprendimento di complessi e difficili script CGI; sarà sufficiente usare gli strumenti forniti dalla vostra Libreria dba.

heitml è fornito di un'ampia gamma di librerie di marcatori per creare guestbook, applicazioni per la manutenzione dei database, moduli per interrogazioni estendibili, potenti moduli per email, oppure per strutturare il vostro sito web utilizzando un menu gerarchico. Questi strumenti sono pronti all'uso, ed è sufficiente aggiungere i marcatori opportuni al vostro sito.

Se siete esperti programmatori potete fare pieno uso dell'architettura basata sulle n-uple dinamiche e persistenti: heitml non è soltanto un linguaggio di scripting con gestione dinamica dei tipi di dati, con una potente valutazione di espressioni, con procedure ricorsive, e con la funzionalità del passaggio dei parametri; esso fornisce anche la persistenza dinamica delle n-uple per mantenere automaticamente i dati della sessione, di qualsiasi dimensione essi siano.

19.5 Web Server AOL di America On-line per PostgreSQL

AOLserver, il webserver commerciale gratuito, supporta connessioni ai database di PostgreSQL. Per maggiori informazioni vedere

AOLserver è un webserver veloce, dotato di multithread, ed in grado di usare il Tcl. Non solo: esso è una piattaforma completa per sviluppo di back-end per database. Con AOLserver potete gestire connessioni multiple a PostgreSQL (e ad altri RBDMS) che possono essere divise tra diversi thread. AOLserver ha una API Tcl e C che vi permette di sviluppare potenti siti web dinamici. Tutto ciò avviene fin dal 1995. AOLserver è stato rilasciato sotto la licenza APL (AOLserver Public License) oppure sotto licenza GPL, e perciò è software del tutto libero. L'API Tcl è quella maggiormente utile per i siti web. AOLserver ha un set di potenti chiamate Tcl, come ns_sendmail (per inviare e-mail), ns_httpget (per ottenere un URL), ns_schedule (una funzionalità simile a cron per pianificare procedure da far girare in momenti specifici), ecc. Potete anche estendere molto facilmente le capacità di AOLserver con le API Tcl. Ogni server virtuale AOLserver può avere la sua propria "libreria" privata di script Tcl, i quali vengono sottoposti ad analisi (parsing) da AOLserver, e divengono accessibili da qualsiasi pagina interna a quel server virtuale. Potete sviluppare pagine per AOLserver in tre modi: - HTML semplice - pagine .tcl -- si tratta di programmi tcl che possono restituire codice HTML per mezzo della chiamata ns_write. - pagine .adp -- AOL Dynamic Pages. Potete sviluppare le vostre pagine in semplice HTML ma potete mandare in esecuzione codice Tcl usando <% %> o <%= %> alla maniera di PHP o di ASP. Se è già un grande server web con una superba architettura, AOLserver è addirittura splendido quando è usato per connettività a database. AOLserver ha un suo proprio strato (layer) di astrazione del database, che vi mette in grado di connettervi a diversi RDBMS senza dover modificare affatto il vostro codice. Le connessioni al RDBMS sono associate tra loro, sono persistenti, e sono divise tra diversi thread. Ciò permette connessioni molto rapide ed un efficiente uso delle risorse. AOLserver è munito di driver per tutti i più importanti RDBMS: PostgreSQL, Oracle, Sybase, Informix, Illustra, Solid, Interbase, MySQL.

19.6 Problem/Project Tracking System Application Tool per PostgreSQL

Si trova presso

19.7 Conversione di file dbase dbf a PostgreSQL

Il programma dbf2msql funziona bene con mSQL e PostgreSQL. Potete trovarlo presso

Questo programma è stato scritto da Maarten Boekhold, della Facoltà di Ingegneria Elettronica, sezione di Architettura dei Computer e Tecniche Digitali a Delft, in Olanda.

Potete anche usare un metodo di python per leggere i file dbf e caricarli (farne il load) in un database postgres.

19.8 Conversione di file database MDB di Microsoft Access in PostgreSQL

MDB Tools è un insieme di librerie e di programmi di servizio, progettati per facilitare l'esportazione di dati dai database MS Access (file mdb) nei database multiutente come Oracle, Sybase, DB2, Informix, MySQL, Postgresql, o simili.

19.9 Client Zeos

"Zeos" è un programma prodotto per lo sviluppo e l'amministrazione delle applicazioni database, con uso di server SQL OpenSource: MySQL, PostgreSQL e InterBase http://www.zeos.dn.ua/eng/index.html

19.10 Report Writer in Java

Generic Report Writer è un software, guidato da menu, per effettuare report. Non è un'interfaccia di tipo drag-and-drop. Funziona con PostgreSQL, MySQL, e Access. Probabilmente funzionerà con qualsiasi altro database a patto che si abbia la versione 1 del driver JDBC Tipo 4. Si trova presso http://www.geocities.com/SiliconValley/Ridge/4280/GenericReportWriter/grwhome.html


Next Previous Contents