ユーザ用ツール

サイト用ツール


メモ

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
次のリビジョン両方とも次のリビジョン
メモ [2017/04/03 00:04] yajuadminメモ [2020/11/30 16:58] yajuadmin
行 84: 行 84:
  
  
-戯言 -  被写体としての人形+====== 被写体としての人形 ======
 最初は、人形だよなと思ってだんだん見ていくと、なんかいいんですよね。\\ 最初は、人形だよなと思ってだんだん見ていくと、なんかいいんですよね。\\
 写真撮った人からの愛を感じますw\\ 写真撮った人からの愛を感じますw\\
行 94: 行 94:
  
  
-なぜ2時から5時までは3時間で、2日から5日までは4日間なのか?+====== なぜ2時から5時までは3時間で、2日から5日までは4日間なのか? ======
 なぜ2時から5時までは3時間で、2日から5日までは4日間なのか?\\ なぜ2時から5時までは3時間で、2日から5日までは4日間なのか?\\
 http://ameblo.jp/metameta7/entry-10270210344.html http://ameblo.jp/metameta7/entry-10270210344.html
行 107: 行 107:
 φ(.. )メモメモ φ(.. )メモメモ
  
-VSTOで、Outlook COMアドインのセットアップ+====== VSTOで、Outlook COMアドインのセットアップ ======
 VSTOを使ったOutlook2003のアドインを開発したのですが、\\ VSTOを使ったOutlook2003のアドインを開発したのですが、\\
 http://blogs.wankuma.com/yaju/archive/2008/11/10/160848.aspx http://blogs.wankuma.com/yaju/archive/2008/11/10/160848.aspx
行 148: 行 148:
 おかげで、やろうとした仕事がほとんど進まなかった、とほほ(T^T) おかげで、やろうとした仕事がほとんど進まなかった、とほほ(T^T)
  
-第2回静岡IT Pro勉強会  レポート +====== 第2回静岡IT Pro勉強会  レポート ======
 6月13日に行われた、第2回 静岡 IT Pro 勉強会が終了しました(^-^)\\ 6月13日に行われた、第2回 静岡 IT Pro 勉強会が終了しました(^-^)\\
 迷惑なメールの処理に要する費用は日本全体で年間7,000億円以上らしい。\\ 迷惑なメールの処理に要する費用は日本全体で年間7,000億円以上らしい。\\
行 242: 行 241:
 mixiの年賀状といえば、ピンときますでしょうか。\\ mixiの年賀状といえば、ピンときますでしょうか。\\
 静岡の企業だったんですね、応援しなきゃね。  静岡の企業だったんですね、応援しなきゃね。 
