您的位置:首页 > 科技 > IT业 > 怎么样申请网站_北京seo外包平台_抖音推广引流平台_百度识图找原图

怎么样申请网站_北京seo外包平台_抖音推广引流平台_百度识图找原图

2025/1/7 17:50:28 来源:https://blog.csdn.net/qq_32419139/article/details/143910041  浏览:    关键词:怎么样申请网站_北京seo外包平台_抖音推广引流平台_百度识图找原图
怎么样申请网站_北京seo外包平台_抖音推广引流平台_百度识图找原图

文章目录

  • 一、sql执行正常,mybatis报错
  • 二、sql执行正常,mybatis-plus报错
    • 直接改变字段
    • 利用mybatis-plus特性处理
  • 总结


一、sql执行正常,mybatis报错

Caused by: net.sf.jsqlparser.parser.ParseException: Encountered unexpected token: "ur" <K_ISOLATION>at line 26, column 34.Was expecting one of:"ACTION""ACTIVE""ALGORITHM""ARCHIVE""ARRAY""AT""BYTE""CASCADE""CASE""CAST""CHANGE""CHAR""CHARACTER""CHECKPOINT""COLUMN""COLUMNS""COMMENT""COMMIT""COSTS""CYCLE""DBA_RECYCLEBIN""DEFAULT""DESC""DESCRIBE""DISABLE""DISCONNECT""DIV""DO""DUMP""DUPLICATE""ENABLE""END""EXCLUDE""EXTRACT""FALSE""FILTER""FIRST""FLUSH""FN""FOLLOWING""FORMAT""FULLTEXT""HISTORY""INDEX""INSERT""INTERVAL""ISNULL""JSON""KEY""LAST""LEADING""LINK""LOCAL""LOG""MATERIALIZED""NO""NOLOCK""NULLS""OF""OPEN""OVER""PARALLEL""PARTITION""PATH""PERCENT""PRECISION""PRIMARY""PRIOR""QUERY""QUIESCE""RANGE""READ""RECYCLEBIN""REGISTER""REPLACE""RESTRICTED""RESUME""ROW""ROWS""SCHEMA""SEPARATOR""SEQUENCE""SESSION""SHUTDOWN""SIBLINGS""SIGNED""SIZE""SKIP""SUSPEND""SWITCH""SYNONYM""SYSTEM""TABLE""TABLESPACE""TEMP""TEMPORARY""TIMEOUT""TO""TOP""TRUE""TRUNCATE""TRY_CAST""TYPE""UNQIESCE""UNSIGNED""USER""VALIDATE""VALUE""VALUES""VIEW""XML""ZONE"<K_DATETIMELITERAL><K_DATE_LITERAL><K_NEXTVAL><K_STRING_FUNCTION_NAME><S_CHAR_LITERAL><S_IDENTIFIER><S_QUOTED_IDENTIFIER>at net.sf.jsqlparser.parser.CCJSqlParser.generateParseException(CCJSqlParser.java:31468)at net.sf.jsqlparser.parser.CCJSqlParser.jj_consume_token(CCJSqlParser.java:31301)at net.sf.jsqlparser.parser.CCJSqlParser.Alias(CCJSqlParser.java:6654)at net.sf.jsqlparser.parser.CCJSqlParser.FromItem(CCJSqlParser.java:8291)at net.sf.jsqlparser.parser.CCJSqlParser.JoinerExpression(CCJSqlParser.java:8822)at net.sf.jsqlparser.parser.CCJSqlParser.JoinsList(CCJSqlParser.java:8641)at net.sf.jsqlparser.parser.CCJSqlParser.PlainSelect(CCJSqlParser.java:5652)at net.sf.jsqlparser.parser.CCJSqlParser.SetOperationList(CCJSqlParser.java:5867)at net.sf.jsqlparser.parser.CCJSqlParser.SelectBody(CCJSqlParser.java:5516)at net.sf.jsqlparser.parser.CCJSqlParser.Select(CCJSqlParser.java:5511)at net.sf.jsqlparser.parser.CCJSqlParser.SingleStatement(CCJSqlParser.java:232)at net.sf.jsqlparser.parser.CCJSqlParser.Statement(CCJSqlParser.java:153)at net.sf.jsqlparser.parser.CCJSqlParserUtil.parseStatement(CCJSqlParserUtil.java:188)at net.sf.jsqlparser.parser.CCJSqlParserUtil.parse(CCJSqlParserUtil.java:63)at net.sf.jsqlparser.parser.CCJSqlParserUtil.parse(CCJSqlParserUtil.java:38)

其实这个报错就是因为在xml中自定义sql语句中使用了一些mybatis 保留的字符串, 我用了 ur ,这个字符串作为了一个表的别名,换一个就好了,可以从上述日志中看到,还有很多其他的保留字符串
保留字符串
这些都是

二、sql执行正常,mybatis-plus报错

1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CUBE FROM table_user' at line 1

其中执行的sql语句中,有一个字段为CUBE,此为mysql中的保留关键字,编写mysql语句,可以通过增加 重音符 ` 包裹起来解决这个问题;但我此时用的是mybatis-plus,它是自动拼接的没有给我手动拼接重音符的机会,如何处理呢?

直接改变字段

这个table_user表中的这个字段cube 的名字就不该用,直接改掉就行,改成cube_name,或者其他的;

利用mybatis-plus特性处理

假如这个字段已经用在了很多地方,改字段的方式影响很大,那么我们还有一个补救措施;
例如: table_user的实体如下:

@TableName("table_user")
public class User {private String userId;private String userName;@TableField("`cube`")private String cube;	
}

就是在原本的字段你上,增加 @TableField("cube"),让他在拼接sql的时候,自动增加这个重音符,这样就不用改变这个字段了。


总结

在表设计的时候,应该综合考量后续扩展性,见名知意的字段特性,以及避免使用mysql的保留关键字,这样能减少不必要的错误

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com