SQL マルチテナントとは?RLS(Row Level Security)との関係をわかりやすく 自分用メモ。 調査せずに雑に書いてるので、テキトーに見てください。 最後らへんは、実機に試さずに公式ドキュメントを見て「多分こうだろうな」という感じで書いたので、かなり間違ってる可能性があります マルチテナントとは? ざっくりいうと、「複数... 2024.03.28 SQL
SQL SQLでNULLが関わるとなぜ全部NULLになるのか 以下のサイトの例がわかりやすかったです。 NULLは「不明」と考えると全ての辻褄があう。 ここにあなたの部下のスタンという名前の30歳の男性がいます。 そこにもう一人の部下の男性オリバーが来ました。 オリバーの年齢は「不明(NULL)」です... 2024.03.17 SQL
SQL 正規化の違い【データベース】 第◯正規化って言葉を見るたびに「どこまで正規化することをそう呼ぶんだァ~~~?」となるので、違いをメモ。 記事内で使ってる画像は、以下のサイトから引用させていただきました。 データベースの正規化(第1〜第3正規形) - Wiz テックブログ... 2024.01.28 2024.02.20 SQL
SQL トランザクション分離レベルの違いをわかりやすく 毎回「なんだっけ」ってなるのでメモ。 トランザクション分離レベルとは? トランザクションを複数同時に実行するとき、「どれだけ影響を分離させるか?」の設定のこと。 SERIALIZABLE (シリアライズ可能) 「絶対に分離する」なレベル。 ... 2023.10.16 2024.07.10 SQL
SQL Dockerでsakilaが入ったMySQL環境を作る 追記2024年6月 記事中で書いてたDockerfileでは立ち上がらなくなったので、これ👇を使うようにした。 # Stage 1: Use a temporary image to download and prepare the sak... 2022.07.19 2024.06.01 SQL仮想環境
SQL Ubuntuでローカルで使えるMySQLコンテナを作る→VScodeからアクセスする 以下のコマンドで作れます。 docker run --name コンテナ名 -e MYSQL_ROOT_PASSWORD=パスワード -d -p ホストのPORT番号:コンテナ側のPORT番号 mysql:タグ番号 例えば以下のような感じ。... 2021.11.24 SQL
SQL 「シリアライズ」には2つの意味がある【データベース】 ある本を読んで知ったんだけど、「シリアライズ」という言葉には2つの意味があるらしい。 それについてメモ。 1.シリアライズ → 直列化 データベースで「シリアライズ」と言うと、大抵はこちらを指すと思うんだけど 例えば const hoge=... 2021.02.12 2021.02.13 SQL
SQL 【MySQL】トランザクション/ロールバック/autocommit トランザクションとは? 「ここからここまではワンセットだぞ」な処理のこと。 例えば 何らかのSQL; 何らかのSQL; 何らかのSQL; 何らかのSQL; みたいな処理が4つあったとして、この4つを実行した結果「1~3までは成功したけど4は... 2021.01.18 2021.04.12 SQL
SQL BTREEとHASHの違い【インデックス】 インデックスの BTREE HASH の違いについて調べたことざっくりメモ。 分かりやすいように例で説明する。 例えば1~20までの数字が入った箱が20個あるとする。 箱の中身は開けてみるまで分からない。 そんなとき、16が入った箱を当てる... 2020.12.24 2020.12.25 SQL
SQL information_schema/performance_schema/mysql/sysデータベースの違い【MySQL】 MySQLでは information_schema performance_schema mysql sys という4つのデータベースが最初から用意されていますが これらの違いについて調べたメモ。 information_schema 実... 2020.10.25 SQL
SQL MySQLでスキーマという名前が使われる理由 MySQLでは、スキーマという概念がないらしい。 いや正確にいうとあるのかもしれないけど、MySQLではスキーマ = データベースという認識なのらしい。 その証拠に、以下のクエリはどちらを実行しても「test」というデータベースが作成される... 2020.10.25 SQL
SQL character_set_databaseとcharacter_set_serverの違い【MySQL】 違い character_set_database と character_set_serverの違いは character_set_database →データベースを選択した際に使われる文字コード character_set_server... 2020.08.05 2020.08.06 SQL
SQL MySQLで2つ表示されるバージョンの違い【Distrib?】 mysqlのバージョンを確認すると $ mysql --version mysql Ver 14.14 Distrib 5.7.30, for Linux (x86_64) using EditLine wrapper このように 14.1... 2020.07.29 2020.09.29 SQL