PostgreSQL, SQL

PostgreSQLでのテーブルに対する列の追加、削除、列名の変更、制約の変更方法を毎回検索しているので記事にまとめる。

動作確認はPostgreSQL 11.6で行っている。

動作確認用テーブルの作成

SQLの ...

PostgreSQL, Spring

MyBatis Generator のGradleプラグインとは

MyBatis GeneratorをGradleのタスクとして実行するためのGradleプラグインです。 mybatis-generator-pluginこのプラグインを ...

PostgreSQL

ALTER TABLEでトリガーを有効化、無効化する

以下のSQLでトリガーを有効化、無効化することができる。

-- トリガー名を指定して無効化alter table {テーブル名} disable trigger {トリガー名} ...

PostgreSQL

検索条件にマッチするデータが存在しない場合にデフォルト値を返す

以下の国ごとの送料を管理するテーブルを考えます。国コード「XX」のレコードは指定された国がUS(アメリカ)、JP(日本)以外の国の場合に適用される送料とします。例えば、CN ...

PostgreSQL, SQL

columnsビューから列情報を取得する

 PostgreSQLではpsqlでデータベースへ接続し、¥d {テーブル名}でテーブル情報を取得できます。同じようにテーブル名を指定し列情報を取得するSQLのメモです。columnsビューには ...

PostgreSQL

リストパーティションの作成

今までと同じようにRow Level Securityを有効化したテーブルに対してパーティションを設定します。今回はテナントごとにパーティションを作成するためにリストパーティションを設定します。パーテションの ...

PostgreSQL

Row Level Securityに使用する列にインデックスを張ってみる

この記事は【PostgreSQL】Row Level Securityを有効化したテーブルでSQLの実行計画を検証する
の続きです。今回は前回使用したテ ...

PostgreSQL

本記事の目的

Row Level Securityを有効化したテーブルに対して、Bypass RLS属性を持つロールと持たないロールでSQLの実行計画がどのように変わるかを確認する。

検証用のテーブルとロールの準備

検証にはP ...

PostgreSQL

generate_series関数による連続値の生成

テスト用のデータをgenerate_series関数を使って連続した整数値、タイムスタンプを生成できる。generete_siries関数はgenerete_siries(start ...

PostgreSQL

Row Level Securityの概要

PostgreSQLのテーブル中の各行に対してSELECT文やUPDATE文による操作実行する際に、特定の条件(セキュリティポリシー)を満たしている場合のみ操作を許可するように設定することがで ...