[ruby-gnome2-doc-cvs] [Hiki] create - tut-libgda-config

Back to archive index

ruby-****@sourc***** ruby-****@sourc*****
2003年 10月 19日 (日) 01:18:25 JST


-------------------------
REMOTE_ADDR = 151.24.200.9
REMOTE_HOST = 
        URL = http://ruby-gnome2.sourceforge.jp/it?tut-libgda-config
-------------------------
= Configurazione

A seconda dell'uso che vorrete fare di Ruby/Libgda, potreste doverne approfondire 
i meccanismi interni, ma non spaventatevi, le cose sono state implementate in modo 
da essere semplici da usare.

== Configurazione per lo sviluppo

La sola cosa che dovete fare per assicurarvi che tutto sia installato correttamente, 
controllare che la libreria Ruby/Libgda sia correttamente installata nel vostro sistema:

  $ irb --simple-prompt -r libgda
  >> Gda.init("test", "0.0.0")
  => nil

== Configurazione per l'accesso a database

Se volete accedere una sorgente di dati attraverso un provider GDA, dovete anzitutto 
avere accesso a questo provider, ad ancora piimportante, questo provider deve avere accesso 
alla sua sorgente dati specifica. Dunque, prima di tutto fate si che il vostro database 
sia arrivo e funzionante. Per fare cidovrete basarvi sulla documentazione specifica 
della vostra sorgente dati, o far riferimento alla documentazione dei provider libgda.

Una volta installato il provider GDA, sulla vostra macchina o su un altra in rete,
dovrete configurare il vostro sistema locale per accedervi.
Se avete un'installazione locale, una volta installato il provider GDA (compilandolo o 
installandolo da RPM o pacchetti Debian), il provider sarvisibile dalla vostra macchina.
cipossibile poichil provider si installa in una posizione ben nota che permette alla 
libgda  stessa di riconoscerlo e renderlo disponibile.

Il passo seguente la configurazione delle sorgenti dati che volete avere a disposizione
sul vostro sistema. Per fare ci al momento, dovreste usare GNOME-DB, che un front-end 
a libgda per il ((<progetto GNOME|URL:http://www.gnome.org>)).

Uno dei problemi risolti da GDA la determinazione dei nomi delle sorgenti dati. 
Ogni sistema database ha il suo metodo per definire i nomi dei propri databases. 
Ad esempio MySQL usa hostname, numero di porta, e nome del database. 
Altri database,ad esempio Solid, usano solo hostname e numero di porta. 
Non c'supporto per database multipli per ogni server. 
Poichil client non ha bisogno di questi dettagli, la configurazione di libgda 
definisce tute le proprietper queste sorgenti dati, in modo da permettere che il server 
database possa essere contattao in maniera corretta.
Questa informazione viene letta dalla libreria client ed inviata al provider, 
che a sua volta analizza la stringa which in turn willer decidere a quale database 
debba connettersi. I dati immagazzinati per ogni sorgente dati sono simili a questi: 

  Provider=MySQL                                       (1)                            
  DSN=DATABASE=test;HOST=localhost;PORT=1111           (2)
  Description=MySQL Test Database in native mode       (3)
  Username=username                                    (4)
  Password=password                                    (5)

:1
 Il provider per questo database il provider gda-mysql . Il valore di questa voce viene 
 usato come object ID per l'attivazione del plug-in. 

:2
 Questa la voce piimportante. Il valore di questa voce la stringa 
 inviata al provider entry is the string sent to theer far si che sappia a quale sorgente dati 
 debba connettersi. 
 Il modo in cui questa voce verrinterpretato descritto nella sezione provider (alla
 fine di questa pagina). 

 Ci sono, in ogni caso, un insieme di proprietdi default che possono essere usate per 
 la stringa di connessione per ogni providers. Si tratta di:
   * USERNAME: il nome utente usato per l'autenticazione.
   * PASSWORD: la password usata per l'autenticazione.

:3
 Questa voce una breve descrizione della sorgente dati. 
 E' qui solo per comodite non viene usata per nessuno scopo. 

:4
 Il nome utente usato per connettersi al database. 
 
:5
 La password usata per collegarsi al database. Viene immagazzinata come testo in chiaro,
 dunque assicuratevi di vietare l'accesso al file  di configurazione
 (~/.libgda/config) agli utenti "pericolosi".

Si consiglia di non modificare a mano il file di configurazione XML (~/.libgda/config) 
, che per il nostro esempio qualcosa di simile:

  <?xml version="1.0"?>
  <libgda-config>
    <section path="/apps/libgda/Datasources/sales">
      <entry name="DSN" type="string" value="PORT=1111;DATABASE=test;HOST=localhost"/>
      <entry name="Description" type="string" value="MySQL Test Database in native mode"/>
      <entry name="Password" type="string" value="password"/>
      <entry name="Provider" type="string" value="MySQL"/>
      <entry name="Username" type="string" value="username"/>
    </section>
  </libgda-config>
  
===  Gestire sorgenti dati con i metodi delle API 

====  Creare sorgenti dati

Per creare una sorgente dati dovete usare i metodi Gda::DataSource.new e Gda::DataSource#save.

Qui potete vedere come creare una sorgente dati chiamata foo_ds. 
Se non avete bisogno di usare un username ed una password per entrare nel database, 
potete mettere nil:

  datasource1 = Gda::DataSource.new("foo_ds", "PostgreSQL", "DATABASE=foo_db",
                                    "descrizione di foo_ds", "foo_username, "foo_password")
  datasource2 = Gda::DataSource.new("altro_foo_ds", "MySQL", "DATABASE=altro_foo_db,HOST=db.foo.com",
                                    "descrizione di altro_foo_ds", "foo", nil)
  datasource1.save
  datasource2.save

Per maggiori dettagli sulle informazioni specifiche per ogni provider guardate nella sezione 
apposita alla fine di questa pagina.

E' possibile chiamare pivolte Gda::DataSource#save, salvando di nuovo una sorgente dati esistente si otterr la sua sostituzione.

==== Rimuovere sorgenti dati 

Per eliminare delle sorgenti dati dovete usare il metodo Gda::DataSource#remove.

Qui potete vedere come si rimuove una sorgente dati chiamata foo_ds:

  datasource = Gda::DataSource.find('foo_ds')
  datasource.remove

==== Elencare le sorgenti dati disponibili

Per elencare le sorgenti dati disponibili dovrete usare i metodi Gda::DataSource.datasources o
Gda::DataSource.each.

Qui potete vedere un metodo che elenca le sorgenti dati disponibili:

  def list_datasources
      Gda::DataSource.each do |ds|
          puts "NAME: '#{ds.name}', PROVIDER: '#{ds.provider}', CNC: '#{ds.cnc_string}', " \
               "USER: '#{ds.username}', PASSWORD: '#{ds.password}'."
      end
  end

==== Elencare i provider disponibili

Per elencare i provider dovete usare i metodi Gda::Providers.providers o Gda::Providers.each.

questo un metodo che elenca i provider disponibili:

  def list_providers
      Gda::Provider.each { |provider| puts "ID: '#{provider.prov_id}'." }
  end

== Informazioni specifiche dei provider

Per ottenere maggiori dettagli su dei provider specifici, dovreste cercare nella 
((<sezione dedicata|URL:http://www.gnome-db.org/docs/libgda/installation-configuring.html#INSTALLATION-PROVIDER>)) del manuale GDA .






ruby-gnome2-cvs メーリングリストの案内
Back to archive index