简单记一个灰常SB的错。
sql.append("select"
+"a.MEMBER_NAME, b.ACTION_NAME"
+"from CLUB_MEMBER a,CLUB c, MEMBER_ACTION_RECORD d");
sql.append("WHERE a.CLUB_MEMBER_ID = d.CLUB_MEMBER_ID"
+ "AND a.CLUB_ID = b.CLUB_ID"
+ "AND d.ACTION_ID = ?");
错了,为什么错了?没有空格,SQL打印:
selecta.MEMBER_NAME, b.ACTION_NAMEfrom CLUB_MEMBER a,CLUB c, MEMBER_ACTION_RECORD dWHERE a.CLUB_MEMBER_ID = d.CLUB_MEMBER_IDAND a.CLUB_ID = b.CLUB_IDAND d.ACTION_ID = ?
现在知道为什么错了吧?
正确姿势:
sql.append("select"
+" a.MEMBER_NAME, b.ACTION_NAME"
+" from CLUB_MEMBER a,CLUB c, MEMBER_ACTION_RECORD d");
sql.append(" WHERE a.CLUB_MEMBER_ID = d.CLUB_MEMBER_ID"
+ " AND a.CLUB_ID = b.CLUB_ID"
+ " AND d.ACTION_ID = ?");
看起来差别不大,但是足以让人花上半个小时的时间和库存不足的耐心去看代码。
本文分享了一次在SQL语句拼接过程中遇到的常见错误,即未在字段名、表名及关键字间添加空格,导致SQL语句无法正确解析。通过对比错误与修正后的代码,强调了在SQL字符串拼接时细节的重要性。
9167





