質問編集履歴
2
質問の訂正
test
CHANGED
File without changes
|
test
CHANGED
@@ -408,7 +408,9 @@
|
|
408
408
|
|
409
409
|
|
410
410
|
|
411
|
+
【追記】
|
412
|
+
|
411
|
-
|
413
|
+
大変申し訳ないのですが、私が前提条件を失念しておりました。
|
412
414
|
|
413
415
|
というのも、あいまい検索を掛けるテーブルはITEMですが、もう1つGENREというテーブルがあり、この2つを
|
414
416
|
|
1
内容の修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -405,3 +405,85 @@
|
|
405
405
|
文章が長くなってしまい申し訳ないのですが、DAOで問い合わせる場合のSERCHNAME_QUERYの記述方法を
|
406
406
|
|
407
407
|
どなたか教えて頂けないでしょうか?よろしくお願い致します。
|
408
|
+
|
409
|
+
|
410
|
+
|
411
|
+
回答誠にありがとう御座います。大変申し訳ないのですが、私が前提条件を失念しておりました。
|
412
|
+
|
413
|
+
というのも、あいまい検索を掛けるテーブルはITEMですが、もう1つGENREというテーブルがあり、この2つを
|
414
|
+
|
415
|
+
紐付けた上で全体の情報をSELECT処理により表示していました。
|
416
|
+
|
417
|
+
|
418
|
+
|
419
|
+
|
420
|
+
|
421
|
+
CREATE TABLE GENRE(
|
422
|
+
|
423
|
+
ID NUMBER(2),
|
424
|
+
|
425
|
+
NAME VARCHAR(20) NOT NULL,
|
426
|
+
|
427
|
+
Primary Key(ID)
|
428
|
+
|
429
|
+
);
|
430
|
+
|
431
|
+
|
432
|
+
|
433
|
+
CREATE TABLE ITEM(
|
434
|
+
|
435
|
+
ID NUMBER(5),
|
436
|
+
|
437
|
+
GENRE_ID NUMBER(2),
|
438
|
+
|
439
|
+
NAME VARCHAR(50) NOT NULL,
|
440
|
+
|
441
|
+
SALE_DATE DATE NOT NULL,
|
442
|
+
|
443
|
+
FAVORITE NUMBER(1) NOT NULL,
|
444
|
+
|
445
|
+
STORK CHAR(1) NOT NULL,
|
446
|
+
|
447
|
+
COM VARCHAR(200),
|
448
|
+
|
449
|
+
Primary Key(ID),
|
450
|
+
|
451
|
+
FOREIGN Key(GENRE_ID) REFERENCES GENRE(ID)
|
452
|
+
|
453
|
+
);
|
454
|
+
|
455
|
+
|
456
|
+
|
457
|
+
テーブルITEMの外部キーがテーブルGENREのIDとなります。
|
458
|
+
|
459
|
+
|
460
|
+
|
461
|
+
最初は既に情報が登録されているテーブルITEMのNAMEにのみ検索を掛けて、条件にあったものを持って来ればよい、と
|
462
|
+
|
463
|
+
考えていましたが、ジャンルを登録した後の、全ての情報取得は以下のSQLで実行していました。
|
464
|
+
|
465
|
+
|
466
|
+
|
467
|
+
//書籍情報をselect処理により取得するSQL文
|
468
|
+
|
469
|
+
public static final String SELECTBOOK_QUERY =
|
470
|
+
|
471
|
+
|
472
|
+
|
473
|
+
"SELECT TO_NUMBER(ni.ID) ID,ng.NAME GENRE,ni.NAME BOOK,TO_CHAR(ni.SALE_DATE,'yyyy/mm/dd') SALE_DATE,ni.FAVORITE FAVORITE,ni.STOCK STOCK,ni.COM COM" +
|
474
|
+
|
475
|
+
"FROM ITEM ni,GENRE ng WHERE ni.GENRE_ID = ng.ID ORDER BY ni.ID ";
|
476
|
+
|
477
|
+
|
478
|
+
|
479
|
+
両方のテーブルを結合し、登録されているジャンルとテーブルITEMの内容を、テーブルITEMのID順に並べるという処理内容です。
|
480
|
+
|
481
|
+
|
482
|
+
|
483
|
+
教えて頂いたSQLを実行した所DAOのIDを持ってくる所で直ぐに例外に入ったので、
|
484
|
+
|
485
|
+
恐らく前の自分の考えが間違っていた為だと思われます。回答して頂いたのに申し訳ないです。
|
486
|
+
|
487
|
+
|
488
|
+
|
489
|
+
なので、正しい質問としては、「上記のSQLを基にしたSERCHNAME_QUERY」の記述方法、になります。本当にすみません。
|