【发布时间】:2012-10-24 23:08:54
【问题描述】:
我正在开发一个迷你应用程序,我必须检索 USER_ID 并将其保存在一个表中。
它是这样工作的;我输入用户的电子邮件地址,然后语句必须检索 USER_ID 并将其保存到表中。
我的 SQL Like 语句有问题。只是我只需要插入电子邮件地址的第一部分。例如,“thomas@yahoo.com”。我只插入“托马斯”;不是剩余部分。
以下是我在 Java 控制台中收到的语句示例和结果消息:
代码:
String ea = txt_email.getText();
String lid = "SELECT USER_ID FROM user WHERE email_address Like '"+ea+"%' ";
错误信息:
错误:java.sql.SQLException:[Microsoft][ODBC Microsoft Access Driver] 查询表达式“SELECT USER_ID FROM user WHERE email_address Like 'thomas%'''中的语法错误(缺少运算符)。
【问题讨论】:
-
它不工作的朋友...请告诉我另一种方式:)
-
你是如何调用 SQL 语句的?基本 JDBC、Spring JDBC、Hibernate……?解决方案可能因方法而异。
-
@MithileshRamgolam 转义 SQL 中的 JET 保留字。
select * from [User] where email .... -
@AVD "使用 * 代替 %" 这不是真的。 Access 会同时使用这两种方法,具体取决于您的工作地点。在这种情况下,% 是正确的。