Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

追記: PostgreSQLで連番を自動生成してくれるIDENTITY列 #1427

Merged
merged 1 commit into from
Nov 13, 2024

Conversation

ma91n
Copy link
Collaborator

@ma91n ma91n commented Nov 13, 2024

No description provided.

@ma91n ma91n self-assigned this Nov 13, 2024
@@ -39,6 +40,10 @@ Technology Innovation Group真野です。
| パーティションテーブルでの利用 | 利用できる |
| 作成されたシーケンスの名称 | {テーブル名}_{カラム名}_seq |
| 作成されたシーケンスを削除したらどうなるか | 削除不可 |
| シーケンス名の上限63文字を超過したテーブル、カラム名の場合 | それぞれ29文字上限でオミットされて生成 |
| テーブル名を変更した時シーケンス名はどうなるか | 変化なし |
| カラム名をを変更した時シーケンス名はどうなるか | 変化なし |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚫 [textlint] <eslint.rules.ja-technical-writing/ja-no-successive-word> reported by reviewdog 🐶
"を" が連続して2回使われています。 (ja-technical-writing/ja-no-successive-word)


- https://www.postgresql.jp/document/16/html/sql-syntax-lexical.html#SQL-SYNTAX-IDENTIFIERS

そのため、IDENTITYで自動で生成されるシーケンス名の体系が、{テーブル名}_{カラム名}_seq だとすると、超過した場合にどう命名されるか気になりました。
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚫 [textlint] <eslint.rules.ja-technical-writing/no-doubled-joshi> reported by reviewdog 🐶
一文に二回以上利用されている助詞 "で" がみつかりました。

次の助詞が連続しているため、文を読みにくくしています。

  • "で"
  • "で"

同じ助詞を連続して利用しない、文の中で順番を入れ替える、文を分割するなどを検討してください。
(ja-technical-writing/no-doubled-joshi)

public.loooooooooooooooooooooooooooo_loooooooooooooooooooooooooooo_seq
```

テーブル名、カラム名が長いと最長で29文字で前方からオミットされて生成されるようです。
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚫 [textlint] <eslint.rules.ja-technical-writing/no-doubled-joshi> reported by reviewdog 🐶
一文に二回以上利用されている助詞 "で" がみつかりました。

次の助詞が連続しているため、文を読みにくくしています。

  • "で"
  • "で"

同じ助詞を連続して利用しない、文の中で順番を入れ替える、文を分割するなどを検討してください。
(ja-technical-writing/no-doubled-joshi)


そのため、テーブル名を変更した場合は、シーケンス名もリネームするような運用を行った方が良いでしょう。

### 8. カラム名をを変更した時シーケンス名はどうなるか
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚫 [textlint] <eslint.rules.ja-technical-writing/ja-no-successive-word> reported by reviewdog 🐶
"を" が連続して2回使われています。 (ja-technical-writing/ja-no-successive-word)

ALTER SEQUENCE custom_color_seq OWNED BY color.color_id;
```

BIGINTを指定していて、BIGSERIALを使っていないじゃない?と思うかもしれません。しかし[ドキュメント](https://www.postgresql.jp/docs/16/datatype-numeric.html#DATATYPE-SERIAL)にも記載通り、以下の2つの構文は同義ですので、これが言えます。
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[textlint-fix] reported by reviewdog 🐶

Suggested change
BIGINTを指定していて、BIGSERIALを使っていないじゃない?と思うかもしれません。しかし[ドキュメント](https://www.postgresql.jp/docs/16/datatype-numeric.html#DATATYPE-SERIAL)にも記載通り、以下の2つの構文は同義ですので、これが言えます。
BIGINTを指定していて、BIGSERIALを使っていないじゃない? と思うかもしれません。しかし[ドキュメント](https://www.postgresql.jp/docs/16/datatype-numeric.html#DATATYPE-SERIAL)にも記載通り、以下の2つの構文は同義ですので、これが言えます。

@ma91n ma91n changed the title 追記 追記: PostgreSQLで連番を自動生成してくれるIDENTITY列 Nov 13, 2024
@ma91n ma91n merged commit fc99af5 into main Nov 13, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant