Newsgroup: it.comp.software.database
Titolo: Ok, ci provo: le mini-faq del gruppo...

"E' uno sporco lavoro ma qualcuno deve farlo"... ecco un'abbozzo
di FAQ. Sono graditi i commenti e le correzioni, ma mandatemele in
mail privata senno' intasiamo il gruppo...
Davide
Le mini-faq di it.comp.software.database
Questo e' un piccolo elenco di domande ricorrenti sul gruppo di
discussione it.comp.software.database, l'ho messo insieme nella speranza
che qualcuno di tanto in tanto se lo legga ed eviti di fare sempre le
stesse domande.
Io ho cercato di dare tutte le notizie giuste, nel caso di link a siti
vari, ovviamente il sito puo' essere down, morto o quant'altro, in
questo
caso mandatemi una mail e correggero' la cosa.
Davide Bianchi (davidebianchi_AT_davidebianchi.net)
===========================================================================
1. Dove trovo una guida/manuale per il tal database ?
2. Posso installare il tal database su WinXX ?
3. Dove trovo informazioni sull'SQL ?
4. Quali database esistono/quale e' il migliore ?
5. Dove trovo i driver per il tal database ?
===========================================================================
1. Dove trovo una guida/manuale per il tal database ?
A parte che se avete il database dovreste avere anche la documentazione,
la prima cosa da fare e' guardare sul sito del produttore/distributore
del
database in questione, quasi sempre esiste la possibilita' di consultare
un manuale/guida per il prodotto. In alcuni casi c'e' anche la
possibilita'
di scaricare il manuale/guida per poterlo stampare e/o consultare con
comodo.
Per i principali database potete riferirvi a questi siti:
Oracle:	
http://technet.oracle.com
 (bisogna registrarsi, ma e' gratuito)
Microsoft SQL Server: 
http://msdn.microsoft.com
MySQL: 
http://www.mysql.com
PostGres: 
http://www.postgresql.org
2. Posso installare il tal database su WinXX ?
Se il database in questione e' un SERVER di database (aka: e' composto
da
una parte 'server' e da una parte 'client'), in generale la risposta e'
"ni". Nel senso che, esistono delle versioni "ridotte" che funzionano su
Win 9X ma con funzionalita' limitate. Per installare un Server di
database
vi serve un sistema operativo con funzionalita' di Server, quindi
Windows NT (2K server, Xp Server etc.) o Linux/Unix.
In ogni caso, riferirsi _SEMPRE_ alla documentazione del database che si
vuole installare dove c'e' scritto quale e' la piattaforma minima sia 
hardware che software.
3. Dove trovo informazioni sull'SQL ?
Esistono varie "guide" sull'SQL, potete provare con questa per
cominciare:
http://www.html.it/sql/index.html
Teniamo poi presente che ogni database ha il suo "dialetto", quindi
la cosa migliore e' sempre di riferirsi alla documentazione del proprio
database.
4. Quali database esistono/quale e' il migliore ?
Allora, non esiste un "database" per eccellenza, ne esistono diversi che
hanno diverse caratteristiche. Il trucco sta' nello scegliere quello che
risolve il problema senza crearne altri 10. Questa e' una (breve)
carrellata di possibilita':
MySQL - basato su mSQL, e' un database server freeware ed OpenSource,
con cio' significa che potete installarlo senza pagare niente a nessuno
ed avete anche i sorgenti se vi interessano. Leggero ma efficiente, non
supporta Stored Procedure, Triggers et similia ma per molte applicazioni
va' piu' che bene. Esiste per Windows e per Unix/Linux.
PostGres - un po' piu' pesante di MySQL ma supporta anche stored
procedure. Purtroppo il server esiste solo per Unix/Linux.
Microsoft Access - questo qui' io stento a chiamarlo un database.
Microsoft SQL Server - pesa come un mattone, costa come una Rolls Royce
ed ha lo svantaggio di funzionare solo in ambiente Microsoft.
L'interfaccia
di gestione totalmente grafica potrebbe provocare dei problemi se
dovesse
essere gestito in remoto.
Oracle - pesa come un mattone, costa come una Rolls Royce solido e
stabile
come la statua della liberta'. E' il database piu' usato in ambiente
aziendale grazie alla sua robustezza ed al fatto che e' disponibile per
qualunque piattaforma (Win/Linux/Unix). Purtroppo tanta flessibilita' si
paga: gestirlo non e' uno scherzo.
5. Dove trovo i driver per il tal database ?
Se non sono forniti insieme al database, vedere per prima cosa sul sito
del produttore, poi vedere se ci sono dei driver "generici" che vanno
bene con il linguaggio/programma che si sta' usando.
Alle brutte fare una ricerca con Google (o il vostro motore di ricerca
preferito).
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG


