首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DateTime不使用jsp插入数据库。

问DateTime不使用jsp插入数据库。
EN

Stack Overflow用户
提问于 2018-07-25 03:37:46
回答 2查看 429关注 0票数 3

我正在使用jsp文件和mysql。在我的数据库中插入日期和时间有问题。我可以插入其他信息,但只有日期和时间。我也需要将日期和时间插入我的数据库。我怎样才能做到这一点?任何帮助都是非常感谢的。

Jsp代码

代码语言:javascript
复制
 <% 
            String userId       = request.getParameter("UserID");
            String arm          = request.getParameter("Arm");
            String[] armNumber  = request.getParameterValues("ArmNumber");
            String remark       = request.getParameter("Remark");
            String Timestamp    = request.getParameter("Time");


            out.println("<tr>");
            out.println("<td style='width: 10%'>");
            out.println(Timestamp);
            out.println("</td>");
            out.println("</tr>");


            int count           =0;
            Connection conn     = null;
            try {
                Class.forName("com.mysql.jdbc.Driver");
                String connURL = "jdbc:mysql://localhost/Dodo?user=Dodo&password=0000";
                conn = DriverManager.getConnection(connURL);

                if (armNumber != null){

                for(int i=0; i<armNumber.length; i++){

                        String sql="Insert into assign(UserID, Arm, ArmNumber, Remark, Time) Values(?,?,?,?,now())";
                        PreparedStatement pstmt=conn.prepareStatement(sql);

                        pstmt.setString (1,userId);
                        pstmt.setString (2,arm);
                        pstmt.setString (3,(armNumber[i]));
                        pstmt.setString (4,remark);

                    int rec=pstmt.executeUpdate();

                    if (rec==1)
                        count++;
                    }
                }
    %>


            <form action="assign.jsp" method="post">
                <label><%=count%> assigned!!</label>
                <td style width="50%">
                <p><input type="submit" value="Return" name="ReturnBtn" /></p>
            </form>


    <%
            conn.close();
            }
            catch(Exception e){
                e.printStackTrace();
            }
            finally{

            }
    %>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-07-25 05:17:53

首先编写类似于sql的语句

代码语言:javascript
复制
String sql="Insert into assign(UserID, Arm, ArmNumber, Remark, Time) Values(?,?,?,?,?)";

然后在pstmt.setString (4,remark);下添加一些额外的语句

代码语言:javascript
复制
DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Date date = new Date();
pstmt.setDate(5,dateFormat.format(date));
票数 0
EN

Stack Overflow用户

发布于 2018-07-25 08:39:01

now()包含在sql中,这是一个String,我想您是在寻找一个名为now()的方法,它返回当前的时间和日期,但是因为它在一个String中,所以没有调用该方法。您需要执行以下操作:

代码语言:javascript
复制
String sql="Insert into assign(UserID, Arm, ArmNumber, Remark, Time) Values(?,?,?,?,?)";
....
pstmt.setString(1,userId);
pstmt.setString(2,arm);
pstmt.setString(3,(armNumber[i]));
pstmt.setString(4,remark);
pstmt.setTimestamp(5, new Date());//this is java.util.Date
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51510445

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档