3
respostas

No meu diz que a tabela loja_virtual não existe

Meu código está assim: `public class TestaInsercaoEListagemProduto {

public static void main(String[] args) throws SQLException {

    Produtc produto= new Produtc("Geladeira","Geladeira com freezer");

    try(Connection connection= new ConnectionFactory().RecuperaConexao()){
        ProdutoDAO ProdutoDAO=new ProdutoDAO(connection);
        ProdutoDAO.salvar(produto);
        List<Produtc> listaProdutos=ProdutoDAO.listar();
        listaProdutos.stream().forEach(lp->System.out.println(lp.getNome()));

            }

    }

}` e aparece esse erro: INFO:

Initializing c3p0 pool... com.mchange.v2.c3p0.ComboPooledDataSource [ acquireIncrement -> 3, acquireRetryAttempts -> 30, acquireRetryDelay -> 1000, autoCommitOnClose -> false, automaticTestTable -> null, breakAfterAcquireFailure -> false, checkoutTimeout -> 0, connectionCustomizerClassName -> null, connectionTesterClassName -> com.mchange.v2.c3p0.impl.DefaultConnectionTester, contextClassLoaderSource -> caller, dataSourceName -> 1hge0yzae9yrpxv1xm1dle|6fb0d3ed, debugUnreturnedConnectionStackTraces -> false, description -> null, driverClass -> null, extensions -> {}, factoryClassLocation -> null, forceIgnoreUnresolvedTransactions -> false, forceSynchronousCheckins -> false, forceUseNamedDriverClass -> false, identityToken -> 1hge0yzae9yrpxv1xm1dle|6fb0d3ed, idleConnectionTestPeriod -> 0, initialPoolSize -> 3, jdbcUrl -> jdbc:mysql://localhost/loja_virtual?useTimezone=true&serverTimezone=UTC, maxAdministrativeTaskTime -> 0, maxConnectionAge -> 0, maxIdleTime -> 0, maxIdleTimeExcessConnections -> 0, maxPoolSize -> 15, maxStatements -> 0, maxStatementsPerConnection -> 0, minPoolSize -> 3, numHelperThreads -> 3, preferredTestQuery -> null, privilegeSpawnedThreads -> false, properties -> {password=******, user=******}, propertyCycle -> 0, statementCacheNumDeferredCloseThreads -> 0, testConnectionOnCheckin -> false, testConnectionOnCheckout -> false, unreturnedConnectionTimeout -> 0, userOverrides -> {}, usesTraditionalReflectiveProxies -> false ] Exception in thread "main" java.sql.SQLSyntaxErrorException: Table 'loja_virtual.produto' doesn't exist at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:120) at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97) at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:953) at com.mysql.cj.jdbc.ClientPreparedStatement.execute(ClientPreparedStatement.java:370) at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.execute(NewProxyPreparedStatement.java:67) at DAO.ProdutoDAO.listar(ProdutoDAO.java:53) at br.com.alura.modelo.TestaInsercaoEListagemProduto.main(TestaInsercaoEListagemProduto.java:21)

3 respostas

Gabriel, bom dia. A database e tabela foram criadas no banco de dados? Sua string de conexão está apontando para o local correto?

Sim, isso já aconteceu antes eu reescrevi e deu certo, desta vez eu reescrevi três vezes já, ja verifiquei na database e a tabela e elas estão no banco de dados. A String de conexão tambem aponta para o local correto

Gabriel, bom dia. Aconteceu no mesmo projeto? Ou em outros projetos também?