解決(springboot項目)mysql表名大寫,造成jpa Table doesn't exist問題

這個問題有2種解決方法:

我的報錯是:

 java.sql.SQLSyntaxErrorException: Table 'gaei_ms.gaei_work_task' doesn't exist


方法一:

轉自:https://confluence.atlassian.com/fishkb/table-xxx-doesn-t-exist-error-with-mysql-server-302810019.html

2012-09-05 10:12:30,728 ERROR [btpool0-472 ] fisheye.app TotalityFilter-logExceptionDetails - Exception "com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'fecru.AO_B434B9_WEB_HOOK' doesn't exist" (net.java.ao.sql.ActiveObjectSqlException) while processing "/plugins/servlet/webhooks/list" (Referer:"https://fisheye.bln.native-instruments.de/admin/viewServerSettings.do")
net.java.ao.sql.ActiveObjectSqlException: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'fecru.AO_B434B9_WEB_HOOK' doesn't existat com.atlassian.activeobjects.internal.EntityManagedActiveObjects.find(EntityManagedActiveObjects.java:114)at com.atlassian.activeobjects.osgi.DelegatingActiveObjects.find(DelegatingActiveObjects.java:71)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
...
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'fecru.AO_B434B9_WEB_HOOK' doesn't exist

原因:

MySQL對lower_case_table_names使用區分大小寫的表名比較設置??(可能值為'0')。但是,FishEye在表名??FE-4276中不一致-數據庫表OPEN的大小寫不一致您可以使用以下查詢確認設置:?

show variables like 'lower_case_table_names'; 

解決:

  1. ?在MySQL中設置??lower_case_table_names的值為'0'
  2. 重新啟動MySQL和FishEye / Crucible。


方法二:

我的情況是springboot項目,配置文件的改法略有不同:

我的改法是在配置文件中加上這一行:

spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl


以下轉自:https://blog.csdn.net/Halleycomett/article/details/78638639

報錯信息

org.springframework.dao.InvalidDataAccessResourceUsageException: could not extract ResultSet; SQL [n/a]; nested exception is org.hibernate.exception.SQLGrammarException: could not extract ResultSet
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table XXX doesn't exist

報錯原因調查

mysql里實際表名都是大寫

嘗試在entity上標記表名大寫,實際測試無效,仍然找不到表

@Entity
@Data
@Table(name = "T_BASE_ORDER_PRINT_CLIENT")
public class MerchantPrinter {@Id@Column(name = "print_client_id")private String id;@Column(name = "merchant_id")private String merchantId;private String imei;}

最終的解決方案

在spring jpa配置中增加physical-strategy配置解決問題spring:datasource:driver-class-name: com.mysql.jdbc.Driverurl: jdbc:mysql://XXX:3306/dbnameusername: rootpassword: *******schema:jpa:hibernate:ddl-auto: nonenaming:physical-strategy:  org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImplshow-sql: true

physical naming strategy :used to convert a “logical name” (either implicit or explicit) name of a table or column into a physical name (e.g. following corporate naming guidelines)?
physical naming strategy:物理命名策略,用于轉換“邏輯名稱”(隱式或顯式)的表或列成一個物理名稱

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/449372.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/449372.shtml
英文地址,請注明出處:http://en.pswp.cn/news/449372.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

一個三流學校程序員的奮斗歷程

寫作用意 這些日子我一直在寫一個實時操作系統內核,已有小成了,等寫完我會全部公開,希望能夠為國內IT的發展盡自己一份微薄的力量。最近看到很多學生朋友和我當年一樣沒有方向,所以把我的經歷寫出來與大家共勉,希望能…

真格量化——做空波動率策略

# coding:utf-8 #!/usr/bin/env python # EmuCounter2 from PoboAPI import * import datetime import numpy as np#開始時間,用于初始化一些參數 def OnStart(context) :print "system starting..."#設定全局變量品種g.code1 = "m1901-C-3300.DCE" #豆粕…

搭建webpack基礎配置

