PostgreSQLPostgreSQLデータベースへデータを新規登録(INSERT)PostgreSQLデータベースのテーブルへ新しくデータを登録する方法について、「PostgreSQL関数」と「PDO」の2パターンを解説します。今回はテーブルへ新しいデータを登録していきます。ここでは「カフェのメニュー」を題材にして、次のようなテーブルがあることを想定して進めていきます。主キーnameVARCHAR(20)priceINT(11)modify_datetimeDATETIMEcreate_datetimeDATETIME「id」はデータを管理するための一意となるID、「name」と「price」はメニュー名と価格、そして最後の2つはデータ更新日と登録日を示します。データの登録方法について、「PostgreSQL関数」と「PDO」の2通りの方法を確認していきます。PostgreSQL関数でデータを新規登録PostgreSQL関数を使ってデータを登録するときには、SQL文を使って登録する方法と、配列を使ってデータを登録する方法があります。SQL文を使って登録するまずはSQL文を使って登録する方法から解説します。こちらの方法を使うメリットは、他のデータベースと共通のSQL文をそのまま使える点です。MySQLやSQLiteなどの他データベースと同じコードが使えるので、SQLに馴染みがあればこちらの方法がオススメ。後述する「PDO」においても全く同じSQL文を使用します。それでは早速、コードを見ていきましょう。成功した場合は次のように出力され、失敗した場合はfalseが出力されます。実際に登録されたデータの内容を確認してみます。データベース名」コマンドを実行します。赤い部分が入力するコードです。testデータベースのコマンド入力モードに移ったら、次のSELECT文を打ち込んで実行してください。menu;データの登録が成功した場合は、次のように表示されます。「ドリップコーヒー」のデータが登録されていることが確認できました。解説PostgreSQLデータベースへの接続する部分までは、別記事「PostgreSQLデータベースへ接続」と同じ内容です。データを登録するためのSQLを作成」以降に続くSQL文をする部分では、実際に登録するデータを含めたSQL文を記述します。使いますが、その基本ルールは次の形です。このSQL文を$sqlに格納し、pg_query関数で実行しています。その結果が$resに格納され、最後にvar_dump関数で出力するという流れになっています。pg_query関数についてより詳しくは、php.netの下記ページをご覧ください。php.netpg_insert関数を使って登録するPostgreSQL関数を使ってデータ登録するもう1つの方法は、pg_insert関数を使う方法です。データベースの接続を切断pg_close($pg_conn);実行結果pg_insert関数の返り値は、先述したpg_query関数と同じです。成功した場合は次のように出力され、失敗した場合はfalseが出力されます。ここでも、実際に登録されたデータの内容を確認しておきましょう。「カフェ・オレ」のデータが登録されていることが確認できました。解説pg_insert関数は3つの必須パラメータがあります。1つ目は「データベースとの接続オブジェクト」、2つ目はデータを登録する「テーブル名」、3つ目は登録するデータが入った配列です。3つ目の配列は、テーブル構造のカラム名(フィールド名)と値がセットになった連想配列になります。先のコードだと、例えば「name」には「カフェ・オレ」が入り、「price」には「480」が登録されるように配列を宣言しています。pg_insert関数についてより詳しくは、php.netの下記ページをご覧ください。php.netPDOでデータを新規登録PDOでデータを登録する場合は、データ登録のSQL文を作成して、queryメソッドで実行して行います。PDOオブジェクトのインスタンス作成、データベースへの接続については別記事「PostgreSQLデータベースへ接続」で解説している内容と同じコードです。コードをみていきましょう。成功した場合は次のように実行したSQL文が出力され、失敗した場合はfalseが出力されます。データを登録するためのSQLを作成」以降の、SQL文を作成するところが重要になります。SQL文自体は、汎用性の高いデータ登録を行うためのINSERT文です。そのため、MySQLなど他のデータベースを使った経験のある方にはお馴染みかもしれません。このSQL文はPostgreSQLに関わらず、その他のデータベースでも使うことが可能です。登録されたデータを確認しておきましょう。testデータベースのコマンド入力モードに移ったら、次のSELECT文を入力して実行します。menu;データ登録が成功している場合は、次のようにデータが表示されます。こちらの記事は役に立ちましたか?GoodBadありがとうございます。よろしければ、あわせてフィードバックや要望などをご入力ください。コメント送信コメントありがとうございます!運営の参考にさせていただきます。)PHP2019-11-16フォームの基本構造を作成するPHP2019-11-16はしご高など旧字体漢字の文字化けを防ぐRECOMMEND遅いインターネット評論家の宇野常寛の新著。2018年頃から提唱されている「インターネットによって失った未来をインターネットによって取り戻す」をテーマにした本書が、いよいよ2月20日から書店に並びます。宇野さんがずっと温めてきた構想が詰まった1冊なので、個人的に非常に楽しみにしている一冊です。