Java JDBC 程序在从表中获取特定行时抛出 SQL 语法错误
Posted
技术标签:
【中文标题】Java JDBC 程序在从表中获取特定行时抛出 SQL 语法错误【英文标题】:Java JDBC program throwing SQL syntax error when fetching particular rows from a table 【发布时间】:2019-03-25 23:33:21 【问题描述】:我有一个名为“飞机”的数据库,其中有一个名为 timetable 的表。时间表有一个文本类型的fromcity列
Connection conn0=null;
PreparedStatement st0=null;
String sql0="SELECT FROM timetable where fromcity=?";
try
Class.forName("com.mysql.jdbc.Driver");
conn0=DriverManager.getConnection(DB_URL,USER,PASS);
st0=conn0.prepareStatement(sql0);
st0.setString(1,city[i]);
ResultSet rs0=st0.executeQuery();
if(rs0.next())
System.out.println("flight exists");
else
System.out.println("fight does not exist");
catch(Exception et)
System.out.println("Error"+et.getMessage());
我收到错误:
为什么会出现这个错误
You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'FROM timetable where fromcity='1'' at line 1
【问题讨论】:
【参考方案1】:您忘记在查询中写入列名。
做吧,
SELECT * FROM timetable where fromcity=?"
而不是,
SELECT FROM timetable where fromcity=?"
【讨论】:
以上是关于Java JDBC 程序在从表中获取特定行时抛出 SQL 语法错误的主要内容,如果未能解决你的问题,请参考以下文章