質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

Spring Boot

Spring Bootは、Javaのフレームワークの一つ。Springプロジェクトが提供する様々なフレームワークを統合した、アプリケーションを高速で開発するために設計されたフレームワークです。

Q&A

解決済

1回答

4179閲覧

Spring BootにおけるSyntax error

退会済みユーザー

退会済みユーザー

総合スコア0

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

Spring Boot

Spring Bootは、Javaのフレームワークの一つ。Springプロジェクトが提供する様々なフレームワークを統合した、アプリケーションを高速で開発するために設計されたフレームワークです。

0グッド

0クリップ

投稿2019/04/07 06:28

ここに質問の内容を詳しく書いてください。

Spring解体新書という本でSpringの勉強をしています。
SQL文でSyntax errorが出てしまい、自力で解決できなかったため、教えていただきたく。

発生している問題・エラーメッセージ

Syntax error in SQL statement "SELECTEMPLOYEE_IDEMPLOYEE_NAMEAGEFROM[*] EMPLOYEEWHERE EMPLOYEE_ID=? "; expected "SET, SAVEPOINT, SCRIPT, SHUTDOWN, SHOW"; SQL statement:

該当のソースコード

SQL

1CREATE TABLE IF NOT EXISTS employee( 2 employee_id INT PRIMARY KEY, 3 employee_name VARCHAR(50), 4 age INT 5);

SQL

1INSERT INTO employee(employee_id, employee_name, age) 2VALUES(1, '山田太郎', 30);

Spring

1package com.example.demo.trySpring; 2 3import java.util.Map; 4import org.springframework.beans.factory.annotation.Autowired; 5import org.springframework.jdbc.core.JdbcTemplate; 6import org.springframework.stereotype.Repository; 7 8@Repository 9public class HelloRepository { 10 11@Autowired 12private JdbcTemplate JdbcTemplate; 13 14public Map<String, Object> findOne(int id){ 15 16// SELECT文 17 String query = "SELECT" 18 + "employee_id" 19 + "employee_name" 20 + "age" 21 + "FROM employee" 22 + "WHERE employee_id=?"; 23// 検索実行 24 Map<String, Object> employee = 25 JdbcTemplate.queryForMap(query, id); 26 27 return employee; 28} 29}

よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2019/04/07 06:39

そりゃできたSQLをみたら一目瞭然だろう
euledge

2019/04/07 06:59

Selectの後ろとかスペース必要なのに繋がってますね。
退会済みユーザー

退会済みユーザー

2019/04/07 08:12

asahina1979さん SQLについては全くの初心者でして、申し訳ありません。
退会済みユーザー

退会済みユーザー

2019/04/07 08:13

euledgeさん アドバイスありがとうございます! アドバイスの通り見直したら解決いたしました!
退会済みユーザー

退会済みユーザー

2019/04/07 08:16

package com.example.demo.trySpring; import java.util.Map; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.stereotype.Repository; @Repository public class HelloRepository { @Autowired private JdbcTemplate JdbcTemplate; public Map<String, Object> findOne(int id){ // SELECT文 String query = "SELECT " + "employee_id," + "employee_name," + "age " + "FROM employee " + "WHERE employee_id=?"; // 検索実行 Map<String, Object> employee = JdbcTemplate.queryForMap(query, id); return employee; } } SQL文をカンマやスペースで区切る。
退会済みユーザー

退会済みユーザー

2019/04/07 09:30

まあ同人誌(個人出版)だからプロポーショナルフォントでとられてるのは仕方がないがちゃんと画像を見るとスペース入ってるよ
guest

回答1

0

ベストアンサー

上記の方法で解決できました。

投稿2019/04/07 08:32

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問