Due paroline su InterBase... L'idea che me ne sono fatto è che 
rappresenta il miglior compromesso fra tutti quelli nominati sopra: 
multipiattaforma, completo, leggero.
O no?
Michele

 Microsoft Access - questo qui' io stento a chiamarlo un database.
E' sintomo di singolare ignoranza paragonare un File-Sharing a motori
Server.
Microsoft Jet sopravanza nettamente qualunque altro motore File-Server
quindi, nel suo ambito, è ottimo (per varie casistiche è molto meglio di
voluminosi DBMS).
Anche il giudizio su MS SQL-Server è insoddisfacente e denota inesperienza
sul prodotto e tanta voglia di tuttologia.
Realizzare un abbozzo di FAQ serio, richiede un confronto con l'esperienza
di altre persone: fatti un esamino di coscienza.
Ciao.

 di altre persone
E secondo te perche' l'ho pubblicato qui' senno' ? Dammi una mano
e ri-scrivi il paragrafo...
Davide


 Due paroline su InterBase...
Non ci ho mai lavorato sopra, puoi scrivere un paragrafo da
aggiungere?
Davide


 e ri-scrivi il paragrafo...
La verità è che ognuno dovrebbe dare un giudizio sul prodotto che usa
quotidianamente per lavoro: nel mio caso Sql Server 7.0.
Il Server su cui è installato (e le connessioni sono davvero
tante) è tutt'altro che sovradimensionato, di conseguenza l'espressione
"pesa come un mattone" mi pare fuori luogo.
Non sarà forse che molti si interfaccino a DBMS con drivers ODBC sperando
chissà che?
Ciao.

 aggiungere?
Prendi quel che serve.
I siti che conosco sono in inglese.
www.interbase.com
 che e' equivalente a
