質問編集履歴
2
DTO,メソッドを追記しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -7,13 +7,260 @@
|
|
7
7
|
バージョン:Oracle12cです。
|
8
8
|
|
9
9
|
```java
|
10
|
+
public boolean create(Gyomu gyomu) throws SQLException, ClassNotFoundException {
|
11
|
+
|
12
|
+
Connection conn = null;
|
13
|
+
|
14
|
+
try {
|
15
|
+
|
16
|
+
conn = connectManager.getConn(false);
|
17
|
+
|
18
|
+
// INSERT文の準備(idは自動連番なので指定しない)WHERE句で指定する
|
19
|
+
// StringBuilderで文字列の連結ができる
|
20
|
+
|
21
|
+
|
22
|
+
StringBuilder sb = new StringBuilder();
|
23
|
+
|
10
|
-
sb.append("INSERT");
|
24
|
+
sb.append("INSERT");
|
11
|
-
sb.append(" INTO GYOMUHOKOKU(
|
25
|
+
sb.append(" INTO GYOMUHOKOKU(");
|
12
|
-
sb.append("
|
26
|
+
sb.append("HOKOKUHIDUKE");
|
13
|
-
sb.append("
|
27
|
+
sb.append(")VALUES(");
|
28
|
+
sb.append("?);");
|
29
|
+
|
30
|
+
// sb.toStringで、文字列にする
|
31
|
+
// sbのままだと、prepareStatementが受け取れない
|
32
|
+
|
33
|
+
PreparedStatement pStmt = conn.prepareStatement(sb.toString());
|
34
|
+
|
35
|
+
|
36
|
+
pStmt.setString(1, gyomu.getHokokuhiduke());
|
37
|
+
|
38
|
+
|
39
|
+
|
40
|
+
int result = pStmt.executeUpdate();
|
41
|
+
|
42
|
+
StringBuilder sb2 = new StringBuilder();
|
43
|
+
|
44
|
+
//HOKOKUSAKIテーブルのINSERT文の発行
|
45
|
+
|
46
|
+
|
47
|
+
|
48
|
+
sb2.append(" INSERT ");
|
49
|
+
sb2.append(" INTO HOKOKUSAKI(");
|
50
|
+
sb2.append(" HOKOKUSAKISEQ");
|
51
|
+
sb2.append(" , STETUSID = ?");
|
52
|
+
sb2.append(" , USERID = ?");
|
53
|
+
sb2.append(" , HOKOKUSAKINAME = ?");
|
14
|
-
|
54
|
+
sb2.append(" , CREATEDATE = ?");
|
55
|
+
sb2.append(" , CREATEUSER = ?");
|
56
|
+
sb2.append(" , UPDATEDATE = ?");
|
57
|
+
sb2.append(" , UPDATEUSER = ?");
|
58
|
+
sb2.append(")");
|
59
|
+
sb2.append("VALUES ( ");
|
60
|
+
sb2.append(" ( ");
|
61
|
+
sb2.append(" SELECT");
|
62
|
+
sb2.append(" coalesce(MAX(HOKOKUSAKISEQ), '0') + 1 ");
|
63
|
+
sb2.append(" FROM");
|
64
|
+
sb2.append(" HOKOKUSAKI");
|
65
|
+
sb2.append(" ) ");
|
66
|
+
sb.append(" ,?");
|
67
|
+
sb.append(" ,?");
|
68
|
+
sb.append(" ,?");
|
69
|
+
sb.append(" ,?");
|
70
|
+
sb.append(" ,?");
|
71
|
+
sb.append(" ,?");
|
72
|
+
sb.append(" ,?");
|
73
|
+
sb2.append(");");
|
74
|
+
|
75
|
+
PreparedStatement pStmt2 = conn.prepareStatement(sb2.toString());
|
76
|
+
// INSERT文中の「?」に使用する値を設定し、SQLを完成
|
77
|
+
|
78
|
+
pStmt2.setString(1, gyomu.getStetusid());
|
79
|
+
pStmt2.setString(2, gyomu.getUserId());
|
80
|
+
pStmt2.setString(3, gyomu.getHokokusakiname());
|
81
|
+
pStmt2.setString(4, gyomu.getCreatedate());
|
82
|
+
pStmt2.setString(5, gyomu.getCreateuser());
|
83
|
+
pStmt2.setString(6, gyomu.getUpdatedate());
|
84
|
+
pStmt2.setString(7, gyomu.getUpdateuser());
|
85
|
+
|
86
|
+
// INSERT文を実行
|
87
|
+
|
88
|
+
int result2 = pStmt2.executeUpdate();
|
89
|
+
|
90
|
+
if (result != 1 && result2 != 1) {
|
91
|
+
conn.rollback();
|
92
|
+
return false;
|
93
|
+
}
|
94
|
+
|
95
|
+
conn.commit();
|
96
|
+
|
97
|
+
} catch (SQLException e) {
|
98
|
+
e.printStackTrace();
|
99
|
+
return false;
|
100
|
+
} finally {
|
101
|
+
connectManager.close(conn);
|
102
|
+
|
103
|
+
}
|
104
|
+
|
105
|
+
return false;
|
106
|
+
|
107
|
+
}
|
108
|
+
|
15
109
|
```
|
16
110
|
|
111
|
+
```java
|
112
|
+
|
113
|
+
package dto;
|
114
|
+
|
115
|
+
public class Gyomu {
|
116
|
+
|
117
|
+
private String kanrino;
|
118
|
+
private String stetusid;
|
119
|
+
private String stetusname;
|
120
|
+
private String hokokuhiduke;
|
121
|
+
private String yotei;
|
122
|
+
private String userId;
|
123
|
+
private String username;
|
124
|
+
private String hokokusakiseq;
|
125
|
+
private String hokokusakiname;
|
126
|
+
private String zisseki;
|
127
|
+
private String tokkizikou;
|
128
|
+
private String shokan;
|
129
|
+
private String kakunosaki;
|
130
|
+
private String zikaiyotei;
|
131
|
+
private String komento;
|
132
|
+
private String biko;
|
133
|
+
private String createdate;
|
134
|
+
private String createuser;
|
135
|
+
private String updatedate;
|
136
|
+
private String updateuser;
|
137
|
+
|
138
|
+
public String getKanrino() {
|
139
|
+
return kanrino;
|
140
|
+
}
|
141
|
+
public void setKanrino(String kanrino) {
|
142
|
+
this.kanrino = kanrino;
|
143
|
+
}
|
144
|
+
public String getStetusid() {
|
145
|
+
return stetusid;
|
146
|
+
}
|
147
|
+
public void setStetusid(String stetusid) {
|
148
|
+
this.stetusid = stetusid;
|
149
|
+
}
|
150
|
+
public String getStetusname() {
|
151
|
+
return stetusname;
|
152
|
+
}
|
153
|
+
public void setStetusname(String stetusname) {
|
154
|
+
this.stetusname = stetusname;
|
155
|
+
}
|
156
|
+
public String getHokokuhiduke() {
|
157
|
+
return hokokuhiduke;
|
158
|
+
}
|
159
|
+
public void setHokokuhiduke(String hokokuhiduke) {
|
160
|
+
this.hokokuhiduke = hokokuhiduke;
|
161
|
+
}
|
162
|
+
public String getYotei() {
|
163
|
+
return yotei;
|
164
|
+
}
|
165
|
+
public void setYotei(String yotei) {
|
166
|
+
this.yotei = yotei;
|
167
|
+
}
|
168
|
+
public String getUserId() {
|
169
|
+
return userId;
|
170
|
+
}
|
171
|
+
public void setUserId(String userId) {
|
172
|
+
this.userId = userId;
|
173
|
+
}
|
174
|
+
public String getUsername() {
|
175
|
+
return username;
|
176
|
+
}
|
177
|
+
public void setUsername(String username) {
|
178
|
+
this.username = username;
|
179
|
+
}
|
180
|
+
public String getHokokusakiseq() {
|
181
|
+
return hokokusakiseq;
|
182
|
+
}
|
183
|
+
public void setHokokusakiseq(String hokokusakiseq) {
|
184
|
+
this.hokokusakiseq = hokokusakiseq;
|
185
|
+
}
|
186
|
+
public String getHokokusakiname() {
|
187
|
+
return hokokusakiname;
|
188
|
+
}
|
189
|
+
public void setHokokusakiname(String hokokusakiname) {
|
190
|
+
this.hokokusakiname = hokokusakiname;
|
191
|
+
}
|
192
|
+
public String getZisseki() {
|
193
|
+
return zisseki;
|
194
|
+
}
|
195
|
+
public void setZisseki(String zisseki) {
|
196
|
+
this.zisseki = zisseki;
|
197
|
+
}
|
198
|
+
public String getTokkizikou() {
|
199
|
+
return tokkizikou;
|
200
|
+
}
|
201
|
+
public void setTokkizikou(String tokkizikou) {
|
202
|
+
this.tokkizikou = tokkizikou;
|
203
|
+
}
|
204
|
+
public String getShokan() {
|
205
|
+
return shokan;
|
206
|
+
}
|
207
|
+
public void setShokan(String shokan) {
|
208
|
+
this.shokan = shokan;
|
209
|
+
}
|
210
|
+
public String getKakunosaki() {
|
211
|
+
return kakunosaki;
|
212
|
+
}
|
213
|
+
public void setKakunosaki(String kakunosaki) {
|
214
|
+
this.kakunosaki = kakunosaki;
|
215
|
+
}
|
216
|
+
public String getZikaiyotei() {
|
217
|
+
return zikaiyotei;
|
218
|
+
}
|
219
|
+
public void setZikaiyotei(String zikaiyotei) {
|
220
|
+
this.zikaiyotei = zikaiyotei;
|
221
|
+
}
|
222
|
+
public String getKomento() {
|
223
|
+
return komento;
|
224
|
+
}
|
225
|
+
public void setKomento(String komento) {
|
226
|
+
this.komento = komento;
|
227
|
+
}
|
228
|
+
public String getBiko() {
|
229
|
+
return biko;
|
230
|
+
}
|
231
|
+
public void setBiko(String biko) {
|
232
|
+
this.biko = biko;
|
233
|
+
}
|
234
|
+
public String getCreatedate() {
|
235
|
+
return createdate;
|
236
|
+
}
|
237
|
+
public void setCreatedate(String createdate) {
|
238
|
+
this.createdate = createdate;
|
239
|
+
}
|
240
|
+
public String getCreateuser() {
|
241
|
+
return createuser;
|
242
|
+
}
|
243
|
+
public void setCreateuser(String createuser) {
|
244
|
+
this.createuser = createuser;
|
245
|
+
}
|
246
|
+
public String getUpdatedate() {
|
247
|
+
return updatedate;
|
248
|
+
}
|
249
|
+
public void setUpdatedate(String updatedate) {
|
250
|
+
this.updatedate = updatedate;
|
251
|
+
}
|
252
|
+
public String getUpdateuser() {
|
253
|
+
return updateuser;
|
254
|
+
}
|
255
|
+
public void setUpdateuser(String updateuser) {
|
256
|
+
this.updateuser = updateuser;
|
257
|
+
}
|
258
|
+
|
259
|
+
}
|
260
|
+
|
261
|
+
|
262
|
+
```
|
263
|
+
|
17
264
|
```SQL
|
18
265
|
|
19
266
|
CREATE TABLE "SYSTEM"."GYOMUHOKOKU"
|
1
TABLE文を記述しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -12,4 +12,35 @@
|
|
12
12
|
sb.append(" HOKOKUHIDUKE");
|
13
13
|
sb.append(" )VALUES(");
|
14
14
|
sb.append(" '?'); ");
|
15
|
+
```
|
16
|
+
|
17
|
+
```SQL
|
18
|
+
|
19
|
+
CREATE TABLE "SYSTEM"."GYOMUHOKOKU"
|
20
|
+
( "KANRINO" NUMBER GENERATED ALWAYS AS IDENTITY MINVALUE 1 MAXVALUE 99999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE NOKEEP NOSCALE NOT NULL ENABLE,
|
21
|
+
"HOKOKUHIDUKE" DATE,
|
22
|
+
"YOTEI" NVARCHAR2(1000),
|
23
|
+
"ZISSEKI" NVARCHAR2(1000),
|
24
|
+
"TOKKIZIKOU" NVARCHAR2(1000),
|
25
|
+
"SHOKAN" NVARCHAR2(1000),
|
26
|
+
"KAKUNOSAKI" NVARCHAR2(1000),
|
27
|
+
"ZIKAIYOTEI" NVARCHAR2(1000),
|
28
|
+
"KOMENTO" NVARCHAR2(1000),
|
29
|
+
"BIKO" NVARCHAR2(1000),
|
30
|
+
"CREATEDATE" DATE,
|
31
|
+
"CREATEUSER" NVARCHAR2(10),
|
32
|
+
"UPDATEDATE" DATE,
|
33
|
+
"UPDATEUSER" NVARCHAR2(10),
|
34
|
+
CONSTRAINT "GYOMUHOKOKU_PKC" PRIMARY KEY ("KANRINO")
|
35
|
+
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255
|
36
|
+
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
|
37
|
+
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
|
38
|
+
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
|
39
|
+
TABLESPACE "SYSTEM" ENABLE
|
40
|
+
) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
|
41
|
+
NOCOMPRESS LOGGING
|
42
|
+
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
|
43
|
+
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
|
44
|
+
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
|
45
|
+
TABLESPACE "SYSTEM"
|
15
46
|
```
|