![](/img/trans.png)
[英]SimpleJdbcInsert on MySQL DB returning BigInteger instead of Long after executeAndReturnKey method
[英]SimpleJdbcInsert with MySQL
這是我寫的相關代碼:
new SimpleJdbcInsert(dataSource)
.withSchemaName("test")
.withTableName("tableName")
.usingGeneratedKeyColumns("idColumn");
當我調用executeAndReturnKey(parameters)
我在控制台上讀到了這個:
WARN [org.springframework.jdbc.core.metadata.TableMetaDataProvider:locateTableAndProcessMetaData:336](main :)無法找到'tableName'的表元數據 - 必須提供列名
為什么會這樣? 我知道我可以手動指定列名,但我相信它不是使用JdbcSimpleInsert的重點。
在不同的MySQL服務器上執行相同的查詢時,我遇到了這個錯誤: java.sql.SQLException: Parameter metadata not available for the given statement
。
所以我用石頭殺了鳥兒:)
因此,只需將generateSimpleParameterMetadata=true
添加到JDBC連接URL ,一切都將按預期工作。
出於不同的原因,我得到了相同的錯誤。 在我的JDBC連接字符串中,我列出了架構。 因此,使用withSchemaName
子句會導致此錯誤。 當我刪除它時,插入工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.