Java Eclipse MySQLSyntaxErrorException

 mobiledu2502854717 发布于 2023-02-13 13:55

我正试图从我的数据库中获取一些汽车列表,但不知怎的,我不断收到这个错误com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'Make' in 'field list',我花了更多的时间来搞清楚,所以我试图在这里找到答案.

适配器类:

import java.sql.SQLException;

public class DatabaseAdapter2
{
   public CarList getAllCars()
   {
      MyDatabase myDB = new MyDatabase();
      CarList cars = new CarList();
      try
      {
         myDB.openMySQLDatabase("db", "root", "");

         String sql = "SELECT Make, Model, LicenseNumber, Color, Year," +
                "HorsePower, TimeUntilService, ConsumptionPerKm," +
                "NumberOfSeats, NumberOfDoors, Transmission, ClimateControl, Price"
               + "FROM cars";

         Object[][] result = myDB.returnSQLQueryResult(sql);

         for (int i = 0; i < result.length; i++)
         {
            for (int j = 0; j < result.length; j++)
            {
               String make = (String) result[i][j];
               String model = (String) result[i][j];
               String licenseNumber = (String) result[i][j];
               String color = (String) result[i][j];
               int year = (int) result[i][j];
               String horsePower = (String) result[i][j];
               String timeUntilService = (String) result[i][j];
               String consumptionPerKm = (String) result[i][j];
               int numberOfSeats = (int) result[i][j];
               int numberOfDoors = (int) result[i][j];
               String transmission = (String) result[i][j];
               String climateControl = (String) result[i][j];
               int price = (int) result[i][j];

               cars.add(new Car(make, model, licenseNumber, color, year,
                     horsePower, timeUntilService, consumptionPerKm,
                     numberOfSeats, numberOfDoors, transmission,
                     climateControl, price));

            }
         }
      }
      catch (SQLException e)
      {
         e.printStackTrace();
      }
      catch (ClassNotFoundException e)
      {
         e.printStackTrace();
      }
      finally
      {
         try
         {
            myDB.closeDatabase();
         }
         catch (SQLException e)
         {
            e.printStackTrace();
         }
      }
      return cars;
   }
}

数据库本身:http://imgur.com/2L3mY6a

1 个回答
  • 您在FROM之前忘记了一个空格:

    String sql = "SELECT Make, Model, LicenseNumber, Color, Year," +
                    "HorsePower, TimeUntilService, ConsumptionPerKm," +
                    "NumberOfSeats, NumberOfDoors, Transmission, ClimateControl, Price "
                   + "FROM cars";
    

    编辑:对于ClassCastException,当您想要将int转换为字符串时,请使用String.valueof(yourInt),更多信息请访问:http://docs.oracle.com/javase/6/docs/api/java/lang/ String.html

    2023-02-13 13:59 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有