Webアプリ習作#2

PostgreSQLのセットアップ

https://www.enterprisedb.com/downloads/postgres-postgresql-downloads
から最新(14.2)のWindows x86-64向けをダウンロードして実行
インストールの最後に"Launch Stack Builder at exit?"と問われるでチェックを外す

PHPPostgreSQL設定

c:\xampp\php\php.iniを開いて下記を追記

extension=php_pdo_pgsql.dll
extension=php_pgsql.dll

C:\xampp\php\extにphp_pdo_pgsql.dll、php_pgsql.dllが存在することを確認
コマンドプロンプトでphpinfoを実行

php -i

pdo_pgsql及びpgsqlが有効になったことを確認

PostgreSQLの起動

スタートメニューの"PostgreSQL"下に"SQL Shell (psql)"が追加されているはずなので起動
以下は全てデフォルト(空エンター)を入力する

Server[localhost]:
Database[postgres]:
Port[5432]:
Username[postgres]:
Client Encoding[SJIS]:

その後パスワードを聞かれるので'secret'と入力するとユーザー'postgres'としてログイン可能
※この'secret'というデフォルトのパスワードはローカル環境でしか使わないものなので特に変更の必要はない

databaseを作成(データベース名は任意)

create database twiapp_db;

データベース一覧を確認

\l

psqlの終了

\q
LaravelのDB設定変更

C:\xampp\htdocs\twiapp\.envを開いてDBの設定を以下のように修正

DB_CONNECTION=pgsql
DB_HOST=localhost
DB_PORT=5432
DB_DATABASE=twiapp_db
DB_USERNAME=postgres
DB_PASSWORD=secret
DBにテーブルを作成する(マイグレーション)

コマンドプロンプトでプロジェクトディレクトリ下に移動

cd C:\xampp\htdocs\twiapp

マイグレーションを実行

php artisan migrate

マイグレーションを実行すると[プロジェクトディレクトリ]\database\migrations下にあるマイグレーションファイルが実行されデータベースにテーブルが追加される
psqlを起動して追加されたことを確認する
先ほどと同じようにユーザー'postgres'としてログインした上で先ほど作成したデータベース'twiapp_db'に接続

\c twiapp_db

テーブル一覧を確認

\dt