大连高金科技债务:[jsp例题]为什么不能插入数据呢..哭了...
来源:百度文库 编辑:杭州交通信息网 时间:2024/05/04 21:22:03
<html>
<head>
<title>信息查询系统</title>
</head>
<%@page contentType="text/html; charset=GB2312"%>
<body>
<h1 align="center" class="style1">信息查询系统 </h1>
<form name="form1" method="post" action="insert.jsp">
<p>
姓名:
<input type="text" name="names">
电话:
<input type="text" name="phone">
<input type="submit" name="Submit" value="插入">
</p>
</form>
<p align="left" class="style1"> </p>
</body>
</html>
---------------------- insert.jsp ---------------------
<%@ page import="java.sql.*" %>
<%@ page contentType="text/html;charset=GB2312" %>
<%
String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
String url = "jdbc:odbc:wish";
String name = request.getParameter("names");
String phone = request.getParameter("phone");
//out.println(name+"<br>"); //值已经取到了
//out.println(phone+"<br>");
//就是不能插入数据库..晕.为什么?
String insert = "INSERT INTO worker"
+"(names,phone)"
+"VALUES('name','phone')";
try
{
Class.forName(driver);
}
catch(Exception e)
{
e.printStackTrace();
}
try
{
Connection con = DriverManager.getConnection(url);
out.print("连接成功。");
Statement smt = con.createStatement();
smt.executeUpdate(insert);
smt.close();
con.close();
}
catch(Exception e)
{
e.printStackTrace();
//out.print(insert); //打印出来的拿到access里面查询运行也能正确插入...
}
%>
为什么不能插入数据呢..哭了...
怎么也插入不进去.也没有错误提示...把sql语句打印,拿到access里面查询里面运行也可以..在这就是不行..
odbc数据源起名什么的没有问题.我单独插入能插,加上一个html,在插就插不进去了.估计是sql那里有写错的地方.
麻烦大家不忙时候看看....着急啊......呵呵
<head>
<title>信息查询系统</title>
</head>
<%@page contentType="text/html; charset=GB2312"%>
<body>
<h1 align="center" class="style1">信息查询系统 </h1>
<form name="form1" method="post" action="insert.jsp">
<p>
姓名:
<input type="text" name="names">
电话:
<input type="text" name="phone">
<input type="submit" name="Submit" value="插入">
</p>
</form>
<p align="left" class="style1"> </p>
</body>
</html>
---------------------- insert.jsp ---------------------
<%@ page import="java.sql.*" %>
<%@ page contentType="text/html;charset=GB2312" %>
<%
String driver = "sun.jdbc.odbc.JdbcOdbcDriver";
String url = "jdbc:odbc:wish";
String name = request.getParameter("names");
String phone = request.getParameter("phone");
//out.println(name+"<br>"); //值已经取到了
//out.println(phone+"<br>");
//就是不能插入数据库..晕.为什么?
String insert = "INSERT INTO worker"
+"(names,phone)"
+"VALUES('name','phone')";
try
{
Class.forName(driver);
}
catch(Exception e)
{
e.printStackTrace();
}
try
{
Connection con = DriverManager.getConnection(url);
out.print("连接成功。");
Statement smt = con.createStatement();
smt.executeUpdate(insert);
smt.close();
con.close();
}
catch(Exception e)
{
e.printStackTrace();
//out.print(insert); //打印出来的拿到access里面查询运行也能正确插入...
}
%>
为什么不能插入数据呢..哭了...
怎么也插入不进去.也没有错误提示...把sql语句打印,拿到access里面查询里面运行也可以..在这就是不行..
odbc数据源起名什么的没有问题.我单独插入能插,加上一个html,在插就插不进去了.估计是sql那里有写错的地方.
麻烦大家不忙时候看看....着急啊......呵呵
对,你的sql写错了。
String insert = "INSERT INTO worker"
+"(names,phone)"
+"VALUES('name','phone')";
的结果是
INSERT INTO worker (names,phone)
VALUES('name','phone')
看出问题了吗?
你需要的是将变量name和phone的值存入数据库而不是字符串"name"和"phone"
正确的写法是:
String insert = "INSERT INTO worker"
+"(names,phone)"
+"VALUES('" + name " + "','" + phone + "')";