月別アーカイブ: 2017年3月

Oracle DatabaseのSQL

ゴミ箱を空にする

PURGE RECYCLEBIN;

テーブルの一覧を参照する

SELECT * FROM CAT;

テーブルのレイアウト参照

DESC T_HOGE;

日付の計算

 SELECT
   SYSDATE,
   ADD_MONTHS(SYSDATE,(5*12)),    -- 年を足す(5年後)
   ADD_MONTHS(SYSDATE,5),         -- 月を足す(5月後)
   SYSDATE + 5,                   -- 日を足す(5日後)←これが基準みたい
   SYSDATE + 5 * (1/24),          -- 時間を足す(5時間後)
   SYSDATE + 5 * (1/(24*60)),     -- 分を足す(5分後)
   SYSDATE + 5 * (1/(24*60*60))   -- 秒を足す(5秒後)
 FROM DUAL

日付の書式

SELECT
    sysdate,
    TO_CHAR(sysdate,'YYYY/MM/DD(DY) AM HH12:MI:SS'),
    TO_CHAR(sysdate,'YY/MM/DD(DAY) HH24:MI:SS'),
    TO_CHAR(sysdate,'YYYY/MONTH/DD(DAY) HH24:MI:SS')
FROM DUAL

SELECT FOR UPDATE

SELECT FOR UPDATEを行うときは
テーブル全体のレコードが対象にならないようにする。
→ユニークのレコードが対象になるように
そうしないとREDOログが膨大なサイズになって大変なことになる。

SELECT * FROM T_HOGE FOR UPDATE --これではダメ
SELECT * FROM T_HOGE WHERE COL_PIYO = "pipi" FOR UPDATE --これならOK

デザインパターン

デザインパターンとは

先人たちの苦労の結晶によって生まれた、設計(実装)のための洗練された「パターン」のこと。
GoF(Gang Of Four)といわれる4人の賢い人たちが持ち寄った設計に関するパターンを集めた設計の虎の巻。大きく分けて生成・構造・振る舞いの3つに分けられ、全部で23のパターンに分けられる。

J2EEパターン:http://www.techscore.com/tech/J2EEPattern/index.html

生成に関するデザインパターン

  • Factory/Factory Method(ファクトリ/ファクトリメソッド)
  • Singleton(シングルトン)

Factoryパターンは、オブジェクトの工場だ。

 

構造に関するデザインパターン

振る舞いに関するデザインパターン

XcodeでBitbucketと連携する

 この記事の内容は古いです。Xcode9から設定方法が変更されています。詳しくは以下のページを参考にしてください。

xcodeを使ってbitbucketでコードが管理できる様にする
Xcodeからのリモートの登録Xcode9.0(変わっていたので)
Xcode9でリモートリポジトリをBitbucketに指定する。

 

Xcodeでbitbucketと連携する方法です。プロジェクト作成済みでもできます。

1.bitbucketでリポジトリを作成します

bitbucketにログインして、リポジトリを新規作成します。

リポジトリ名はなんでも良いですが、一応分かりやすいようにXcodeのプロジェクト名に合わせておきます。

作成すると、右上にリポジトリのURLが表示されます。これをコピーしておきます。

2.Xcodeでリポジトリを設定します

Xcodeを開いて、プロジェクトを新規作成します。ちなみにすでに作成済みのプロジェクトでもあとからbitbucketと連携することはできます。

メニューの[Source Control]から以下のようにメニューを選択します。

画面上部の「Remote」文字をクリックし、「Add Remote…」をクリックします。

「Name:」は「Origin」のままで良いです。「Address」に先程bitbucketでリポジトリを作成した際にコピーしたURLを貼り付けます。

「Done」をクリックすると設定が完了します。

3.bitbucketへPushします

XcodeのプロジェクトをbitbucketへPushします。

できました。

PL/SQL

基本

  1. DECLARE、EXCEPTION、BEGIN~END(必須)から構成される
  2. 戻り値のあるファンクション、戻り値のないプロシージャを作成できる
  3. JavaプロシージャをPL/SQLから呼び出せる

ループ

LOOP
処理;
[EXIT WHEN 条件;]
END LOOP;

※「EXIT WHEN 条件;」がなければ無限ループ。

WHILE 条件 LOOP
処理;
[EXIT WHEN 条件;]
END LOOP;

※条件が真であればループ。

FOR i IN 1..10 LOOP
処理;
[EXIT WHEN 条件;]
END LOOP;

※1から10までを増算しながらループ。
※iはカウンタ

FOR i IN REVERSE 1..10 LOOP
処理;
[EXIT WHEN 条件;]
END LOOP;

※10から1までを減算しながらループ。
※iはカウンタ

※「EXIT WHEN 条件;」は、条件がなければ
「EXIT;」とも書ける