Em meu projeto Java com SpringBoot, defini a conexão com o MySql. Criei classes “Entities” para trabalhar com as tabelas do db, criei o script das tabelas em: src/main/resources/db/migration/mysl/V1__create_tables.sql. Aí notei que não está criando minhas tabelas no banco, mas também não está gerando erro. Após mexer de todo jeito em meu application.properties, notei que ao subir a aplicação, o console informa em uma linha o seguinte: "H2 console available at ‘/h2-console’. Database available at ‘jdbc:h2:mem:teste’ ". Isso significa que o SpringBoot está utilizando o banco H2?
Application.properties:
#logging.level.com.minascafe=DEBUG
#gerenciamento de conexões nos bancos de dados
spring.datasource.type=com.zaxxer.hikari.HikariDataSource
#MySQL - definindo a conexão
server.port=${port:8080}
spring.datasource.url= jdbc:mysql://localhost:3306/minas_cafe;create=true
spring.datasource.username=root
spring.datasource.password=359423
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
#Cria e atualiza entidades no banco automaticamente
spring.jpa.hibernate.ddl-auto=update
#exibe os comandos SQL
#Exibe as queries executadas pela aplicação Java
spring.jpa.properties.hibernate.show-sql=true
spring.jpa.properties.hibernate.use_sql_comments=true
spring.jpa.properties.hibernate.format_sql=true
spring.jpa.properties.hibernate.type=trace
spring.jpa.show-sql=true
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQLInnoDBDialect
#habilitando o flyway
spring.flyway.enabled=true
Script de criação das tabelas (em V1__create_tables.sql):
CREATE TABLE IF NOT EXISTS `cad_cafe_baixado` (
`lote` int(7) NOT NULL AUTO_INCREMENT,
`produtor` varchar(50) NOT NULL,
`status` varchar(3) DEFAULT NULL,
`data` date NOT NULL,
`sacas` int(4) NOT NULL,
`quilos` float NOT NULL,
`baracao` int(4) DEFAULT NULL,
`subproduto` varchar(70) DEFAULT NULL,
`numero_nota` int(11) DEFAULT NULL,
`classificacao` varchar(5) DEFAULT NULL,
`catacao` int(11) DEFAULT NULL,
`peneira` int(11) DEFAULT NULL,
`lancado` varchar(3) DEFAULT NULL,
`observacoes` varchar(140) DEFAULT NULL,
`referencia` varchar(7) DEFAULT NULL,
`meieiro` VARCHAR(40) DEFAULT NULL,
`porcentagem_produtor` int(2),
`porcentagem_meieiro` int(2),
PRIMARY KEY (`lote`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;
CREATE TABLE IF NOT EXISTS `cad_cafe_coco` (
`lote` int(7) NOT NULL AUTO_INCREMENT,
`produtor` varchar(50) NOT NULL,
`status` varchar(3) DEFAULT NULL,
`data` date NOT NULL,
`sacos` int(4) NOT NULL,
`quilos` float NOT NULL,
`baracao` int(4) DEFAULT NULL,
`subproduto` varchar(70) DEFAULT NULL,
`numero_nota` int(11) DEFAULT NULL,
`classificacao` varchar(5) DEFAULT NULL,
`catacao` int(11) DEFAULT NULL,
`peneira` int(11) DEFAULT NULL,
`lancado` varchar(3) DEFAULT NULL,
`observacoes` varchar(140) DEFAULT NULL,
`referencia` varchar(7) DEFAULT NULL,
`meieiro` VARCHAR(40) DEFAULT NULL,
`porcentagem_produtor` int(2),
`porcentagem_meieiro` int(2),
PRIMARY KEY (`lote`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `cad_cafe_beneficiado` (
`lote` int(7) NOT NULL AUTO_INCREMENT,
`produtor` varchar(50) NOT NULL,
`status` varchar(3) DEFAULT NULL,
`data` date NOT NULL,
`sacas` int(4) NOT NULL,
`quilos` float NOT NULL,
`baracao` int(4) DEFAULT NULL,
`subproduto` varchar(70) DEFAULT NULL,
`numero_nota` int(11) DEFAULT NULL,
`classificacao` varchar(5) DEFAULT NULL,
`catacao` int(11) DEFAULT NULL,
`peneira` int(11) DEFAULT NULL,
`lancado` varchar(3) DEFAULT NULL,
`observacoes` varchar(140) DEFAULT NULL,
`meieiro` varchar(40) DEFAULT NULL,
`porcentagem_produtor` int(2),
`porcentagem_meieiro` int(2),
PRIMARY KEY (`lote`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `cad_cafe_maquina` (
`lote` int(5) NOT NULL AUTO_INCREMENT,
`produtor` varchar(50) NOT NULL,
`status` varchar(3) DEFAULT NULL,
`data` date NOT NULL,
`sacas` int(3) NOT NULL,
`quilos` float NOT NULL,
`baracao` int(1) DEFAULT NULL,
`subproduto` varchar(70) DEFAULT NULL,
`numero_nota` int(4) DEFAULT NULL,
`classificacao` varchar(5) DEFAULT NULL,
`catacao` int(2) DEFAULT NULL,
`peneira` int(2) DEFAULT NULL,
`lancado` varchar(3) DEFAULT NULL,
`referencia` varchar(7) DEFAULT NULL,
`observacoes` varchar(140) DEFAULT NULL,
`meieiro` VARCHAR(40),
`porcentagem_produtor` int(2),
`porcentagem_meieiro` int(2),
PRIMARY KEY (`lote`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `ficha_produtor` (
`nome` varchar(50) NOT NULL,
`apelido` varchar(20) DEFAULT NULL,
`cpf` int(11) NOT NULL,
`telefone` int(11) DEFAULT NULL,
`data` date NOT NULL,
`entrada_saida` varchar(80) DEFAULT NULL,
`lote` varchar(7) NOT NULL,
`duro` float DEFAULT NULL,
`riado` float DEFAULT NULL,
`rio` float DEFAULT NULL,
`escolha` float DEFAULT NULL,
`renda` int(2) DEFAULT NULL,
`humidade` int(2) DEFAULT NULL,
`valor_total` float DEFAULT NULL,
`id` int(11) NOT NULL DEFAULT '0',
`banco` VARCHAR(25) DEFAULT NULL,
`agencia` VARCHAR(5) DEFAULT NULL,
`operacao` VARCHAR(3) DEFAULT NULL,
`tipo_conta` VARCHAR(14) DEFAULT NULL,
`numero_conta` VARCHAR(13) DEFAULT NULL,
`nome_correntista` VARCHAR(50) DEFAULT NULL,
`chave_pix` VARCHAR(60) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;