atwiki-logo
  • 新規作成
    • 新規ページ作成
    • 新規ページ作成(その他)
      • このページをコピーして新規ページ作成
      • このウィキ内の別ページをコピーして新規ページ作成
      • このページの子ページを作成
    • 新規ウィキ作成
  • 編集
    • ページ編集
    • ページ編集(簡易版)
    • ページ名変更
    • メニュー非表示でページ編集
    • ページの閲覧/編集権限変更
    • ページの編集モード変更
    • このページにファイルをアップロード
    • メニューを編集
    • 右メニューを編集
  • バージョン管理
    • 最新版変更点(差分)
    • 編集履歴(バックアップ)
    • アップロードファイル履歴
    • ページ操作履歴
  • ページ一覧
    • ページ一覧
    • このウィキのタグ一覧
    • このウィキのタグ(更新順)
    • おまかせページ移動
  • RSS
    • このウィキの更新情報RSS
    • このウィキ新着ページRSS
  • ヘルプ
    • ご利用ガイド
    • Wiki初心者向けガイド(基本操作)
    • このウィキの管理者に連絡
    • 運営会社に連絡(不具合、障害など)
ページ検索 メニュー
Unofficial DB2 Wiki
  • ウィキ募集バナー
  • 目安箱バナー
  • 操作ガイド
  • 新規作成
  • 編集する
  • 全ページ一覧
  • 登録/ログイン
ページ一覧
Unofficial DB2 Wiki
  • ウィキ募集バナー
  • 目安箱バナー
  • 操作ガイド
  • 新規作成
  • 編集する
  • 全ページ一覧
  • 登録/ログイン
ページ一覧
Unofficial DB2 Wiki
ページ検索 メニュー
  • 新規作成
  • 編集する
  • 登録/ログイン
  • 管理メニュー
管理メニュー
  • 新規作成
    • 新規ページ作成
    • 新規ページ作成(その他)
      • このページをコピーして新規ページ作成
      • このウィキ内の別ページをコピーして新規ページ作成
      • このページの子ページを作成
    • 新規ウィキ作成
  • 編集
    • ページ編集
    • ページ編集(簡易版)
    • ページ名変更
    • メニュー非表示でページ編集
    • ページの閲覧/編集権限変更
    • ページの編集モード変更
    • このページにファイルをアップロード
    • メニューを編集
    • 右メニューを編集
  • バージョン管理
    • 最新版変更点(差分)
    • 編集履歴(バックアップ)
    • アップロードファイル履歴
    • ページ操作履歴
  • ページ一覧
    • このウィキの全ページ一覧
    • このウィキのタグ一覧
    • このウィキのタグ一覧(更新順)
    • このページの全コメント一覧
    • このウィキの全コメント一覧
    • おまかせページ移動
  • RSS
    • このwikiの更新情報RSS
    • このwikiの新着ページRSS
  • ヘルプ
    • ご利用ガイド
    • Wiki初心者向けガイド(基本操作)
    • このウィキの管理者に連絡
    • 運営会社に連絡する(不具合、障害など)
  • atwiki
  • Unofficial DB2 Wiki
  • Cayenne test

Unofficial DB2 Wiki

Cayenne test

最終更新:2007年12月09日 22:09

匿名ユーザー

- view
だれでも歓迎! 編集

Cayenne test page

このページは、テスト用のページです。

INSERT new objects

DDL:
CREATE TABLE "APP"."LOG" (
       "LOGID" INTEGER NOT NULL
     , "MESSAGE" VARCHAR(30) NOT NULL
     , "TIMESTAMP" TIMESTAMP DEFAULT CURRENT TIMESTAMP
);
CREATE SEQUENCE APP.S_LOG START WITH 200
 INCREMENT BY 20 NO MAXVALUE  NO CYCLE  CACHE 20;

ソースコード:
>Log j1 = new Log();
>j1.setMessage("TEST 1 LOG");
>ctx.registerNewObject(j1);
>
>Log j2=(Log)ctx.createAndRegisterNewObject(Log.class);
>j2.setMessage("Test2 register and new");

結果:
>INFO QueryLogger: +++ Connecting: SUCCESS.
>INFO QueryLogger: Detected and installed adapter: org.objectstyle.cayenne.dba.db2.DB2Adapter
>INFO QueryLogger: SELECT NEXTVAL FOR APP.S_LOG FROM SYSIBM.SYSDUMMY1
>INFO QueryLogger: --- transaction started.
>INFO QueryLogger: --- will run 1 query.
>INFO QueryLogger: INSERT INTO APP.LOG (LOGID, MESSAGE, TIMESTAMP) VALUES (?, ?, ?)
>INFO QueryLogger: [bind: 200, 'Test2 register and new', NULL]
>INFO QueryLogger: === updated 1 row.
>INFO QueryLogger: [bind: 201, 'TEST 1 LOG', NULL]
>INFO QueryLogger: === updated 1 row.
>INFO QueryLogger: +++ transaction committed.

DB2での結果:

LOGID       MESSAGE                        TIMESTAMP
        200 Test2 register and new         -
        201 TEST 1 LOG                     -

メモ:
  • この例ではIDが付く順が逆になっているが、その後テストした際は常に先にregister()したDataObjectから順にINSERTされた時もあった。順番は不定なのかもしれない
  • NULLのプロパティに対応する列には明示的にNULLがINSERTされるため、列定義でDEFAULTを列に付けていても機能しない
  • 一度NEXTVALでシーケンスの値を取り込んでいるが、二回目は取り込んでいない(一度NEXTVALを取ったら20回分は内部で作成するため。シーケンスも20刻みで定義されているので矛盾しない)
  • しかし一度アプリが終了すると、キャッシュしていた分だけ番号が飛ぶ事になる