www.borland.com/interbase/
www.ibphoenix.com
Interbase 6 è open source, le versioni Borland e Ibphoenix sono solide 
(e per quel che ne so, anche le uniche).
L'ultima e' la 6.5 Borland e la 1.0 FireBird(IbPhoenix), e sono similari 
(sul sito IbPhoenix c'e' un confronto).
Multipiattaforma (per la lista consulta i siti), esiste in due versioni 
(classica e superserver) anche se non per tutte le piattaforme, e 
supporta tre dialetti (difatto compatibilità verso versioni precedenti).
Ogni Database è un file con estensione .GDB e basta: tutto in uno, e 
quindi la gestione è semplicissima e lo fa molto solido, a differenza di 
altri RDBMS su piu' file.
Un applicativo puo' collegarsi a piu' di un DB, anche su diversi server.
Supporta Trigger multipli Before e After (Insert, Update e Delete).
Supporta stored procedures standard, e Select Stored Procedures (di 
fatto procedure che utilizzano un cursore monodirezionale) che possono 
essere utilizzate nelle SELECT. Sono una mano santa nelle query complicate.
Per la gestione delle transazioni usa una tecnica chiamata "VERSIONING" 
che di fatto elimina l'esigenza dei lock (e quindi il pericolo del 
deadlock); ad esempio questo sistema permette di effettuare il backup 
con il database in uso di altri utenti.
Gestisce (all'interno dello stesso DB) l' integrita' referenziale 
(CASCADE, DELETE, ...).
Tempo fa vantavano di essere il RDBMS piu' vicino allo standard SQL. 
Adesso non so, ma sinceramente...
Ovviamente c'e' tutto quello che uno pensa di trovare in un solido 
RDBMS: gestione delle chiavi primarie, indici, gestione dei campi, 
check, campi calcolati, ridefinizione dei campi senza modifica dei dati 
(versioning anche dei dati e di qualsiasi altra definizione del DB)
Supporta il 2PC (Two Phase Commit) per controllare se nella transazione 
tutti i DB connessi non riporterebbero errori nella Commit.
Il dialetto 3 _è_ Interbase 6. I dialetti 1 e 2 non hanno certe features 
sono solo stati corretti gli stessi buchi del dialetto 3.
La bug list è pubblica e consultabile, e contiene spesso i workaround.
Richiede meno potenza di Oracle, pero' e' piu' lento nella connessione 
iniziale e le query non le ottimizza benissimo "da solo": si puo' pero' 
dargli un PLAN per definire gli indici da usare e bisogna essere attenti 
nell'uso delle SELECT STORED PROCEDURE e di non innestarne troppe a cascata.
Il suo target (in Italia) sono le applicazioni di medio-grandi 
dimensioni, dove Access non ci arriva e dove Oracle costa troppo 
(sopratutto di gestione: quanto costa un Oracle RDBMS administrator con 
le OO ? ).
Ciao.
Mimmo.

 O no?
No, almeno IMHO.
Ho usato spesso sia InterBase che PostGres, e tra i due non esiterei a
preferire Postgres in ogni contesto.
A favore del primo, ho riscontrato solo una maggior ottimizzazione in
ambienti Win nei confronti del secondo che invece ha bisogno di cygwin per
girare, anche se ottimizzazione non è il termine esatto in quanto su O.S
Microsoft, Interbase va davvero lentino.
Forse in futuro InterBase riuscirà a migliorare le sue performances, ma allo
stato attuale, sempre IMHO, lo trovo inferiore a Postgres.
--
Pasquale Vazzana


Alla fine, mi sembra che ne fai soprattutto una questione di velocità.
Io ho detto multipiattaforma, completo, leggero, non veloce.
Aggiungo il supporto nativo per Delphi/Kylix che non mi sembra una cosa 
da poco, almeno in certi casi.
Però sono solo idee (neppure opinioni) visto che che è solo il mio 
candidato più quotato per un lavoro dove le performances da record non 
sono al primo posto.
Michele Giordano

 sono al primo posto.
E' chiaro rimangono idee anche le mie e più o meno tutte quelle espresse di
solito su un NG, alla fine conta prima di tutto l'esperienza e la
valutazione diretta.
In ogni caso ho voluto riportare la mia esperienza reale e non fare
propaganda gratuita a rischio di sembrare fanatico di uno o dell'altro
prodotto.
--
Pasquale Vazzana


Sono colpito da questo giudizio così severo su un database che il "Java 
magazine" considera secondo solo ad Oracle.
D'accordo, non è che uno si butta dalla finestra solo perché c'è scritto 
su "Java magazine", però mi domando come sia possibile raccogliere 
giudizi così divergenti sullo stesso prodotto.
Non c'è un pregiudizio Windows nel tuo discorso? Spero - per intenderci 
- che tu non sia di quelli che considerano StarOffice superiore ad 
Office. Beninteso: non ho alcun pregiudizio Linux, anzi...
Michele Giordano
P. S. non sarebbe meglio continuare questa discussione su un thread meno 
fuorviante?

 fuorviante?
Concordo. Ovviamente stiamo solo facendo 4 chiacchiere amichevoli tra
operatori nel settore, e non propaganda, quindi possiamo indifferentemente
proseguire, smettere o proseguire altrove.
--
Pasquale Vazzana

 proseguire, smettere o proseguire altrove.
per me se proseguite va benissimo. le chiacchierate spesso sono istruttive.
in ogni modo p.f. non sarebbe male se riusciste a metterne un sunto nella
neonata faq :)
ciao, a.
--
andrea....@tin.it
http://www.sundaysw.com