Erro em insert JAVA

Postei abaixo o meu código, estou com um erro, quando executo o DAO para inserir um registro com código e descrição me retorna a mensagem …
“Erro ao salvar!!
java.sql.SQLException: ORA-00928: palavra-chave SELECT não encontrada”

package br.com.farmacia.DAO;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

import br.com.farmacia.domain.Fornecedores;
import br.com.farmacia.factory.ConexaoFactory;

public class FornecedoresDAO {

public void salvar(Fornecedores f) throws SQLException {
	
	StringBuilder sql = new StringBuilder();
	sql.append("INSERT INTO fornecedores ");
	sql.append("(codigo)");
	sql.append("(descricao)");
	sql.append("VALUES (?,?)");
	
	Connection conexao = ConexaoFactory.conectar();
	
	PreparedStatement comando = conexao.prepareStatement(sql.toString());
	comando.setLong(1, f.getCodigo());
	comando.setString(2 , f.getDescricao());
	comando.executeUpdate();
	

}

public static void main(String[] args) {
	Fornecedores f1 = new Fornecedores();
	f1.setCodigo(1);
	f1.setDescricao("DESCRICAO 1");
	
	Fornecedores f2 = new Fornecedores();		
	f2.setCodigo(2);
	f2.setDescricao("DESCRICAO 2");
	
	FornecedoresDAO fdao = new FornecedoresDAO();
	
	try {
		fdao.salvar(f1);
		fdao.salvar(f2);
		System.out.println("Salvo com sucesso!!");
		
	} catch (SQLException e) {
		System.out.println("Erro ao salvar!!");
		e.printStackTrace();
	}

}

}

1 curtida

1 - Porque usar StringBuilder aqui?

2 - A sintaxe do insert está errada:

String sql = "INSERT INTO fornecedores (codigo, descricao) VALUES (?,?)";

Muito obrigado, funcionou, na verdade achei mesmo estranho o formato original com StringBuilder, mas queria seguir igual ao do curso, mas se funcionou para mim esta ótimo, grande abraço