teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

DTO,メソッドを追記しました。

2018/07/28 10:28

投稿

退会済みユーザー
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(" HOKOKUHIDUKE");
26
+ sb.append("HOKOKUHIDUKE");
13
- sb.append(" )VALUES(");
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
- sb.append(" '?'); ");
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文を記述しました。

2018/07/28 10:28

投稿

退会済みユーザー
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
  ```