HOME HELP 新規作成 新着記事 ツリー表示 スレッド表示 トピック表示 ファイル一覧 検索 過去ログ

■1279 / 4階層)  桐と外部DB
□投稿者/ hidetake -(2018/12/13(Thu) 21:06:38)
    2018/12/14(Fri) 09:09:27 編集(投稿者)
    2018/12/13(Thu) 21:14:36 編集(投稿者)

    「外部DB」を使う場合、単純な結合や単表は別ですが、
    少しでも桐で結合させる場合にめんどくさい場合は、
    SQL Server 側でビューをつくって、それを桐で参照
    しています。もちろん、そのビューに対しての抽出
    条件は、桐側のパラメータで指定し抽出しています。

    桐の共有なんか使うより、一瞬で抽出できます。

    その結果に元に、データに更新が発生する場合など
    はワークファイルに読み込み、その結果を必要な
    実際のテーブルに入力・訂正・削除を行うわけです
    が、その際にはトランザクション処理を入れていま
    す。1つでもエラーなどが発生した場合は、ロール
    バックさせています。

    あと、Microsoft SQL Server を使う場合、主キーに
    IDENTITYプロパティがセットしてある場合は、面倒
    ですね。
    追加の際だけは、主キー項目を外す必要があります。
    でも、その追加された結果の主キーの値は、その場
    では判断できない。再抽出して、結果を得る必要が
    ある。

    自分の場合は、IDENTITYプロパティは外して、
    トリガーでカウントアップするようにしました。
    で、桐から追加する場合は、1件ずつとは限らない
    ので、追加する前にトリガーを無効にしてから、
    桐側から追加する。追加が終わったら、トリガーを
    有効にする。

    次のような SQL を

    &SQL="件数',count(*) FROM tblWork; ALTER TABLE [tblName] DISABLE TRIGGER ALL; -- "

    &SQL="件数',count(*) FROM tblWork; ALTER TABLE [tblName] ENABLE TRIGGER ALL; -- "

    「コマンド実行結合表」に与えて、SQL Server を
    制御しています。

    IDENTITYプロパティつけたまま、

    SET IDENTITY_INSERT [テーブル名] ON;
    SET IDENTITY_INSERT [テーブル名] OFF;

    でも、良いのかな。

    この辺の処理は DBMS ごとに異なるので、慣れが
    必要ですね。

    # hidetake の記載物を【多遊】さんのサイト・掲示板以外に
    # (引用の範囲を超えて)転載する場合は、無償サイトであれ、
    # 有償サイトであれ、非公開サイトであれ、元記事にリンクを
    # 貼って下さい。
    # 内容については、若い頃ネット上に書いたものは copyleft
    # 宣言したような気がします。
    # なお、【多遊】さんやほかの方の権利はその方々にあります。
    #
    # と、書いてみるテスト。

[メール受信/OFF] 削除キー/

→Re[5]: 桐と外部DB /hidetake
 
前の記事(元になった記事) 次の記事(この記事の返信)
上記関連ツリー

Nomal 桐と外部DB / hidetake (18/12/07(Fri) 10:13) #1266
Nomal Re[1]: 桐と外部DB / 尾形 (18/12/12(Wed) 17:25) #1275
│└Nomal Re[2]: 桐と外部DB / hidetake (18/12/12(Wed) 21:55) #1276
│  └Nomal Re[3]: 桐と外部DB / 尾形 (18/12/13(Thu) 05:39) #1277
│    ├Nomal Re[4]: 桐と外部DB / 尾形 (18/12/13(Thu) 09:06) #1278
│    └Nomal 桐と外部DB / hidetake (18/12/13(Thu) 21:06) #1279 ←Now
│      └Nomal Re[5]: 桐と外部DB / hidetake (18/12/14(Fri) 08:19) #1280
│        └Nomal Re[6]: 桐と外部DB / hidetake (18/12/16(Sun) 12:47) #1283 1544932051.png/82KB
│          └Nomal Re[7]: 桐と外部DB / hidetake (18/12/16(Sun) 19:02) #1287 1544954531.txt/3KB
Nomal Re[1]: 桐と外部DB / hidetake (19/02/23(Sat) 19:20) #1298 SQLServer2017ExpressEditionMemory.png/71KB
  └Nomal Re[2]: 桐と外部DB / hidetake (19/02/23(Sat) 19:34) #1299 SQLServer2017ExpressEditionMemory2.png/48KB

All 上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信

Mode/  Pass/

HOME HELP 新規作成 新着記事 ツリー表示 スレッド表示 トピック表示 ファイル一覧 検索 過去ログ

- Child Tree -
- Antispam Version -