----- Original Message -----
Sent: Monday, March 19, 2001 3:02
PM
Subject: Re: [java-list] Xml Sql Utility
da Oracle - problema com o formato de n�meros
Marcelo,
Eu at� que
pensei nisto mas eu nem estou trabalhando com vari�veis. Eu apenas leio
(select) registros e gero um XML, depois leio este mesmo XML e gravo os
registros de novo na tabela. A tabela � a EMP do usu�rio SCOTT, e as colunas
que est�o gerando o erro s�o a SAL e a COMM (ambos s�o number 7,2). O Oracle
que estou usando � em ingl�s. O XML � gerado com ponto mas quando vou ler e
gravar de volta na tabela a classe requer que seja v�rgula. As duas classes
est�o abaixo:
// Gera o XML
public class TesteQueryDB {
public static void main(String[] args)
throws Exception {
Connection conn=null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
conn =
DriverManager.getConnection("jdbc:oracle:thin:@web:web","scott","tiger");
} catch (ClassNotFoundException e)
{
e.printStackTrace();
System.exit(1);
} catch (SQLException e)
{
e.printStackTrace();
System.exit(1);
}
OracleXMLQuery qry = new
OracleXMLQuery(conn,"select * from emp");
String xmlString =
qry.getXMLString();
FileWriter fw = new
FileWriter("c:\\JavaXmlTeste\\empalex.xml");
BufferedWriter bw = new
BufferedWriter(fw);
PrintWriter pw = new
PrintWriter(bw);
pw.print(xmlString); // gera arquivo
.xml
qry.close();
pw.close();
bw.close();
fw.close();
conn.close();
System.out.println("Xml gerado com
sucesso");
}
}
// Le o XML para dentro da tabela
public class TesteSaveDB {
public static void main(String[] args)
throws Exception {
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn =
DriverManager.getConnection("jdbc:oracle:thin:@web:web","scott","tiger");
OracleXMLSave save = new
OracleXMLSave(conn,"emp");
URL url = new
URL("file://c/JavaXmlTeste//empalex.xml");
int rowCount =
save.insertXML(url);
save.close();
System.out.println("registros inseridos "
+ rowCount );
conn.close();
}
}
Obrigado,
Alexandre
----- Original Message -----
Sent: Monday, March 19, 2001 2:25
PM
Subject: Re: [java-list] Xml Sql
Utility da Oracle - problema com o formato de n�meros
Alexandre, esse erro pode nao ser por
formatacao de numero, esse erro e generico voce pode estar tentando fazer
uma conta com um varchar em vez de um numero, verifique se os conteudos das
variaveis sao realmente NUMBER.
O oracle que voce esta usando esta em
lingua portuguesa ou inglesa ?
----- Original Message -----
Sent: Monday, March 19, 2001 8:47
AM
Subject: [java-list] Xml Sql Utility
da Oracle - problema com o formato de n�meros
Pessoal,
Algu�m
usa o Xml Sql Utility da Oracle ? A gera��o do Xml a partir da classe
OracleXMLQuery est� dando certo, sendo que ela gera os campos
n�mericos com o ponto como separador decimal. Pego o mesmo Xml gerado pela
classe OracleXMLQuery e tento gravar os seus registros usando a classe
OracleXMLSave, s� que ocorre a Exception abaixo:
oracle.xml.sql.OracleXMLSQLException:
java.sql.SQLException: ORA-01722: invalid number
A� eu
abro o Xml com um editor qualquer e altero os pontos dos campos n�mericos
para v�rgula, a� a classe OracleXMLSave grava ok.
Algu�m
j� passou por isso ou sabe algo a respeito ?
Obrigado,
Alexandre