搭建webpack基礎步驟: 1.去官方網站下載node.js(根據自己電腦的系統類型選擇) 2.安裝node.js完成后打開cmd命令提示符: 出現版本號證明安裝成功 3.cd到工程目錄下 npm install -g vue-cli(這里使用的是vue-cli腳手架安…

JPA 中 sql 預編譯 -- EntityManager 使用 預編譯

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 實現方式 : 1. 注入em: PersistenceContextprivate EntityManager entityManager; 注入方式 2: PersistenceUn…

持續記函數

自己寫文章的緣由 juejin.im/post/5c7368… 2019年2月26日 星期二 array_shift — 將數組開頭的單元移出數組 <?php $stack array("orange", "banana", "apple", "raspberry"); $fruit array_shift($stack); print_r($stack); ?…

研究:多感官教學增強記憶 學習效率事半功倍

人們在記憶外部信息時&#xff0c;必須先要去接受這些信息&#xff0c;而接受信息的“通道”不止一個&#xff0c;有視覺、聽覺、嗅覺、味覺、觸覺等等。有多種感官參加的記憶叫做“多通道”記憶。圖為臺中一幼稚園戶外寫生活動。 生動的教學方法往往可以吸引大多數孩子&#…

330 div+css Experience

今天學習的div&#xff0c;感覺對編輯html更為方便快捷&#xff0c;但還是需要多練&#xff0c;多熟悉一下思路和邏輯方式 越來越感覺&#xff0c;代碼不是重要的&#xff0c;重要的是方向和思路&#xff0c;am的float clearfloat 及屬性&#xff0c;還有overflow 溢出的三個屬…

時間序列的平穩性檢驗方法匯總

時間序列平穩性檢驗方法&#xff0c;可分為三類&#xff1a; 圖形分析方法 簡單統計方法 假設檢驗方法 一、圖形分析方法 可視化數據 可視化數據即繪制時間序列的折線圖&#xff0c;看曲線是否圍繞某一數值上下波動&#xff08;判斷均值是否穩定&#xff09;&#xff0c;看…

tcp的發送端一個小包就能打破對端的delay_ack么?

3.10內核&#xff0c;反向合入4.9的bbr。 最近分析bbr的時候&#xff0c;收集了線上的一些報文&#xff0c;其中有一個疑問一直在我腦海里面&#xff0c;如下&#xff1a; 本身處于delay_ack狀態的客戶端&#xff0c;大概40ms回復一個delay_ack&#xff0c;當收到一個490字節的…

設置 git pull 無需輸入賬號和密碼

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 如果你用git從遠程pull拉取代碼&#xff0c;每次都要輸入密碼&#xff0c;那么執行下面命令即可 git config --global credential.help…

Git 誕生記

你可能有過這樣的經歷&#xff1a;在 debug 的時候這里加一句&#xff0c;那里減一句&#xff0c;順便改改參數&#xff0c;不一會你的程序就從一個 bug 增加到了無數個 bug 。最重要的是&#xff0c;你完全想不起來自己到底改了幾個地方&#xff0c;原來的程序到底長什么樣子了…

使用pandas進行量化回測(akshare)

本人看法&#xff0c;也就比excel高級一點&#xff0c;距離backtrader這些框架又差一點。做最基礎的測試可以&#xff0c;如果后期加入加倉功能&#xff0c;或者是止盈止損等功能&#xff0c;很不合適。只能做最簡單的技術指標測試。所以別太當回事。 導包&#xff0c;常用包導…

【BZOJ4543】【POI2014】Hotel加強版(長鏈剖分)

傳送門 題意&#xff1a;求樹上滿足三點之間距離兩兩相等的三元組個數 n≤1e5n\le 1e5n≤1e5 原題數據是n≤5000n\le5000n≤5000 考慮怎么做f[u][i]f[u][i]f[u][i]表示uuu為根&#xff0c;深度為iii的點的個數g[u][i]g[u][i]g[u][i]表示uuu為根&#xff0c;滿足2點到lcalcalca的…

使用vue+webpack從零搭建項目

vue到現在已經成為一個熱門的框架&#xff0c;在項目實踐當中&#xff0c;如果想要創建一個新項目&#xff0c;通常都會使用vue-cli的腳手架工具&#xff0c;毋容置疑能夠方便很多&#xff0c;很多東西也不需要自己親自去配置。都知道&#xff0c;腳手架其實是vue結合webpack去…

CentOS 6 和 CentOS 7 防火墻的關閉

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。CentOS6.5查看防火墻的狀態&#xff1a; 1[linuxidclocalhost ~]$service iptable status顯示結果&#xff1a; 12345[linuxidclocalhost …

怎樣從Linux終端管理進程:10個你必須知道的命令

本文由 極客范 - Ben Zhang 翻譯自 Chris Hoffman。歡迎加入極客翻譯小組&#xff0c;同我們一道翻譯與分享。轉載請參見文章末尾處的要求。Linux終端有一系列有用的命令。它們可以顯示正在運行的進程、殺死進程和改變進程的優先級。本文列舉了一些經典傳統的命令和一些有用新…

易盛極星多合約回測(問題很多)

注意&#xff0c;使用此函數&#xff0c;在考慮手續費時&#xff0c;無法做到統一。 import talib import numpy as np import EsTalib from EsSeries import NumericSeries# 策略參數字典 g_params[p1] 5 g_params[p2] 10 g_params[p3] 120 g_params[ZQ] 5 #交易周期…

Qt 程序獲取程序所在路徑、用戶目錄路徑、臨時文件夾等特殊路徑的方法

Qt 程序獲取程序所在路徑、用戶目錄路徑、臨時文件夾等特殊路徑的方法 經常我們的程序中需要訪問一些特殊的路徑&#xff0c;比如程序所在的路徑、用戶目錄路徑、臨時文件夾等。在 Qt 中實現這幾個功能所用的方法雖然都不難&#xff0c;但是各不相同&#xff0c;每次用到時還要…

搞了個30天學習量化的數據資料,可以bt做全球。數據鏈接白送

待會上傳代碼,資料,打包好了,拿來就能用。累死我了,搞了兩天,必須收費,絕不允許白嫖。不然對不起我熬夜,那么辛苦。 確定后,掃描百度網盤 鏈接:https://pan.baidu.com/s/1C0k6zkjHchFVQaHe4nRMsg?pwd=kkgb 提取碼:kkgb 如何回測k線圖 如何根據形態選股

解決 springboot + JPA + MySQL 表名全大寫 出現 “表不存在” 問題(Table ‘XXX.xxx‘ doesn‘t exist)

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 項目中使用 JPA 和 mysql 。表名是全大寫的。 出現 如下報錯&#xff1a; java.sql.SQLSyntaxErrorException: Table XXX_ms.work_tas…