当前位置: 技术问答>java相关
请高手指教,关于JAVA+SQL的问题
来源: 互联网 发布时间:2015-06-11
本文导语: 本人在学习中,写了如下程序test.java: import java.sql.*; public class test{ String sDBDriver = "sun.jdbc.odbc.JdbcOdbcDriver"; String sConnStr = "jdbc:odbc:faq"; Connection conn = null; test(){ try{ ...
本人在学习中,写了如下程序test.java:
import java.sql.*;
public class test{
String sDBDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
String sConnStr = "jdbc:odbc:faq";
Connection conn = null;
test(){
try{
Class.forName(sDBDriver);
conn = DriverManager.getConnection(sConnStr);
}
catch(Exception e){
System.err.print("test():");
e.printStackTrace();
}
}
public void deleteData(String userid) {
try {
String sql = "DELETE FROM Person WHERE userID = '" + userid + "'";
Statement stmt = conn.createStatement();
stmt.executeUpdate(sql);
conn.commit();
//ResultSet rs = stmt.executeQuery("select * from Person");
//rs.next();
stmt.close();
} catch (Exception e) {
System.err.print("deleteData():");
e.printStackTrace();
}
}
public static void main(String[] args){
test t = new test();
t.deleteData("65");
}
}
并用Access2000建立的数据库faq.mdb为数据源,此库中有一张表Person,内含字段userID(文本)和Name(文本),userID为主键,而且已经在表中输入了如下数据:
userID Name
65 user
66 admin
98 power
编译并执行后,打开数据库,发现改删除的数据并没有被删除。但是当将程序中被注释掉的内容加到程序中后,再次编译执行,就能够正常删除数据。请问这是为什么?在其它类似程序中也必须添加那两条语句吗?
import java.sql.*;
public class test{
String sDBDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
String sConnStr = "jdbc:odbc:faq";
Connection conn = null;
test(){
try{
Class.forName(sDBDriver);
conn = DriverManager.getConnection(sConnStr);
}
catch(Exception e){
System.err.print("test():");
e.printStackTrace();
}
}
public void deleteData(String userid) {
try {
String sql = "DELETE FROM Person WHERE userID = '" + userid + "'";
Statement stmt = conn.createStatement();
stmt.executeUpdate(sql);
conn.commit();
//ResultSet rs = stmt.executeQuery("select * from Person");
//rs.next();
stmt.close();
} catch (Exception e) {
System.err.print("deleteData():");
e.printStackTrace();
}
}
public static void main(String[] args){
test t = new test();
t.deleteData("65");
}
}
并用Access2000建立的数据库faq.mdb为数据源,此库中有一张表Person,内含字段userID(文本)和Name(文本),userID为主键,而且已经在表中输入了如下数据:
userID Name
65 user
66 admin
98 power
编译并执行后,打开数据库,发现改删除的数据并没有被删除。但是当将程序中被注释掉的内容加到程序中后,再次编译执行,就能够正常删除数据。请问这是为什么?在其它类似程序中也必须添加那两条语句吗?
|
没有碰到过
|
明天我 再看看
今天要回去休息了
今天要回去休息了