关于CachedRowSet的疑问 exception异常 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 源代码如下import java.io.FileInputStream;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.Statement;import java.util.Properties;import javax.sql.rowset.CachedRowSet;import javax.sql.rowset.RowSetFactory;import javax.sql.rowset.RowSetProvider;public class CachedRowSetTest { private static String driver; private static String url; private static String user; private static String password; public void initParam(String paramFile) throws Exception { Properties pop=new Properties(); pop.load(new FileInputStream(paramFile)); driver=pop.getProperty("driver"); url=pop.getProperty("url"); user=pop.getProperty("user"); password=pop.getProperty("pass"); } public CachedRowSet query(String sql) throws Exception { Class.forName(driver); Connection conn=DriverManager.getConnection(url, user, password); Statement statement=conn.createStatement(); ResultSet rs=statement.executeQuery(sql); RowSetFactory factory=RowSetProvider.newFactory(); CachedRowSet cachedRowSet=factory.createCachedRowSet(); cachedRowSet.populate(rs); rs.close(); statement.close(); conn.close(); return cachedRowSet; } public static void main(String[] args) throws Exception { CachedRowSetTest cachedRowSetTest=new CachedRowSetTest(); cachedRowSetTest.initParam("F:/新建文件夹 (3)/codes/13/13.4/mysql.ini"); CachedRowSet rs=cachedRowSetTest.query("select * from student "); rs.afterLast(); while(rs.previous()) { System.out.println(rs.getString(1)+"\t"+rs.getString(2)+"\t"+rs.getString(3)); if(rs.getInt("id")==6) { rs.updateString("name", "qq"); rs.updateRow(); //rs.acceptChanges(); } } Connection conn=DriverManager.getConnection(url,user,password); conn.setAutoCommit(false); rs.acceptChanges(conn); } } 我发现与语句没有问题,出问题的是数据库,只要我的数据表有一个字段用了unsigned not null auto_increment primarykey他就报错 问个函数,字节数转成x.x(KB)形式的字符串 谁有JBuider? 如何清除TreeView中原有的数据 如何读取到gif文件的pix和offset 初学小问题 java网络中传递对象 在下面这段代码中,如果对init方法只加synchronized关键字,则不能达到互斥的目的,还要再加上static关键字才能互斥,为什么? java发送邮件的问题! 我需要一个Swing组件,不知该用什么? 请人做一个商用的邮件系统 异常捕获问题 Runtime.getRuntime().exec() 可使用代理IP执行吗?
源代码如下import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Properties;import javax.sql.rowset.CachedRowSet;
import javax.sql.rowset.RowSetFactory;
import javax.sql.rowset.RowSetProvider;public class CachedRowSetTest {
private static String driver;
private static String url;
private static String user;
private static String password;
public void initParam(String paramFile) throws Exception
{
Properties pop=new Properties();
pop.load(new FileInputStream(paramFile));
driver=pop.getProperty("driver");
url=pop.getProperty("url");
user=pop.getProperty("user");
password=pop.getProperty("pass");
}
public CachedRowSet query(String sql) throws Exception
{
Class.forName(driver);
Connection conn=DriverManager.getConnection(url, user, password);
Statement statement=conn.createStatement();
ResultSet rs=statement.executeQuery(sql);
RowSetFactory factory=RowSetProvider.newFactory();
CachedRowSet cachedRowSet=factory.createCachedRowSet();
cachedRowSet.populate(rs);
rs.close();
statement.close();
conn.close();
return cachedRowSet;
}
public static void main(String[] args) throws Exception
{
CachedRowSetTest cachedRowSetTest=new CachedRowSetTest();
cachedRowSetTest.initParam("F:/新建文件夹 (3)/codes/13/13.4/mysql.ini");
CachedRowSet rs=cachedRowSetTest.query("select * from student ");
rs.afterLast();
while(rs.previous())
{
System.out.println(rs.getString(1)+"\t"+rs.getString(2)+"\t"+rs.getString(3));
if(rs.getInt("id")==6)
{
rs.updateString("name", "qq");
rs.updateRow();
//rs.acceptChanges();
}
}
Connection conn=DriverManager.getConnection(url,user,password);
conn.setAutoCommit(false);
rs.acceptChanges(conn);
} }
他就报错