作者satank ()
看板java
标题Re: [问题] 程式执行到updateRow()会发生错误
时间Thu Sep 3 13:29:37 2009
程式码如下
public class updateRS {
public static void main(String[] args) {
String connectionUrl = "jdbc:sqlserver://localhost:1433;" +
"databaseName=AdventureWorks;user=sa;password=1234";
Connection con = null;
Statement stmt = null;
ResultSet rs = null;
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
con = DriverManager.getConnection(connectionUrl);
String SQL = "SELECT * FROM HumanResources.Department;";
stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE);
rs = stmt.executeQuery(SQL);
rs.moveToInsertRow();
rs.updateString("Name", "Accounting");
rs.updateString("GroupName", "Executive General and Administration");
rs.updateString("ModifiedDate", "08/01/2006");
rs.insertRow();
SQL = "SELECT * FROM HumanResources.Department WHERE Name =
'Accounting';";
rs = stmt.executeQuery(SQL);
displayRow("ADDED ROW", rs);
//以上执行都没有问题,也有看到新增的资料列
rs.first();
rs.updateString("GroupName", "Finance");
//在上一行之前可以印出一些测试文字
rs.updateRow();
//这行之後就会跳出错误讯息
rs = stmt.executeQuery(SQL);
displayRow("UPDATED ROW", rs);
rs.first();
rs.deleteRow();
System.out.println("ROW DELETED");
}
catch (Exception e) {
e.printStackTrace();
}
finally {
if (rs != null) try { rs.close(); } catch(Exception e) {}
if (stmt != null) try { stmt.close(); } catch(Exception e) {}
if (con != null) try { con.close(); } catch(Exception e) {}
}
}
private static void displayRow(String title, ResultSet rs) {
try {
System.out.println(title);
while (rs.next()) {
System.out.println(rs.getString("Name") + " : " +
rs.getString("GroupName"));
System.out.println();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
第一次发文,不懂规矩请各位见谅。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.231.151.82
※ 编辑: satank 来自: 61.231.151.82 (09/03 13:30)
※ 编辑: satank 来自: 61.231.151.82 (09/03 13:37)
※ 编辑: satank 来自: 61.231.151.82 (09/03 13:38)
1F:→ ken915007:我第一次看到ResultSet用成这样…高手… 09/03 15:29
2F:→ satank:这是微软的范例程式 @_@ 09/03 15:53
3F:推 guestciel:ResultSet中你写的updateString&insertRow记忆中是还没 09/03 20:41
4F:→ guestciel:任何资料库驱动程式支援的method.(可以自己去MySQL查查) 09/03 20:46
5F:→ guestciel:上面说错..是SQL Server..官方的API跟范例都是放心酸的 09/03 20:48
6F:→ guestciel:不过如果喜欢那些method..请改用RowSet.. 09/03 20:50