Olá,
Tu está criando teu objeto “con” dentro de um bloco try e tentando acessa-lo fora desse bloco (ou seja, dentro do catch).
Inicializa o “Connection con” antes de iniciar o bloco try {}
Olá,
Tu está criando teu objeto “con” dentro de um bloco try e tentando acessa-lo fora desse bloco (ou seja, dentro do catch).
Inicializa o “Connection con” antes de iniciar o bloco try {}
so completando… qualquer coisa em java declarada dentro de um bloco de chaves vai ter o escopo dessas chaves.
[]'s
import java.sql.*;
import java.io.*;
class DtBase
{
public static void main(String args[])
{
try
{
Class.forName("org.firebirdsql.jdbc.FBDriver");
String url = "jdbc:firebirdsql:localhost/3050:C:/Banco/BASE.gdb";
Connection con = DriverManager.getConnection(url,"SYSDBA","masterkey");
System.out.println("Conectado com sucesso!\n");
con.setAutoCommit(false);
Statement stmt = con.createStatement();
int result = stmt.executeUpdate("create table teste(t_col1 int,t_col2 int,t_col3 char(10))");
result = stmt.executeUpdate("create index idx_teste on teste (col1)");
con.commit();
int n = 0;
PreparedStatement prepStmt = con.prepareStatement("insert into teste values(?,1,'xxxxx')");
for( n = 1; n< 20; n++)
{
prepStmt.setInt(1 , n);
prepStmt.executeUpdate();
}
con.rollback();
Statement stmt1 = con.createStatement();
ResultSet rs = stmt1.executeQuery("select * from teste");
boolean more = rs.next();
if (more == false)
System.out.println("Data was rolled back");
}
catch(SQLException ex)
{
System.out.println("*** Error on database update. Rolling back ... **");
con.rollback();
ex.printStackTrace();
}
}
}
cannot find symbol
symbol : variable con
location: class DtBase
con.rollback();
^