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

Back to archive index

ruby-****@sourc***** ruby-****@sourc*****
2003年 10月 26日 (日) 03:01:40 JST


-------------------------
REMOTE_ADDR = 151.24.189.115
REMOTE_HOST = 
        URL = http://ruby-gnome2.sourceforge.jp/it?tut-libgda-errors
-------------------------
= Gestire gli errori

Potete gestire gli errori usando la classe Gda::Error, ed ottenere oggetti con il metodo Gda::Connection#errors.

Un errore GDA contiene 4 informazioni distinte.

:Gda::Error#description
 La descrizione completa dell'errore. 

:Gda::Error#number
 Il numero che identifica l'errore.

:Gda::Error#source
 La sorgente dell'errore.

:Gda::Error#sqlstate
 lo stato SQL.

Questo un esempio d'uso:

  def mostra_errori(conn)
      # Ottiene la lista d'errori ed effettua un ciclo per leggere le informazioni.
      conn.errors.each do |error|
          puts "Errore numero: #{error.number.to_s}"
          puts "Descrizione: #{error.description}"
          puts "Sorgente: #{error.source}"
          puts "Stato SQL: #{error.sqlstate}"
      end
  end

In genere, potete controllare gli errori quando il metodo Gda::Connection fallisce.  
Ad esempio:

  # Per Gda::Connection#execute_non_query:
  if conn.execute_non_query(cmd) == -1
      mostra_errori(conn)
  end

  # Per Gda::Connection#execute_single_command:
  dm = conn.execute_single_command(cmd)
  if dm.nil?
      mostra_errori(conn)
  end

  # Per Gda::Connection#execute_command:
  arr = conn.execute_command(cmd)
  arr.each do |dm|
      if dm.nil?
          mostra_errori(conn)
      end
  end

Inoltre, possibile ricevere una notifica con un segnale GLib quando accade un errore:

  conn.signal_connect('error') { mostra_errori(conn) }





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