Executar arquivo .sql usando JDBC

Pessoal boa tarde!

Dei uma olhada na internet e nao encontrei nada coerente do que eu preciso.

Preciso rodar um arquivo .sql com varias coisas dentro, criacao de procedures, inserts, criacao de views, etc e tal.

alguem sabe como faco pra rodar esse arquivo de uma so vez?

obrigado!

veja isto:

public void executeSqlScript(Connection conn, File inputFile) {

    // Delimiter
    String delimiter = ";";

    // Create scanner
    Scanner scanner;
    try {
        scanner = new Scanner(inputFile).useDelimiter(delimiter);
    } catch (FileNotFoundException e1) {
        e1.printStackTrace();
        return;
    }

    // Loop through the SQL file statements 
    Statement currentStatement = null;
    while(scanner.hasNext()) {

        // Get statement 
        String rawStatement = scanner.next() + delimiter;
        try {
            // Execute statement
            currentStatement = conn.createStatement();
            currentStatement.execute(rawStatement);
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            // Release resources
            if (currentStatement != null) {
                try {
                    currentStatement.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            currentStatement = null;
        }
    }
}

t+ e boa sorte !!!

cara, vlw ajuda. mais os objetos ficam invalidos.

so lembrando que o arquivo esta criptografado e o banco eh oracle.

alguma dica?

objetos ficam invalidos ???

Faz o seguinte, usa o Scanner pra ir exibindo seus SQLs do arquivo em um System.out()…ai vc vai corrigindo conforme precisar.

Mas eu uso dessa maneira ae e num tenho problema…Uso em Oracle/SQLServer/PGSQL e MySQL

t+ e boa sorte.

cara, ta inesplicavel o negocio, roda beleza, dae os objetos ficam invalidos. se mandar compilar os objetos eles continuam invalidos.
se vc ir no sql developer e abrir o objeto e compilar e vai de boa.
alguma coisa que o sql developer faz que o o java nao ta fazendo, algum caractere de escape coisa e talz.

mais dicas?

estou aqui na luta, se descobrir coloco a resposta.

Eu sei que este topico já tem tempo, mais alguma solução ?
Pois tive quase o mesmo problema ele passa pelo currentStatement.execute normalmente com a instrução SQL só que quando vou no banco ele não executou.

entao o meu problema era outro, o arquivo rodava normal, so que os objetos ficavam invalidos no banco.
os objetos estao criptografados tbm? ou vc os roda normal?

[]`s