Sign in Join
Wiki copytemporary

Database field type/ja: what changed

Revision 1 to 2. Removed lines have a minus sign; added lines have a plus sign.

OldNewLine
1-**日本語版メニュー**
2----
3-[[Main Page/ja|メインページ]] \- [[Lazarus Documentation/ja|Lazarus Documentation日本語版]] \- [[Japanese Localization Notes|翻訳ノート]] \- [[Bug Tracking/ja|日本語障害情報]]
4-
5-## Contents
6-
7- * 1 概略
8- * 2 型
9- * 3 サイズ、データサイズ、ユニコード
10- * 4 データセットの型を定義する
11- * 5 値を割り当て取得する
12- * 6 以下も参照のこと
13-
141## 概略
152
16-FCL-DBデータベースフィールドは異なる種類のデータ型を持つことができる。データセットではこれらの型のサブセットが利用できる。どのような型がサポートされるかはデータセット型で異なる。
3+FCL-DBデータベースフィールドは異なる種類のデータ型を持つことができる。データセットではこれらの型のサブセットが利用できる。どのような型がサポートされるかはデータセット型で異なる。
174
185## 型
196
20-現在、以下のフィールド型が定義されている。 [FCLフィールド型ドキュメンテーション](<http://lazarus-ccr.sourceforge.net/docs/fcl/db/tfieldtype.html>)を参照のこと。 To do: add assignment information (e.g. can you use .AsString) and additional information below.
7+現在、以下のフィールド型が定義されている。 [FCLフィールド型ドキュメンテーション](http://lazarus-ccr.sourceforge.net/docs/fcl/db/tfieldtype.html)を参照のこと。 To do: add assignment information (e.g. can you use .AsString) and additional information below.
218
22-フィールド型 | 内容
23----|---
24-ftADT | 抽象データ型 (サーバに生成されるユーザーにより定義される型); 未だサポートされていない(?)(->訳注ftADTはサポートされている模様)。
25-ftArray | Interbase 6 / Firebird 配列データ型 (可変長文字列あるいは整数のような簡単なデータ型). しかし、SQLDBは配列データ型を現在サポートされていない(訳注->ftArrayはサポートされている模様)。
26-ftAutoInc | 自動的に加算される整数フィールド。
27-ftBCD | バイナリでコードされた10進数の浮動小数点値。
28-ftBlob | バイナリの大きなオブジェクト(BLOB)、任意のバイナリデータを格納するために作られた。
29-ftBoolean | ブール値 (yes/no)。
30-ftBytes | おそらくそのまま格納される固定長byte。有効なSizeプロパティがある必要性あり。
31-ftCurrency | 確実に格納される通貨値に対するフォーマット。
32-ftCursor |
33-ftDataSet | おそらくデータセット全体を格納するために作られたデータ型(マスター/詳細テーブルを実装する可能性のため)。
34-ftDate | 時刻情報を除く日付。
35-ftDateTime | 日付と時刻。
36-ftDBaseOle | おそらくOLEオブジェクトをDBaseに格納するために作られた型。有効なSizeプロパティがある必要性あり。
37-ftFMTBcd | バイナリでコードされた10進数(BCD)フィールド。有効なSizeプロパティがある必要性あり。
38-ftFixedChar | 固定幅の文字フィールドPascalのshortstringに類似する。有効なSizeプロパティがある必要性あり。
39-ftFixedWideChar | 固定長のマルチバイト文字フィールド。有効なSizeプロパティがある必要性あり。
40-ftFloat | 浮動小数点型
41-ftFmtMemo | 有効なSizeプロパティがある必要性あり。
42-ftGraphic | 有効なSizeプロパティがある必要性あり。
43-ftGuid | A field used to store a GUID (Globally Unique Identifier)のために使われるフィールド。現在のコードではこのフィールドのSizeは38に設定される必要がある。
44-ftIDispatch |
45-ftInteger | 整数値フィールド
46-ftInterface |
47-ftLargeint | 整数値を含むフィールド、ftIntegerよりも大きなbyteの整数値、ゆえに大きな幅を持つ。
48-ftMemo | 可変長の文字/テキストを格納する: Sizeを設定する必要がない。
49-ftOraBlob | おそらくOracle BLOBを格納する。
50-ftOraClob | おそらくOracle CLOB: 4GBまでのデータを保持できるOracleのデータ型[[1]](<http://www.orafaq.com/wiki/CLOB>)。
51-ftParadoxOle | おそらくOLEオブジェクトをaradoxデータベースで格納されるために作られた型
52-ftReference |
53-ftSmallint | ftIntegerよりも小さなbyteのための型。
54-ftString | 文字列データを格納する。フィールドに入力可能な最大の文字数をプロパティとして指定する必要がある。
55-ftTime | 時刻のみを格納する。
56-ftTimeStamp | 日付/時刻を格納する。おそらくftDateTimeと同等
57-ftTypedBinary | ある種のBLOB様のフィールド?
58-ftUnknown |
59-ftVarBytes | おそらくbyte/バイナリのバリアントデータ?
60-ftVariant | おそらくバリアントデータを格納するために作られた。
61-ftWideMemo | ワイドストリング(UTF-16)ためのftMemo。
62-ftWideString | ワイドストリング(UTF-16)ためのftString
63-ftWord | おそらく整数値を格納する。
64-
9+| フィールド型 | 内容 |
10+|----|----|
11+| ftADT | 抽象データ型 (サーバに生成されるユーザーにより定義される型); 未だサポートされていない(?)(-\>訳注ftADTはサポートされている模様)。 |
12+| ftArray | Interbase 6 / Firebird 配列データ型 (可変長文字列あるいは整数のような簡単なデータ型). しかし、SQLDBは配列データ型を現在サポートされていない(訳注-\>ftArrayはサポートされている模様)。 |
13+| ftAutoInc | 自動的に加算される整数フィールド。 |
14+| ftBCD | バイナリでコードされた10進数の浮動小数点値。 |
15+| ftBlob | バイナリの大きなオブジェクト(BLOB)、任意のバイナリデータを格納するために作られた。 |
16+| ftBoolean | ブール値 (yes/no)。 |
17+| ftBytes | おそらくそのまま格納される固定長byte。有効なSizeプロパティがある必要性あり。 |
18+| ftCurrency | 確実に格納される通貨値に対するフォーマット。 |
19+| ftCursor | |
20+| ftDataSet | おそらくデータセット全体を格納するために作られたデータ型(マスター/詳細テーブルを実装する可能性のため)。 |
21+| ftDate | 時刻情報を除く日付。 |
22+| ftDateTime | 日付と時刻。 |
23+| ftDBaseOle | おそらくOLEオブジェクトをDBaseに格納するために作られた型。有効なSizeプロパティがある必要性あり。 |
24+| ftFMTBcd | バイナリでコードされた10進数(BCD)フィールド。有効なSizeプロパティがある必要性あり。 |
25+| ftFixedChar | 固定幅の文字フィールドPascalのshortstringに類似する。有効なSizeプロパティがある必要性あり。 |
26+| ftFixedWideChar | 固定長のマルチバイト文字フィールド。有効なSizeプロパティがある必要性あり。 |
27+| ftFloat | 浮動小数点型 |
28+| ftFmtMemo | 有効なSizeプロパティがある必要性あり。 |
29+| ftGraphic | 有効なSizeプロパティがある必要性あり。 |
30+| ftGuid | A field used to store a GUID (Globally Unique Identifier)のために使われるフィールド。現在のコードではこのフィールドのSizeは38に設定される必要がある。 |
31+| ftIDispatch | |
32+| ftInteger | 整数値フィールド |
33+| ftInterface | |
34+| ftLargeint | 整数値を含むフィールド、ftIntegerよりも大きなbyteの整数値、ゆえに大きな幅を持つ。 |
35+| ftMemo | 可変長の文字/テキストを格納する: Sizeを設定する必要がない。 |
36+| ftOraBlob | おそらくOracle BLOBを格納する。 |
37+| ftOraClob | おそらくOracle CLOB: 4GBまでのデータを保持できるOracleのデータ型[1](http://www.orafaq.com/wiki/CLOB)。 |
38+| ftParadoxOle | おそらくOLEオブジェクトをaradoxデータベースで格納されるために作られた型 |
39+| ftReference | |
40+| ftSmallint | ftIntegerよりも小さなbyteのための型。 |
41+| ftString | 文字列データを格納する。フィールドに入力可能な最大の文字数をプロパティとして指定する必要がある。 |
42+| ftTime | 時刻のみを格納する。 |
43+| ftTimeStamp | 日付/時刻を格納する。おそらくftDateTimeと同等 |
44+| ftTypedBinary | ある種のBLOB様のフィールド? |
45+| ftUnknown | |
46+| ftVarBytes | おそらくbyte/バイナリのバリアントデータ? |
47+| ftVariant | おそらくバリアントデータを格納するために作られた。 |
48+| ftWideMemo | ワイドストリング(UTF-16)ためのftMemo。 |
49+| ftWideString | ワイドストリング(UTF-16)ためのftString |
50+| ftWord | おそらく整数値を格納する。 |
51+
6552## サイズ、データサイズ、ユニコード
6653
67-文字列型のフィールドに対しては、Sizeは格納できる文字の数が示される。[[FPC Unicode support|FPC Unicode support#Introduction]]で示されているように、 FPC 2.6までは**ANSI/ASCII** シングルバイト文字のみを扱っており、ユニコード/UTF8/UTF16/ユニコード文字はサポートされない。
54+文字列型のフィールドに対しては、Sizeは格納できる文字の数が示される。[[FPC Unicode support|FPC Unicode support#Introductionで]]示されているように、 FPC 2.6までは**ANSI/ASCII**シングルバイト文字のみを扱っており、ユニコード/UTF8/UTF16/ユニコード文字はサポートされない。
6855
69-DataSizeのread-onlyプロパティはフィールドサイズをbyteで表している。
56+DataSizeのread-onlyプロパティはフィールドサイズをbyteで表している。
7057
71-マルチバイト文字(例えば、UTF8、UTF16/ユニコード文字)を用いていると, DataSizeとSizeは同じものを意味しない。ANSI/ASCII文字を使っている場合は、DataSizeとSizeはまさに同じものである。
58+マルチバイト文字(例えば、UTF8、UTF16/ユニコード文字)を用いていると, DataSizeとSizeは同じものを意味しない。ANSI/ASCII文字を使っている場合は、DataSizeとSizeはまさに同じものである。
7259
7360## データセットの型を定義する
7461
75-_Todo: write me. Explain various ways of doing things (TFieldDef, TFields) and which dataset supports which methods._
62+*Todo: write me. Explain various ways of doing things (TFieldDef, TFields) and which dataset supports which methods.*
7663
7764## 値を割り当て取得する
7865
79-Once you have the fields in your dataset defined, you can assign and retrieve data like this - suppose you have a dataset called FTestDataset:
80-```
81-FTestDataset.Open; //見る/編集する/挿入するためにデータセットを開く
82- FTestDataset.Append;
83- FTestDataset.FieldByName('YourFieldName').AsString := 'This is my field data'; //YourFieldNameがmemoフィールドと仮定する
84- FTestDataset.Post; //"Commit"/レコードの変更をデータセットに反映する。
85- Writeln('YourFieldName has data:' + FTestDataset.FieldByName('YourFieldName').AsString);
86- { 現在のレコードのフィールド値を取得する。レコードを移動していないので、入力した値が表示されるはずである }
66+Once you have the fields in your dataset defined, you can assign and retrieve data like this - suppose you have a dataset called FTestDataset:
67+
68+``` pascal
69+ FTestDataset.Open; //見る/編集する/挿入するためにデータセットを開く
70+ FTestDataset.Append;
71+ FTestDataset.FieldByName('YourFieldName').AsString := 'This is my field data'; //YourFieldNameがmemoフィールドと仮定する
72+ FTestDataset.Post; //"Commit"/レコードの変更をデータセットに反映する。
73+ Writeln('YourFieldName has data:' + FTestDataset.FieldByName('YourFieldName').AsString);
74+ { 現在のレコードのフィールド値を取得する。レコードを移動していないので、入力した値が表示されるはずである }
8775```
8876
89-text/memoフィールドにはAsStringメソッドを用いること。 date/timeフィールドにはAsDateTimeメソッドを用いること。 バイナリフィールドには、AsStringメソッドを用いることができると思われるが- _別のやり方もあるはずだ_
77+text/memoフィールドにはAsStringメソッドを用いること。 date/timeフィールドにはAsDateTimeメソッドを用いること。 バイナリフィールドには、AsStringメソッドを用いることができると思われるが- *別のやり方もあるはずだ*
9078
9179## 以下も参照のこと
9280
93- * [[Databases/ja]]
81+- [[Databases/ja]]
9482
9583---
96-*From the Free Pascal wiki, page "Database field type/ja", as the Internet Archive kept it on 2025-02-13. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*
84+*From the Free Pascal wiki, page "Database field type/ja", as it stood on 2024-03-15 after a change by Ariben, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history