[Java-Oracle] Comment faire un 'desc' ? --> Ok, trouvé

Comment faire un 'desc' ? --> Ok, trouvé [Java-Oracle] - Programmation

Marsh Posté le 10-12-2001 à 16:59:15    

Voilà, j'aimerais récupérer la structure d'une table.
Exemple :
Sous Sql/Plus, un 'desc toto' me donne :
SQL> desc toto
 Name                            Null?    Type
 ------------------------------- -------- ----
 CDVM                                     NUMBER(10)
 CDCOMP                          NOT NULL NUMBER(8)
 NOOPCVM                                  NUMBER
 
Comment faire en Java pour faire pareil ?
J'ai bien essayé de trifouiller avec les ResultSetMetaData et les StructDescriptor, mais je me paume lamentablement...
Y'atti qqun qui sait siou plait ?
Merci d'avance :jap:

 

[edtdd]--Message édité par Wons--[/edtdd]

Reply

Marsh Posté le 10-12-2001 à 16:59:15   

Reply

Marsh Posté le 10-12-2001 à 17:17:39    

c SQL standard desc ou c propre a oracle?


---------------
What is popular is not always right, what is right is not always popular :D
Reply

Marsh Posté le 10-12-2001 à 20:13:03    

je crois pas que c'est du SQL standard mais ca existe sur la plupart des SGBD je crois ... (tiens, ca existe sous access ???)

Reply

Marsh Posté le 11-12-2001 à 09:30:42    

Up déguisé :)
Euh, je sais pas trop si c'est SQL standard. :sweat:
Ce que je sais, c'est que sous Sybase, ça n'existe pas.

Reply

Marsh Posté le 11-12-2001 à 15:09:41    

Ok trouvé.
Pour ceux que ça intéresse :
  try {
   DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
  } catch (Exception e) {
   System.err.println("registerDriver foiré : " + e.getMessage());
  }
  try {
   m_connexion = DriverManager.getConnection("jdbc:oracle:thin:" + user + "/" + pass + "@" + base + ":" + port + ":" + instance);
   m_statement = m_connexion.createStatement();
  } catch (SQLException e) {
   System.err.println("getConnection foiré : " + e.getMessage());
  }
  try {
  m_resultset = m_connexion.getMetaData().getColumns(null, owner, table, null);
  } catch (SQLException e) {
   System.err.println("desc foiré : " + e.getMessage());
  }
  try {
   m_nbColonnes = resultat.getMetaData().getColumnCount();
   for (int i=1; i<=m_nbColonnes; i++)
    System.out.print(resultat.getMetaData().getColumnName(i) + ";" );
   System.out.println();
   while (resultat.next())
   {
    for (int i=0; i<m_nbColonnes; i++)
     System.out.print(resultat.getString(i+1) + ";" );
    System.out.println();
   }
  } catch (SQLException ex) {
   System.err.println("next foiré : " + ex.getMessage());
  }
 
Avec les affectations de variables qui vont bien.

 

[edtdd]--Message édité par Wons--[/edtdd]

Reply

Marsh Posté le 11-12-2001 à 17:17:26    

mais que je suis con ... je le savais ca ...
aïe aïe aïe. la mémore qui flanche à 23 ans c'est pas bon !!! :ouch:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed