L'autore dell'articolo è Ivan Prenosil. L'originale, in inglese, è reperibile all'indirizzo: Ivan Prenosil's Firebird/InterBase site.
Per connettersi ad un database Firebird bisogna specificare:- Nome del database
- Nome del server
- Protocollo
- Informazioni per il login
- Altri parametri di connessione
Nome del database
Si tratta o del nome del file contenente i dati o di un alias definito inaliases.conf
. È meglio, anche se non obbligatorio, utilizzare percorsi completamente specificati (fully qualified filename): d:\databases\db.fdb
(evitando d:databases\db.fdb
).
Nome del server
È il nome dell'elaboratore su cui risiede il server Firebird (il file dati è sempre sullo stesso elaboratore del server). Connettendosi mediante il protocollo tcp/ip è solitamente possibile specificare un indirizzo al posto di un nome (per esempio192.168.12.34:D:\DB.FDB
), ma questa funzionalità non è incorporata in Firebird, bensì offerta dal network layer (per esempio WinSock2). Bisogna considerare che in certe situazioni/configurazione questo meccanismo può essere molto più lento che ricorrere al nome.
Protocollo
Segue una lista di protocolli supportati e di come specificarli nella stringa di connessione:Sintassi | Esempio | |
---|---|---|
Locale | <db_file> | D:\DB.FDB |
tcp/ip | <server>:<db_file> | myserver:D:\DB.FDB |
<server><numero_porta>:<db_file> | myserver/3050:D:\DB.FDB | |
<server>/<servizio>:<db_file> | myserver/gds_db:D:\DB.FDB | |
NetBEUI | \\<server>\<db_file> | \\myserver\D:\DB.FDB |
Note
- Per connessioni all'embedded Firebird engine è obbligatorio utilizzare il protocollo locale.
- Non è possibile utilizzare il protocollo locale per connettersi al Classic Firebird engine.
- La possibilità di specificare il
è disponibile da Firebird 1. - La possibilità di specificare un
è disponibile in tutte le versioni di Firebird/Interbase. - Si può utilizzare NetBEUI solo se il server adotta Windows NT/2000/XP.
- Sebbene la sintassi del protocollo NetBEUI ricordi quella per la connessione a risorse condivise, la similarità è una semplice coincidenza. Non si dovrebbero mai condividere cartelle contenenti file dell'archivio.
- Con Firebird 1.5 il server può essere configurato in modo da disabilitare certi protocolli.
- Firebird 1.5 permette di utilizzare alias, specificati in aliases.conf, al posto di nomi di file.
-
Sebbene Firebird non abbia preferenze per l'estensione da utilizzare per un database, è meglio utilizzare:
- *.fdb - Firebird
- *.ib - Intebase
- *.gdb - versioni interbase pre-6 (non raccomandato a causa di problemi col Windows System Restore)
Informazioni per il login
Gli utenti sono identificati tramite username e autenticati tramite password. I loro privilegi vengono determinati specificando un ruolo (role) durante la connessione. Username e password possono esser specificati:- sulla linea comando dell'applicazione
ISQL D:\DB.FDB -U SYSDBA -P masterkey
- tramite comando SQL
CONNECT 'D:\DB.FDB' USER 'SYSDBA' PASSWORD 'masterkey';
- tramite variabili d'ambiente
SET ISC_USER=SYSDBA e SET ISC_PASSWORD=masterkey
.
Questa funzionalità è incorporata nelle librerie lato client di Firebird e non richiede un esplicito supporto da parte dell'applicazione.
Note
- Vengono controllati solo i primo 8 caratteri della password.
- Se si specifica un ruolo inesistente, non vengono mostrati messaggi di errore ed all'utente viene assegnato il ruolo di default (
NONE
).
Altri parametri di connessione
Il modo in cui specificare altri parametri dipende dal metodo di accesso utilizzato (ISQL, FB API, IBO, FIB+…). Questa è solo una lista parziale:- Set di caratteri (e.g.
SET NAMES
).; - Numero di pagine buffer (e.g. clausola
CACHE
in un comandoCONNECT
). - Richiesta di mantenere valori stabili per RDB$DB_KEY durante la connessione (e.g. parametro
isc_dpb_dbkey_scope
in DPB). - Richiesta di disabilitare il garbage collection durante la connessione (e.g. switch
-garbage_collect
del programma gbak. - Eliminazione crittografia password sul client.
- Nome del file messaggi.
- Settaggio proprietà (Forced Writes, Read Only…).