にしのクエスト2

情報処理技術者試験と資格学校講師の日常

にしのクエスト2

勉強ライブ データベーススペシャリスト SQLは割と面白い

仕事でクタクタです。

相変わらず午後問題はシンドイです。ネスペもセス
ペも持っていて、何回も合格しているのでその経験
をDBに当てはめると。

落ちます。半分くらいしか取れません。

スペシャリスト系で一番ダメなのは、空欄の穴埋め
を間違えることです。あれって、場合によっては4
0点から60点付近まで点数を稼げるのです。

逆に、あの空欄埋めで間違えてると。スペシャリス
トの合格って厳しいです。空欄埋めは知ってて当然
で、答えられなきゃダメな知識だからです。

心折れそうです。

でも、今日も少し勉強します。SQLの面白さがわ
かってきました。もっと早く始めればよかった。

カーソル

これも面白い。カーソルはSELECTとかと違って、
条件に応じて表を作成するなり、データを更新する
なりするだけなのに対して、カーソルは取り出した
データを見て更新をするかしないかを決めることが
できましゅ。

(1)カーソルの定義
DECLARE カーソルくん CURSOR FOR SELECT 物品名, 在庫数 FROM 在庫

カーソルくんという、カーソルを定義してます
(ほんとは日本語ダメだろうけど。例ね)

(2)カーソルを開く
OPEN カーソルくん

(3)1行ずつ取り出す
FETCH NEXT FROM カーソルくん INTO :物品名, :在庫数

データの頭2つを物品名と在庫数に割り当てておく。
で、条件判断に使う

(4)条件判断
:FETCH_STATUS = 0
UPDATE 在庫一覧 SET :在庫数=0

:FETCH_STATUS = 0
もしも、データが取り出せたら、という意味。
んで、在庫一覧の値に0をセットします。
もし、データがない場合は何もしません。

(5)閉じる
CLOSE カーソルくん

今日のひとこと

ORDER BY は 何もしないと昇順(ASC)

今日のひとこと2

GRANT ALL PRIVILEGES  ON 発注 TO USER1 WITH GRANT OPTION
全権と権限付与を与える。

REVOKE ALL PRIVILEGES  ON 発注 FROM USER1 WITH GRANT OPTION
全権と権限付与を奪う。

与える時はTO 奪う時はFROM

おやすみ!今日も寝るちょ!

f:id:koharuwest:20190315232723p:plain