我在一个jsp的页面中获得一些用户填写的基本信息,现在想将这些信息插入到数据库中,我写的程序可以执行,也不会报错。但是在数据库中没有出现插入的数据。以下是我的程序代码
    <form method = post action =../ReleaseDepend>
    <table>
    <tr>
        <td></td>
        <td><input type="text" size = 60 name="Warnning" disabled></input></td>
        <td></td>
    </tr>
    <tr>
        <td>顧客名</td>
        <td><input type="text" size =40></input></td>
        <td><input type=button name="customerName" value="选择" onclick = "alert('you clicked the button');"></input></td>
    </tr>
    <tr>
        <td>产品</td>
        <td><select name=productionName size=1>
            <option value="香蕉" selected>香蕉</option>
            <option value="苹果">苹果</option>
        </select></td>
        <td></td>
    </tr>
    <tr>
        <td>版本</td>
        <td><select name=version size=1>
            <option value="赵本山" selected>赵本山</option>
            <option value="宋丹丹">"宋丹丹"</option>
        </select></td>
        <td></td>
    </tr>
    <tr>
        <td>使用次数</td>
        <td><input type="text" name = useTimes size =40></input></td>
        <td>(个数)</td>
    </tr>
    <tr>
        <td>试用时间</td>
        <td><input type="text" name = tryDay size =40></input></td>
        <td>(日)</td>
    </tr>
    <tr>
        <td>时间</td>
        <td><input type="text" id="ReleaseTime" size =40 disabled >
<script language="JavaScript">
    var now = new Date();
    ReleaseTime.value = now.getYear() + "-"+(now.getMonth() + 1) + "-"
            + now.getDate();
</script>
        </td>
        <td></td>
    </tr>
    <tr>
        <td>发行人</td>
        <td><input type="text" name=Releaser size =40></input></td>
        <td></td>
    </tr>
    <tr>
        <td>备注</td>
        <td><textarea name =otherThings cols =40 rows=3></textarea></td>
        <td></td>
    </tr>
    <tr>
        <td></td>
        <td><input type=submit value="发行"></input>&nbsp;&nbsp;&nbsp; <input
            type=reset value="清空"></input></td>
        <td></td>
    </tr>
</table>
</form>
上面的这个是jsp页面的代码,下面的这个是servlet的代码,路径配置正确。import java.io.IOException;
import java.sql.*;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.Service.ConnectionFactory;public class ReleaseDepend extends HttpServlet { protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
doPost(request, response);
} protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
String customer = request.getParameter("customer");
String productionName = request.getParameter("productionName");
String version = request.getParameter("version");
String useTimes = request.getParameter("useTimes");
String tryDay = request.getParameter("tryDay");
String releaseTime = request.getParameter("releaseTime");
String releaser = request.getParameter("releaser");
String otherThings = request.getParameter("otherThings"); /*
 * ReleaseDependModel newReleaseDepend = new ReleaseDependModel();
 * newReleaseDepend
 * .Doget(customer,productionName,version,useTimes,tryDay
 * ,releaseTime,releaser,otherThings); ReleaseDependDao newconnection
 * =new ReleaseDependDao() ; newconnection.InsertData();
 */
String sql = "insert into releasedepend(customerName,productionName,version,useTimes,tryDay,releaseDependDay,releaseDepender,otherThings)values('"
+ customer
+ "','"
+ productionName
+ "','"
+ version
+ "','"
+ useTimes
+ "','"
+ tryDay
+ "','"
+ releaseTime
+ "','"
+ releaser + "','" + otherThings + "')";
 Connection conn=null; 
 Statement stmt=null;
 ConnectionFactory newconn = new ConnectionFactory();
 try{
 conn = newconn.getConnection();
 }
 catch(Exception e){
 e.printStackTrace();
 }
 try{
 stmt = conn.createStatement();
 stmt.executeUpdate(sql);
 }
 catch(SQLException e){
 e.printStackTrace();
 }
/*request.setAttribute("customer", customer);
request.setAttribute("productioName", productionName);
request.setAttribute("version", version);
request.setAttribute("useTimes", useTimes);
request.setAttribute("tryDay", tryDay);
request.getRequestDispatcher("/jsp/ReleaseComplete.jsp").forward(
request, response);*/
}}

解决方案 »

  1.   

    int result=stmt.executeUpdate(sql);
    System.out.println(result);看看是不是1?
    如果是的话应该没有问题。
      

  2.   

    敢问你用的是哪个数据库?你的SQL语句对吗?insert into tableName() values()
      

  3.   

    用的数据库是mysql感觉语句应该是没问题啊?
      

  4.   

    检查 SQL 语句是关键, 
    主键 插入了没?
      

  5.   

    调试下。输出下你的参数和sql语句。就知道啦
      

  6.   

    你输出下你的SQL语句,你的sql拼装的应该不对
      

  7.   

    7楼,你说sql写的有问题,那请问哪个地方有错误啊,应该怎么改啊。
    我的数据库中的表是这样的releasedepend(customerName,productionName,version,useTimes,tryDay,releaseDependDay,releaseDepender,otherThings)。
      

  8.   

    你用stringbuffer 拼装,ok?
      

  9.   

    你把这条sql语句直接打印出来,复制一下,用客户端执行下,看看有没有错不就知道了啊
    insert的基本语法你总知道的吧 insert into tablename values();
      

  10.   

    你把这条sql语句直接打印出来 看看
      

  11.   

    好像values之前没有空格呀。
      

  12.   

    还有啊。保证数据类型和数据库中的是对应的。日期不能设置成了String了。