MapとSetについて Map と Set は、JavaScriptやTypeScriptにおけるデータ構造の異なるオブジェクトです。 Map 連想配列のようなKeyとValueを持つ構造 Set 重...
生涯独学の記事一覧
これだけは使える様になっておきたいarray系構文 スプレッド構文 array_merge()の代わりにスプレッド構文を使用しましょうね。という話。 「===」で比較する PHPにおける厳格な比較演...
case式について case式とはSQLで条件分岐するための関数です。 JavaやPHPなどで条件分岐する時に使用しているcaseと何ら違いはなく、「〇〇の時はAの処理!」「〇〇はBの処理!」というよ...
NVARCHAR2とは NVARCHAR2とは、各国の国語文字を格納できるデータ型のことです。 「国語文字?なんじゃそれ??」と感じる方もいるかも知れませんが、国語文字とは日本なら日本語、中国なら中国...
NULLの特徴 NULLとは0でも空文字でもない値のことを指します。(イメージ的には存在しない値を分かりやすくするためにNULLというシールを貼っている状態のこと。) 例えば、財布の中身はいくら?とい...
権限の目的 権限という概念がある目的は、ユーザーごとにできることを分けることでデータベースを安全に運用するためです。 例えば、会社を想像してほしいのですが、社長と新卒の社員を想像してみてください。 ...
一時表 一時表とは、名前の通り「データを一時的に預かってくれる表」のことを指します。 セッションやトランザクションを終了するとデータを削除してくれるので、構文を試したいときなどに使用します。 自分が使...
日付型の種類 Oracleの日付型は以下6種類(期間データ型も含む)です。 DATE SYSDATE TIMESTAMP SYSTIMESTAMP TIMESTAMP WITH TIME ZONE C...
ビューについて ビューとはSELECT文を格納しておく変数のようなものです。 プログラムを学んだ方ならしっくり来ると思うのですが、変数に格納しておくことで共通化をすることでいろいろな場面で簡単に呼び出...
参考書を読んでも分かりづらい SQLの学習のために参考書を読んでも、「クロス結合が〜〜」「自然結合は〜〜」とたくさんの結合名称が出てきてしまい、こんがらがったのでまとめました。 当記事では内部結合と外...
複数行を返すとエラーになります Where句で使用するサブクエリの問い合わせ結果が2行以上になってしまうと「single-row subquery returns more than one row」...
問題 ローカルユーザーに権限付与を実行すると「ユーザーがいません」というエラーが出力されます。 SYSTEMユーザーでログインしているので権限付与が出来ない訳が無いのですが、思いもよらないところに落と...
シーケンスとは シーケンスとは連番を作り出す為にOracleが用意してくれているオブジェクトです。 1,2,3,4,5…と連続したデータを発動するので、プライマリーキーやユニークキーなどによく使用され...
気づいたこと 〜就職編〜 結局SQL 結局のところSQLは必要不可欠な技術です。 アプリケーションはPHPやJavaといったプログラミング言語を使用すると思いますが、データを扱う事のできる唯一の言語は...
暗号化について データを保護するために文章を人間が読めない形にする方法です。 例えば「おはよう」を暗号化すると「○☓△□」というような形に文章を変形させる技術になります。 暗号化には下記の方式がありま...
SQLインジェクション 起こりうる脅威 ■ 発生しうる脅威 SQL インジェクション攻撃により、発生しうる脅威は次のとおりです。 - データベースに蓄積された非公開情報の閲覧 個人情報の漏えい 等 ...
配列の加工 これまでにforeachを使用して配列を任意の形に加工していた。 ところがどっこい、PHPには便利な関数が存在することを最近知った。 これまで配列から1つずつ要素を取り出し、所定の処理を実...