Java live server上的MYSQL未知列错误

Java live server上的MYSQL未知列错误,java,mysql,database,servlets,Java,Mysql,Database,Servlets,通过Java中的servlet,我调用一个函数来执行查询,下面给出了查询,我尝试了以下格式: 错误是: com.mysql.jdbc.exceptions.MySQLSyntaxErrorException:未知列 “字段列表”中的“TFM00100” 我尝试过的问题: SELECT * FROM tbl_contract AS tc WHERE tc.`contact_id` = 'TFM00100' SELECT * FROM tbl_contract AS tc WH

通过Java中的servlet,我调用一个函数来执行查询,下面给出了查询,我尝试了以下格式:

错误是:

com.mysql.jdbc.exceptions.MySQLSyntaxErrorException:未知列 “字段列表”中的“TFM00100”

我尝试过的问题:

 SELECT * FROM tbl_contract AS tc   WHERE  tc.`contact_id` = 'TFM00100'    
 SELECT * FROM tbl_contract AS tc   WHERE  tc.`contact_id` = "TFM00100"    
 SELECT * FROM tbl_contract   WHERE  `contact_id` = 'TFM00100'    
 SELECT * FROM tbl_contract   WHERE  `contact_id` = "TFM00100"     
 SELECT * FROM tbl_contract   WHERE  contact_id = "TFM00100"     
 SELECT * FROM tbl_contract AS tc  WHERE (tc.`contact_id`  =  'TFM-00100');
我也试过用事先准备好的声明

但当调用特定的函数从实时服务器上的servlet执行查询时,返回相同的错误,在本地服务器上,它工作正常。另外,在live MySQL db上执行特定查询时,它也可以正常工作

仅Servlet相关代码:

public class AttandenceInOutReport extends HttpServlet {

private static final long serialVersionUID = 1L;

public AttandenceInOutReport() {
    super();
}

protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    proccessRequest(request, response);
}

protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    proccessRequest(request, response);
}

protected void proccessRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

    /**
     * Setting default response
     */
     // Rest of code

    try {
        /**
         * converting request into string
         */
        String res = WebServiceUtils.parseRequestToString(request);

        /**
         * Request write in logger
         */
        logger.info("Request from client" + res);

        AttandenceReportReq reportReq = new Gson().fromJson(res, AttandenceReportReq.class);

        if (reportReq != null && !reportReq.equals("") && (!WebServiceUtils.isEmpty(reportReq.getStartDate()))
                && (!WebServiceUtils.isEmpty(reportReq.getEndDate())) 
                && (!WebServiceUtils.isEmpty(reportReq.getContractId()))) {

            final DateTimeFormatter formatter = DateTimeFormat.forPattern("yyyy-MM-dd");

            LocalDate startDate = formatter.parseLocalDate(reportReq.getStartDate());
            LocalDate endDate = formatter.parseLocalDate(reportReq.getEndDate());
            String contractId = reportReq.getContractId();

            //List<TblContract> contactList = new ArrayList<TblContract>();

            // Function being called here

            String contractName = CommonHandler.getContract(contractId);

           // Rest of the code
           // ...............

        }

    } catch (Exception e) {
        success = false;
        logger.error("Exception in processing request " + e);
    }

           // Rest of the code
           // ...............
    }
}

您可以尝试以下代码:

   String query =  "SELECT contract_name FROM tbl_contract WHERE contact_id = ? ";

    try {
        pstmt = conn.prepareStatement(query);
        ps.setString(1, conId);
        rs = pstmt.executeQuery();

您可以为相同的内容共享
servlet
代码吗?您是否检查了默认数据库?可能您正在使用不同的数据库。尝试使用
数据库名称。如果有默认数据库,请使用@dranrebdino表名称,即使它不会为字段
中的
未知列“TFM00100”提供错误。可以发布您的代码吗?@SagarGangwal我假设他是一个具有相同表但没有数据的虚拟数据库,因为有时候,错误来自小细节。我试过这个。在应用conId.trim()时找到了一个解决方案,而不是一段时间内工作。
   String query =  "SELECT contract_name FROM tbl_contract WHERE contact_id = ? ";

    try {
        pstmt = conn.prepareStatement(query);
        ps.setString(1, conId);
        rs = pstmt.executeQuery();