データベース
MySQLは、文字コード:utf8mb4_general_ci で作る(寿司ビール問題)
MySQLのchar,varcharは大文字小文字を区別しない
Laravel6以降は、主キーのデフォルトが、increments()からbigIncrements()になってるので旧式からのアップデートは注意
データベース設定
//Laraevlの環境設定ファイルは、/.env
//MySQLの設定は/.envで行う。
//ローカル=MAMPのケース
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=○○○○(新規作成したデータベース名)
DB_USERNAME=root
DB_PASSWORD=root
DB_SOCKET=/Applications/MAMP/tmp/mysql/mysql.sock
//コアサーバのケース
DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=データベース名
DB_USERNAME=ユーザ名(基本上と同じ)
DB_PASSWORD=パスワード
ところで、bigIncrements()のincrements()どちらを使えばよいのか
INTとBIGINTの違い(MySQL)
INT(符号付き)の範囲は-2147483648〜2147483647。
INT(符号なし)の範囲は0〜4294967295。
BIGINT(符号付き)範囲は-9223372036854775808から9223372036854775807。
BIGINT(符号なし)範囲は0から18446744073709551615。
INTは21億までの値を格納可能
BIGINTは20桁までの大きな数値まで値を格納可能
BIGINTではなくINTを使用すると、ディスク容量を削減できる。
外部キーとインデックスに対して使用された場合、インデックスサイズが減り、インデックスが使用されたときのパフォーマンスが向上する。
まず主キーと外部キーを考えて、テーブルに21億行以上格納するつもりがなければ、INT (つまり、主キーにincrements())を使うと良さそう。
INTとBIGINTの違い(MySQL)
INT(符号付き)の範囲は-2147483648〜2147483647。
INT(符号なし)の範囲は0〜4294967295。
BIGINT(符号付き)範囲は-9223372036854775808から9223372036854775807。
BIGINT(符号なし)範囲は0から18446744073709551615。
INTは21億までの値を格納可能
BIGINTは20桁までの大きな数値まで値を格納可能
BIGINTではなくINTを使用すると、ディスク容量を削減できる。
外部キーとインデックスに対して使用された場合、インデックスサイズが減り、インデックスが使用されたときのパフォーマンスが向上する。
まず主キーと外部キーを考えて、テーブルに21億行以上格納するつもりがなければ、INT (つまり、主キーにincrements())を使うと良さそう。