String strSQL="insert into PhoneBook(name,sex,number,address)
values"+name+","+sex+","+number+","+address+")";
stmt.executeUpdate(strSQL);
========================================================================================
name,sex,number,address是四个变量,运行的时候提示insert into语句有错误,为什么?
values"+name+","+sex+","+number+","+address+")";
stmt.executeUpdate(strSQL);
========================================================================================
name,sex,number,address是四个变量,运行的时候提示insert into语句有错误,为什么?
①values"+name+","+sex+","+number+","+address+")";①->values('" + name + "','" + sex + "','" + number + "','" + address + "')";
values ('"+name+"','"+sex+"',"+number+",'"+address+"')";
stmt.executeUpdate(strSQL);记住字符类型的要用 ' 括起来
我把代码发出来,大家再帮忙看看吧!谢谢了!
====================================================================
import java.sql.*;public class Insert { public static void main(String[] args) {
String name="123";
String sex="n";
String number="12345678";
String address="cd";
String DriverName="sun.jdbc.odbc.JdbcOdbcDriver";
String DBURL="jdbc:odbc:PhoneBook";
Connection conn=null;
Statement stmt;
try{
Class.forName(DriverName);
}
catch(ClassNotFoundException e)
{
System.out.println("无法加载JDBC驱动");
return;
}
catch(Exception e)
{
System.out.println(e.getMessage());
return;
}
try{
conn=DriverManager.getConnection(DBURL);
stmt=conn.createStatement();
String strSQL="insert into PhoneBook (name,sex,number,address) values ('"+name+"','"+sex+"','"+number+"','"+address+"')";
stmt.executeUpdate(strSQL);
stmt.close();
conn.close();
}
catch(SQLException c)
{
System.out.println(c.getMessage());
}
catch(Exception e)
{
System.out.println(e.getMessage());
}
finally
{
if(conn!=null)
{
try
{
conn.close();
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
}
}
number是什么字段类型?如果是int,不要加引号
所有的都是字符串
{
System.err.println(sql);//你把sql语句打印出来
System.out.println(c.getMessage());
}然后看看sql语句对不对,放到数据库去执行看看就明白了
conn=DriverManager.getConnection(DBURL);
stmt=conn.createStatement();
String strSQL="insert into PhoneBook (name,sex,number,address) values ('"+name+"','"+sex+"','"+number+"','"+address+"')";
stmt.executeUpdate(strSQL);
stmt.close();
conn.close();
}
catch(SQLException c)
{
加这个: System.err.println(sql);//你把sql语句打印出来
System.out.println(c.getMessage());
}
catch(Exception e)
{
System.out.println(e.getMessage());
}
finally
{
=====================================
添加那一句之后提示无法解析sql,我用的是eclipse
抱歉没看你程序
==================================================
一样的,都试过了,都不能解析!
System.out.println(strSQL);//
不是number
-______-;