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

datatype.sgmlのv16対応 #2814

Merged
merged 3 commits into from
Mar 3, 2024
Merged

Conversation

KenichiroTanaka
Copy link
Contributor

No description provided.

<type>character varying(<replaceable>n</replaceable>)</type>と<type>character(<replaceable>n</replaceable>)</type>です。
ここで<replaceable>n</replaceable>は正の整数です。
これらのデータ型は2つとも<replaceable>n</replaceable>文字長(バイト数ではなく)までの文字列を保存できます。
上限を越えた文字列をこれらの型の列に保存しようとするとエラーになります。
ただし、上限を超えた部分にある文字がすべて空白の場合はエラーにはならず、文字列の最大長にまで切り詰められます。
(この一風変わった例外は標準<acronym>SQL</acronym>で要求されています。)
しかし、 <type>charactervarying(<replaceable>n</replaceable>)</type>や<type>character(<replaceable>n</replaceable>)</type>に明示的な型変換が行われた場合、文字数の上限を超えた値は、エラーを発生させることなく<replaceable>n</replaceable>文字に切り捨てられます。
Copy link
Contributor

Choose a reason for hiding this comment

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

「character varying」スペースが消えてます。

明示的な型変換が行われた場合、

datatype.sgmlの他の箇所でも「キャスト」にしているようです。

Copy link
Contributor Author

Choose a reason for hiding this comment

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

ご指摘の通りです。修正しました。

</para>

<para>
<!--
In addition, <productname>PostgreSQL</productname> provides the
<type>text</type> type, which stores strings of any length.
<type>text</type> type, pecifierhich stores strings of any length.
Copy link
Contributor

Choose a reason for hiding this comment

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

なぜか変更されています。

Copy link
Contributor Author

Choose a reason for hiding this comment

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

何かの操作時に手が当たったのかもしれません。。修正しました。

<type>テキスト</type>タイプは<acronym>SQL</acronym>標準にはありませんが、他のいくつかのSQLデータベース管理システムにもあります。
<type>テキスト</type>は<productname>PostgreSQL</productname>のネイティブ文字列データタイプであり、文字列を操作するほとんどの組み込み関数は、<type>character varying</type>ではなく、または結果<type>テキスト</type>を取るように宣言されています。
多くの目的のために、<type>character varying</type>は<type>テキスト</type>に対する<link linkend="domains">ドメイン</link>であるかのように動作します。
さらに、<productname>PostgreSQL</productname>は、任意のタイプの文字列を格納する<type>text</type>型を提供します。
Copy link
Contributor

Choose a reason for hiding this comment

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

任意のタイプの文字列を格納する

任意の長さの文字列を格納する

だと思います。

Copy link
Contributor Author

Choose a reason for hiding this comment

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

ご指摘の通りです。修正しました。

多くの目的のために、<type>character varying</type>は<type>テキスト</type>に対する<link linkend="domains">ドメイン</link>であるかのように動作します。
さらに、<productname>PostgreSQL</productname>は、任意のタイプの文字列を格納する<type>text</type>型を提供します。
<type>text</type>型は標準<acronym>SQL</acronym>にはありませんが、他のいくつかのSQLデータベース管理システムにもあります。
<type>テキスト</type>は<productname>PostgreSQL</productname>のネイティブ文字列データ型であり、文字列を操作するほとんどの組み込み関数には、引数や戻り値に<type>character varying</type>ではなく、<type>text</type>が宣言されています。
Copy link
Contributor

Choose a reason for hiding this comment

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

PostgreSQLのネイティブ文字列データ型

PostgreSQL固有の文字列データ型

で良いような。

Copy link
Contributor Author

Choose a reason for hiding this comment

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

いただいている案の方が分かりやすいです。いただきます。また、直前のテキストもtextに修正しました。

Copy link
Contributor

@noborus noborus left a comment

Choose a reason for hiding this comment

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

確認しました。
「ネイティブ」はそのままでしたが、他でも「ネイティブ」を使用していたのでよいことにしました。

Copy link
Contributor

@koizumistr koizumistr left a comment

Choose a reason for hiding this comment

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

確認しました。

<type>character varying(<replaceable>n</replaceable>)</type>と<type>character(<replaceable>n</replaceable>)</type>です。
ここで<replaceable>n</replaceable>は正の整数です。
これらのデータ型は2つとも<replaceable>n</replaceable>文字長(バイト数ではなく)までの文字列を保存できます。
上限を越えた文字列をこれらの型の列に保存しようとするとエラーになります。
ただし、上限を超えた部分にある文字がすべて空白の場合はエラーにはならず、文字列の最大長にまで切り詰められます。
(この一風変わった例外は標準<acronym>SQL</acronym>で要求されています。)
しかし、 <type>character varying(<replaceable>n</replaceable>)</type>や<type>character(<replaceable>n</replaceable>)</type>に明示的なキャストが行われた場合、文字数の上限を超えた値は、エラーを発生させることなく<replaceable>n</replaceable>文字に切り捨てられます。
Copy link
Contributor

Choose a reason for hiding this comment

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

「しかし、」の直後に余分な空白が。

Copy link
Contributor Author

Choose a reason for hiding this comment

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

ありがとうございます。気づいていませんでした。削除します。

@@ -7497,11 +7488,6 @@ WHERE ...
トランザクション識別子は32ビット長です。
文脈によっては64bitに変形した<type>xid8</type>が使われます。
Copy link
Contributor

Choose a reason for hiding this comment

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

このうえに《マッチ度[85.144928]》が残っています。
あと、32ビット長 とある直後に 64bit とあるのは微妙な気が。「ビット」に揃えるのがここの流儀でしょうか。

Copy link
Contributor Author

Choose a reason for hiding this comment

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

そうですね。ビットに揃えます。

Copy link
Contributor

@koizumistr koizumistr left a comment

Choose a reason for hiding this comment

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

確認しました。対応ありがとうございます。

@koizumistr
Copy link
Contributor

複数人で確認しているのでマージします。

@koizumistr koizumistr merged commit 28d1cd1 into pgsql-jp:doc_ja_16 Mar 3, 2024
2 checks 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.

3 participants