- 
-Oracle カーソルを引数で渡す 
-ストアドでそれなりの処理を作成しているときに、カーソルを引数として共通化したい場合がある。\\ 
-単一テーブルのカーソルの引数の受け渡しなら下記サイトを参考に出来たんだけども\\ 
- 
-Oracle カーソルを引数で渡したい。\\ 
-http://otndnld.oracle.co.jp/document/products/oracle10g/102/doc_cd/appdev.102/B19257-01/sqloperations.html#9160\\ 
- 
- 
-売上テーブルと仕入テーブルなど複数テーブルからカーソルの引数の\\ 
-受け渡しをして、共通のテーブルにデータを更新したいといった場合、どうしたものかと考えて、下記方法を対処した。\\ 
-もっといい方法があるかも知れないけど、とりあえず備忘録として記述\\ 
-※共通処理側で値チェックや計算処理などすることを想定\\ 
- 
-CREATE OR REPLACE PACKAGE HOGE\\ 
-IS\\ 
-    TYPE gencurtyp IS REF CURSOR; 
-    PROCEDURE TEST; 
-    PROCEDURE CUR_TEST(\\ 
-        gencurtyp_cv IN OUT gencurtyp\\ 
-    ); 
-END;\\ 
-/\\ 
-CREATE OR REPLACE PACKAGE BODY HOGE\\ 
-IS 
-    PROCEDURE TEST\\ 
-    IS 
-    generic_cv  gencurtyp;\\ 
- 
-    BEGIN\\ 
- 
-        -- HOGEテーブルの定義に合わせる\\ 
-        OPEN generic_cv FOR\\ 
-        SELECT\\ 
-             '1234' AS CODE\\ 
-            ,20090620 AS YMD\\ 
-        FROM DUAL; 
-        -- HOGEテーブルに挿入\\ 
-        CUR_TEST(generic_cv); 
-    END TEST; 
-    -- カーソル引数により、HOGEテーブルに挿入\\ 
-    PROCEDURE CUR_TEST(\\ 
-        gencurtyp_cv IN OUT gencurtyp  -- テーブル名\\ 
-    )\\ 
-    IS 
-    gencurtyp_rec HOGE%ROWTYPE; 
-    BEGIN 
-    FETCH gencurtyp_cv  INTO gencurtyp_rec; 
-    INSERT INTO HOGE(\\ 
-        CODE\\ 
-      , YMD\\ 
-    )\\ 
-    VALUES(\\ 
-        gencurtyp_rec.CODE\\ 
-      , gencurtyp_rec.YMD\\ 
-    ); 
-   END CUR_TEST; 
-END HOGE;\\ 
- 
- 
-Oracle トリガー処理 
-プロジェクト終盤になって、幾つかのマスタ系およびトランザクション系の更新ログを取りたいというユーザーから要望を受ける。\\ 
-十数本ある機能を今更修正するには時間もコストも無いってことで、検討した結果、トリガー処理を思いつく。\\ 
-今までトリガーの存在こそ知っていても、使う機会が残念ながら無かった、今回ちょうどいい勉強の機会であった。 
-ちなみに、トリガーとは表に対して何らかの変更処理(挿入、更新、削除)が加えられたとき、その変更処理をきっかけとして自動的に実行される特殊なストアドプロシージャのことです。\\ 
-http://www.techscore.com/tech/sql/14_01.html 
-各ログには、画面からの処理モード(登録・更新・削除)を項目にセットする必要があるのだが、トリガー処理では、外部から引数を受け渡すことが出来ない、そこでログ用の一時表を作成し、処理モードをセットしてトリガー内で値を受け取るようにした。\\ 
-画面からのテーブル更新でなければ、一時表には何も書かれてないため直接DBを書き換えたと判断できる。\\ 
- 
-備忘録として記述\\ 
- 
-■サンプル\\ 
-CREATE OR REPLACE TRIGGER M_HOGE_TRI\\ 
-BEFORE INSERT OR DELETE OR UPDATE \\ 
-ON M_HOGE\\ 
-REFERENCING OLD AS OLD NEW AS NEW\\ 
-FOR EACH ROW \\ 
-DECLARE\\ 
- MODE_KBN  VARCHAR2(1); -- I:挿入、U:更新、D:削除 をセット\\ 
- MODE_NAME VARCHAR2(4); -- "新規"、"修正"、"削除" をセット\\ 
-BEGIN 
- BEGIN\\ 
-  -- 画面から更新の場合は、一時表に値がセットされるが、\\ 
-  -- DBから直接の場合は、一時表に値が無い状態となる。 
-  -- 一時表であるため、値取得不可の場合がある。\\ 
-  SELECT MODE_SHORI INTO MODE_NAME FROM W_LOG;\\ 
- EXCEPTION\\ 
-  WHEN NO_DATA_FOUND THEN\\ 
-   MODE_NAME := '直DB'; -- 直接DBで入力\\ 
- END; 
- IF INSERTING THEN\\ 
-  MODE_KBN := 'I'; -- I:挿入\\ 
- ELSIF UPDATING THEN\\ 
-  MODE_KBN := 'U'; -- U:更新\\ 
- ELSIF DELETING THEN\\ 
-  MODE_KBN := 'D'; -- D:削除\\ 
- END IF; 
- IF INSERTING OR UPDATING THEN\\ 
-  -- 挿入 or  更新 内容をログに吐き出し\\ 
-  INSERT INTO L_HOGE\\ 
-  VALUES(\\ 
-     L_HOGE_SEQ.NEXTVAL\\ 
-   , MODE_KBN\\ 
-   , MODE_NAME\\ 
-   , SYSDATE\\ 
-   , :new.CODE\\ 
-   , :new.NAME\\ 
-  );\\ 
- ELSE\\ 
-  -- 削除 内容をログに吐き出し\\ 
-  INSERT INTO L_HANYO\\ 
-  VALUES(\\ 
-     L_HOGE_SEQ.NEXTVAL\\ 
-   , MODE_KBN\\ 
-   , MODE_NAME\\ 
-   , SYSDATE\\ 
-   , :old.CODE\\ 
-   , :old.NAME\\ 
-  );\\ 
- END IF; 
-END M_HOGE_TRI;  
- 
  
 caspol.exeを使用したセキュリティポリシーの設定 caspol.exeを使用したセキュリティポリシーの設定
行 439: 行 316:
 </code> </code>
  
 +{{::access32and64混在.png|}}
 +
 +{{::新しいプロジェクトvb.png|}}
  
 +{{::新しいプロジェクトcsharp.png|}}
メモ.txt · 最終更新: 2021/05/15 08:23 by yajuadmin