Вставьте дату и время в Excel с JSP

У меня есть ниже JSP для вставки значений в Excel.

<%@page import="java.util.Locale"%>
<%@page import="java.text.SimpleDateFormat"%>
<%@page import="java.sql.*"%>
<%
    Connection con = null;
    Statement stmt = null;
   java.util.Date dt=new java.util.Date();

    try {
        String a = request.getParameter("comments");
        String b = request.getParameter("updatedl");
        String c = request.getParameter("sid");
        String d = request.getParameter("desc");
        String e = request.getParameter("pubcode");
        String f = request.getParameter("Type");
        String g = request.getParameter("status");

        String h = null;
        if (null != request.getParameter("DateRec")) {
            h = request.getParameter("DateRec");
        }
        String i = null;
        if (null != request.getParameter("startD")) {
            i = request.getParameter("startD");
        }
        String j = null;
        if (null != request.getParameter("AssignedD")) {
            j = request.getParameter("AssignedD");
        }
        String k = null;
        if (null != request.getParameter("sentToAE")) {
            k = request.getParameter("sentToAE");
        }
        String l = null;
        if (null != request.getParameter("RespFrmAE")) {
            l = request.getParameter("RespFrmAE");
        }
        String m = null;
        if (null != request.getParameter("VWRCmp")) {
            m = request.getParameter("VWRCmp");
        }
        String n = request.getParameter("PS");
        String o = request.getParameter("TEst");
        String p = request.getParameter("Units");
        String q = null;
        if (null != request.getParameter("VWR")) {
            q = request.getParameter("VWR");
        }
        String r = request.getParameter("IE");
        String s = null;
        if (null != request.getParameter("RevDate")) {
            s = request.getParameter("RevDate");
        }
        String t = request.getParameter("ReviewS");

        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        con = DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Excel Driver (*.xls)};DBQ=C:/jus/Excel1.xls; ReadOnly=true;");

        String query = null;
        String columnString = new String();

        String values = new String();

        columnString = "insert into [Feb$] ([comments],[No of lines updated in PSIS],[Shipment ID],"
                + "[SAP TXT Description],[Phoenix Pub Code], [Product Type]" ;
        values =   " values("+ a + "," + b + "," + c + ",'" + d + "','" + e + "','" + f + "'";

        out.println("h value "+n);

        if(null!= g && !g.isEmpty()){
           columnString = columnString+(",[Status of the job]");
           values = values + ",'" +g;
        }   

        if(null!= n && !n.isEmpty()){
           columnString = columnString+(",[Assigned to PS]");
           values = values + "','" +n;
        }   

        if(null!= o && !o.isEmpty()){
           columnString = columnString+(",[Time Estimate]");
           values = values + "','" +o;
        } 

         if(null!= p && !p.isEmpty()){
           columnString = columnString+(",[Units]");
           values = values + "','" +p;
        } 

        if(null!= r && !r.isEmpty()){
           columnString = columnString+(",[Internal Errors]");
           values = values + "','" +r;
        }   

        if(null!= t && !t.isEmpty()){
           columnString = columnString+(",[Review Sent (Yes/No)]");
           values = values + "','" +t;
        }   





        if(null!= h && !h.isEmpty()){
           columnString = columnString+(",[Date Request received]");
           values = values + "','" +h;
        }   

        if(null!= i && !i.isEmpty()){
           columnString = columnString+(",[Start Date]");
           values = values + "','" +i;
        }
        if(null!= j && !j.isEmpty()){
           columnString = columnString+(",[Date assigned]");
           values = values + "','" +j;
        }
        if(null!= k && !k.isEmpty()){
           columnString = columnString+(",[Date file sent to AE]");
           values = values + "','" +k;
        }
       if(null!= l&& !l.isEmpty()){
           columnString = columnString+(",[Date response from AE]");
           values = values + "','" +l;
        }
       if(null!= m && !m.isEmpty()){
           columnString = columnString+(",[Date completed --VWR]");
           values = values + "','" +m;
        }

       if(null!= q && !q.isEmpty()){
           columnString = columnString+(",[Date file needs to be sent to Vendor (VWR)]");
           values = values + "','" +q;
        }
        if(null!= s && !s.isEmpty()){
           columnString = columnString+(",[Review Date]");
           values = values + "','" +s;
        }

        columnString = columnString+")";
        values = values + "')";

        query = columnString+values;
        out.println(query);


        PreparedStatement ps = con.prepareStatement(query);
        int new1 = ps.executeUpdate();

        String UR = "success.jsp";
        response.sendRedirect(UR);

    } catch (Exception e) {
        out.println(e);
    } finally {
        try {
            stmt.close();
            con.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    } 
%>

Здесь поля даты, к которым я обращаюсь, получают значения из средства выбора даты jquery на моей предыдущей html-странице, но теперь я хочу объединить эту дату с текущим временем и вставить в лист Excel, когда я пытаюсь объединить, как показано ниже, это дает я исключение.

 if(null!= h && !h.isEmpty()){
       columnString = columnString+(",[Date Request received]");
       values = values + "','" +h+dt;
    }   

я получаю исключение, как показано ниже.

java.sql.SQLException: [Microsoft][ODBC Excel Driver] Data type mismatch in criteria expression.

пожалуйста, дайте мне знать, как я могу этого достичь.

Спасибо

0 ответов

Другие вопросы по тегам