MySQL

スポンサーリンク
MySQL

SQLでNULLが関わるとなぜ全部NULLになるのか

以下のサイトの例がわかりやすかったです。 NULLは「不明」と考えると全ての辻褄があう。 ここにあなたの部下のスタンという名前の30歳の男性がいます。 そこにもう一人の部下の男性オリバーが来ました。 オリバーの年齢は「不明(NULL)」です...
MySQL

正規化の違い【データベース】

第◯正規化って言葉を見るたびに「どこまで正規化することをそう呼ぶんだァ~~~?」となるので、違いをメモ。 記事内で使ってる画像は、以下のサイトから引用させていただきました。 データベースの正規化(第1〜第3正規形) - Wiz テックブログ...
MySQL

トランザクション分離レベルの違いをわかりやすく

毎回「なんだっけ」ってなるのでメモ。 トランザクション分離レベルとは? トランザクションを複数同時に実行するとき、「どれだけ影響を分離させるか?」の設定のこと。 SERIALIZABLE (シリアライズ可能) 「絶対に分離する」なレベル。 ...
MySQL

Dockerでsakilaが入ったMySQL環境を作る

MySQLの勉強がしたかったので、MySQL公式が用意してくれているサンプルデータベースである「sakila」をいろいろ弄り回そうと思いました。 そのための環境をDockerで用意したメモ。 まず以下のDockerfileを用意。 FROM...
MySQL

Ubuntuでローカルで使えるMySQLコンテナを作る→VScodeからアクセスする

以下のコマンドで作れます。 docker run --name コンテナ名 -e MYSQL_ROOT_PASSWORD=パスワード -d -p ホストのPORT番号:コンテナ側のPORT番号 mysql:タグ番号 例えば以下のような感じ。...
MySQL

「シリアライズ」には2つの意味がある【データベース】

ある本を読んで知ったんだけど、「シリアライズ」という言葉には2つの意味があるらしい。 それについてメモ。 1.シリアライズ → 直列化 データベースで「シリアライズ」と言うと、大抵はこちらを指すと思うんだけど 例えば const hoge=...
MySQL

【MySQL】トランザクション/ロールバック/autocommit

トランザクションとは? 「ここからここまではワンセットだぞ」な処理のこと。 例えば 何らかのSQL; 何らかのSQL; 何らかのSQL; 何らかのSQL; みたいな処理が4つあったとして、この4つを実行した結果「1~3までは成功したけど4は...
MySQL

BTREEとHASHの違い【インデックス】

インデックスの BTREE HASH の違いについて調べたことざっくりメモ。 分かりやすいように例で説明する。 例えば1~20までの数字が入った箱が20個あるとする。 箱の中身は開けてみるまで分からない。 そんなとき、16が入った箱を当てる...
MySQL

information_schema/performance_schema/mysql/sysデータベースの違い【MySQL】

MySQLでは information_schema performance_schema mysql sys という4つのデータベースが最初から用意されていますが これらの違いについて調べたメモ。 information_schema 実...
MySQL

MySQLでスキーマという名前が使われる理由

MySQLでは、スキーマという概念がないらしい。 いや正確にいうとあるのかもしれないけど、MySQLではスキーマ = データベースという認識なのらしい。 その証拠に、以下のクエリはどちらを実行しても「test」というデータベースが作成される...
MySQL

character_set_databaseとcharacter_set_serverの違い【MySQL】

違い character_set_database と character_set_serverの違いは character_set_database →データベースを選択した際に使われる文字コード character_set_server...
MySQL

MySQLで2つ表示されるバージョンの違い【Distrib?】

mysqlのバージョンを確認すると $ mysql --version mysql Ver 14.14 Distrib 5.7.30, for Linux (x86_64) using EditLine wrapper このように 14.1...
スポンサーリンク