質問編集履歴
4
質問文を修正しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -76,7 +76,7 @@
|
|
76
76
|
|
77
77
|
// SELECT文を準備
|
78
78
|
|
79
|
-
String sql = "insert into MASTER (NAME) values ('山
|
79
|
+
String sql = "insert into MASTER (NAME) values ('尾山')";
|
80
80
|
|
81
81
|
|
82
82
|
|
3
質問文を修正しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -4,7 +4,25 @@
|
|
4
4
|
|
5
5
|
|
6
6
|
|
7
|
+
エラー内容:
|
8
|
+
|
7
|
-
|
9
|
+
Exception in thread "main" java.sql.SQLException: 列の型が無効です。: getInt not implemented for class oracle.jdbc.driver.T4CRowidAccessor
|
10
|
+
|
11
|
+
at oracle.jdbc.driver.GeneratedAccessor.getInt(GeneratedAccessor.java:372)
|
12
|
+
|
13
|
+
at oracle.jdbc.driver.GeneratedStatement.getInt(GeneratedStatement.java:197)
|
14
|
+
|
15
|
+
at oracle.jdbc.driver.GeneratedScrollableResultSet.getInt(GeneratedScrollableResultSet.java:244)
|
16
|
+
|
17
|
+
at dao.SampleDAO.main(SampleDAO.java:32)
|
18
|
+
|
19
|
+
|
20
|
+
|
21
|
+
SampleDAO.java:32は、BigDecimal id = rs.getBigDecimal(1);の部分です。
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
|
8
26
|
|
9
27
|
|
10
28
|
|
2
コードを変更しました
test
CHANGED
File without changes
|
test
CHANGED
@@ -4,13 +4,15 @@
|
|
4
4
|
|
5
5
|
|
6
6
|
|
7
|
-
エラー内容:
|
7
|
+
エラー内容:Exception in thread "main" java.sql.SQLException: 列の型が無効です。: getInt not implemented for class oracle.jdbc.driver.T4CRowidAccessor:
|
8
8
|
|
9
|
-
BigDecimal id = rs.getBigDecimal(1);がエラーだといわれていますが、
|
10
9
|
|
11
|
-
何が悪いのかわかりません。どうしたらいいでしょうか。
|
12
10
|
|
13
11
|
```Java
|
12
|
+
|
13
|
+
package dao;
|
14
|
+
|
15
|
+
|
14
16
|
|
15
17
|
package dao;
|
16
18
|
|
@@ -52,41 +54,45 @@
|
|
52
54
|
|
53
55
|
Statement stat = conn.createStatement();
|
54
56
|
|
57
|
+
|
58
|
+
|
59
|
+
// SELECT文を準備
|
60
|
+
|
61
|
+
String sql = "insert into MASTER (NAME) values ('山添')";
|
62
|
+
|
63
|
+
|
64
|
+
|
65
|
+
stat.execute(sql, Statement.RETURN_GENERATED_KEYS);
|
66
|
+
|
67
|
+
|
68
|
+
|
69
|
+
|
70
|
+
|
55
71
|
ResultSet rs = stat.getGeneratedKeys();
|
56
72
|
|
57
73
|
|
58
74
|
|
59
75
|
try {
|
60
76
|
|
77
|
+
while(rs.next()) {
|
61
78
|
|
79
|
+
rs.getInt(1);
|
62
80
|
|
81
|
+
BigDecimal id = rs.getBigDecimal(1);
|
82
|
+
|
63
|
-
|
83
|
+
System.out.println(id);
|
64
84
|
|
65
85
|
|
66
86
|
|
67
|
-
|
87
|
+
}
|
68
88
|
|
69
89
|
|
70
|
-
|
71
|
-
stat.execute(sql, Statement.RETURN_GENERATED_KEYS);
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
rs.next();
|
76
|
-
|
77
|
-
BigDecimal id = rs.getBigDecimal(1);
|
78
|
-
|
79
|
-
System.out.println(id);
|
80
90
|
|
81
91
|
} finally {
|
82
92
|
|
83
93
|
rs.close();
|
84
94
|
|
85
|
-
|
86
|
-
|
87
95
|
}
|
88
|
-
|
89
|
-
|
90
96
|
|
91
97
|
}
|
92
98
|
|
1
test
CHANGED
File without changes
|
test
CHANGED
File without changes
|