У меня довольно простой файл schema.sql:
В идеале, я просто хочу, чтобы таблицы генерировались автоматически. Я отключил автоматическую настройку ddl в моем application.properties
. Однако я получаю ошибки:
Ошибка:
Причина: org.springframework.beans.factory.BeanCreationException: Ошибка создания компонента с именем 'dataSource', определенным в ресурсе пути к классу [org / springframework / boot / autoconfigure / jdbc / DataSourceConfiguration $ Hikari.class]: инициализация компонента не удалось; вложенное исключение: org.springframework.beans.factory.BeanCreationException: ошибка создания бина с именем org.springframework.boot.autoconfigure.jdbc.DataSourceInitializerInvoker ': сбой вызова метода init; вложенное исключение: org.springframework.jdbc.datasource.init.ScriptStatementFailedException: не удалось выполнить инструкцию SQL-сценария №1 URL [file: /Users/schachte/Documents/Habicus-Core/build/resources/main/schema.sql]: CREATE TABLE goal_metrics
(; вложенным исключением является org.h2.jdbc.JdbcSQLException: синтаксическая ошибка в операторе SQL "CREATE TABLE" "GOAL_METRICS" "([*]"; ожидаемый "идентификатор"; оператор SQL:
schema.sql
CREATE TABLE `goal_metrics` (
`goal_metrics_id` int(11) NOT NULL,
`goal_complete` varchar(45) DEFAULT NULL,
`goal_in_progress` varchar(45) DEFAULT NULL,
`money_made_on_goal` varchar(45) DEFAULT NULL,
`time_until_due_date` decimal(10,0) DEFAULT NULL,
`goals_goal_id` int(11) NOT NULL,
PRIMARY KEY (`goal_metrics_id`,`goals_goal_id`),
KEY `fk_goal_metrics_goals1_idx` (`goals_goal_id`),
CONSTRAINT `fk_goal_metrics_goals1` FOREIGN KEY (`goals_goal_id`) REFERENCES `goals` (`goal_id`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `metrics` (
`goalsInProgress` int(11) NOT NULL,
PRIMARY KEY (`goalsInProgress`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `users` (
`user_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`username` varchar(45) DEFAULT NULL,
`password` varchar(45) DEFAULT NULL,
`email` varchar(255) NOT NULL,
`dob` datetime DEFAULT NULL,
`gender` varchar(25) DEFAULT NULL,
PRIMARY KEY (`user_id`),
UNIQUE KEY `email_UNIQUE` (`email`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;