Delete Objects

ソースコード:

SelectQuery s1 = new SelectQuery(Log.class);
List l1 = ctx.performQuery(s1);
//この時点では、l1はstate:commited
ctx.deleteObjects(l1);
//この時点では、l1はstare:deleted 
ctx.commitChanges();
//ここでトランザクション開始。DELETE文が実行される
//DELETE後はl1はstate:transientになる

実行されたSQL:

INFO  QueryLogger: DELETE FROM APP.LOG WHERE LOGID = ?
INFO  QueryLogger: [bind: 603]
INFO  QueryLogger: === updated 1 row.
INFO  QueryLogger: [bind: 600]
INFO  QueryLogger: === updated 1 row.
INFO  QueryLogger: [bind: 602]
INFO  QueryLogger: === updated 1 row.
INFO  QueryLogger: [bind: 601]
INFO  QueryLogger: === updated 1 row.
INFO  QueryLogger: +++ transaction committed.

メモ:
  • deleteObjects()に複数のObjectが入ったlistを渡すと、各Object毎にDELETEを実行した後にCOMMITする。一括でDELETEするわけではない
  • deleteObjects()に空のlistを与えても、commitChanges()でエラーは出ない。単に何も実行されないだけ@wikiへ
「Cayenne test」をウィキ内検索
LINE
シェア
Tweet
Unofficial DB2 Wiki
記事メニュー
メニュー
  • トップページ
  • 更新履歴

■ DB2
├ Unofficial DB2 blog
├ DB2逆引きwiki
├ Unofficial DB2 FAQ
└ Cayenne memo

■ Derby関連
├ Derby memo
└ Derby Console
記事メニュー2

更新履歴

取得中です。
最近更新されたページ
  • 4164日前

    メニュー
  • 4164日前

    Derby memo
  • 6474日前

    Cayenne test
  • 6782日前

    Cayenne memo
  • 6959日前

    derbyconsole
  • 7165日前

    トップページ
  • 7176日前

    更新履歴
もっと見る
最近更新されたページ
  • 4164日前

    メニュー
  • 4164日前

    Derby memo
  • 6474日前

    Cayenne test
  • 6782日前

    Cayenne memo
  • 6959日前

    derbyconsole
  • 7165日前

    トップページ
  • 7176日前

    更新履歴
もっと見る
ウィキ募集バナー
急上昇Wikiランキング

急上昇中のWikiランキングです。今注目を集めている話題をチェックしてみよう!

  1. Dance Dance Revolution SP総合wiki
  2. 世界樹の迷宮X wiki
  3. 本好きの下剋上 有志まとめwiki@5ch
  4. トリコ総合データベース
  5. ダイナマイト野球3D
  6. EDF5:地球防衛軍5@Wiki
  7. 検索してはいけない言葉 @ ウィキ
  8. アサルトリリィ wiki
  9. 固めまとめWiki
  10. Fate/Grand Order @wiki 【FGO】
もっと見る
人気Wikiランキング

atwikiでよく見られているWikiのランキングです。新しい情報を発見してみよう!

  1. アニヲタWiki(仮)
  2. ストグラ まとめ @ウィキ
  3. ゲームカタログ@Wiki ~名作からクソゲーまで~
  4. 初音ミク Wiki
  5. 発車メロディーwiki
  6. 検索してはいけない言葉 @ ウィキ
  7. 機動戦士ガンダム EXTREME VS.2 INFINITEBOOST wiki
  8. 機動戦士ガンダム バトルオペレーション2攻略Wiki 3rd Season
  9. オレカバトル アプリ版 @ ウィキ
  10. Grand Theft Auto V(グランドセフトオート5)GTA5 & GTAオンライン 情報・攻略wiki
もっと見る
新規Wikiランキング

最近作成されたWikiのアクセスランキングです。見るだけでなく加筆してみよう!

  1. まどドラ攻略wiki
  2. MadTown GTA (Beta) まとめウィキ
  3. シュガードール情報まとめウィキ
  4. SurrounDead 攻略 (非公式wiki)
  5. R.E.P.O. 日本語解説Wiki
  6. Dark War Survival攻略
  7. シミュグラ2Wiki(Simulation Of Grand2)GTARP
  8. Wplace Wiki
  9. カツドンチャンネル @ Wiki
  10. AviUtl2のWiki
もっと見る
全体ページランキング

最近アクセスの多かったページランキングです。話題のページを見に行こう!

  1. 参加者一覧 - ストグラ まとめ @ウィキ
  2. 魔獣トゲイラ - バトルロイヤルR+α ファンフィクション(二次創作など)総合wiki
  3. 稼ぎ - 地球防衛軍6 @ ウィキ
  4. ミッション攻略 - 地球防衛軍6 @ ウィキ
  5. 我孫子 清十郎 - ストグラ まとめ @ウィキ
  6. サーヴァント/一覧/クラス別 - Fate/Grand Order @wiki 【FGO】
  7. 雨宮(amemiya0123) - ダイナマイト野球3D
  8. 鬼レンチャン(レベル順) - 鬼レンチャンWiki
  9. 機体一覧 - 機動戦士ガンダム EXTREME VS.2 INFINITEBOOST wiki
  10. ウイングガンダムゼロ【EW】 - 機動戦士ガンダム バトルオペレーション2攻略Wiki 3rd Season
もっと見る

  • このWikiのTOPへ
  • 全ページ一覧
  • アットウィキTOP
  • 利用規約
  • プライバシーポリシー

2019 AtWiki, Inc.