FOR UPDATE 句
FOR UPDATE
句は、SQL カーソルによる位置付け更新または位置付け削除を実行します。形式は次のとおりです:
FOR UPDATE [OF 列式]
列式
は、更新するデータベーステーブル内のフィールド名をコンマで区切ったリストです。列式
はオプションで省略可能です。
給与
フィールドの値が 2,000,000 円を超える、従業員名簿データベース内のすべてのレコードを返します。
SELECT * FROM "従業員名簿" WHERE "給与" > 2000000 FOR UPDATE OF "姓", "名", "給与"
各レコードは取得時にロックされます。レコードを更新または削除する場合、ロックは変更を確定するまで維持されます。その他の場合は次のレコードを取得するとロックは解除されます。
使用する列 |
SQL の例 |
文字列定数 |
コピー
|
数値定数 |
コピー
|
日付定数 |
コピー
|
時刻定数 |
コピー
|
タイムスタンプ定数 |
コピー
|
テキスト列 |
コピー
|
数字列 |
コピー
|
日付列 |
コピー
|
時刻列 |
コピー
|
タイムスタンプ列 |
コピー
|
BLOB 列 |
コピー
メモ BLOB は、FileMaker Pro データベースファイルのオブジェクトフィールドです。 |
ワイルドカード * |
コピー
|
これらの例に関する注意
列
は FileMaker Pro データベースファイルのフィールドの参照です(フィールドには複数の値が含まれている場合があります)。
アスタリスク (*) のワイルドカード文字は、「すべて」を簡単に指定する方法です。たとえば、SELECT * FROM "営業社員"
では、結果は営業社員
テーブル内のすべての行になります。SELECT DISTINCT * FROM "営業社員"
の例では、結果は営業社員
テーブル内にある固有な (重複しない) 行すべてになります。
-
FileMaker ソフトウェアは空の文字列のデータを保存しないため、次のクエリーでは常にレコードが返されません:
コピーSELECT * FROM テスト WHERE c =''
SELECT * FROM テスト WHERE c <>'' -
バイナリデータで
SELECT
を使用している場合は、返すストリームを指定するGetAs()
関数を使用する必要があります。詳細については、「オブジェクトフィールドの内容の取得:CAST() 関数と GetAs() 関数」を参照してください。
オブジェクトフィールドの内容の取得:CAST() 関数と GetAs() 関数
オブジェクトフィールドから、ファイル参照情報、バイナリデータ、または特定のファイルタイプのデータを取得することができます。
-
ファイルへのファイルパス、ピクチャ、またはビデオなど、オブジェクトフィールドからファイル参照情報 (ファイルパスなど) を取得するには、
CAST()
関数を使用したSELECT
ステートメントを使用します。 -
ファイルデータまたは JPEG バイナリデータが存在する場合、
GetAs( "フィールド名", 'JPEG')
を使用したSELECT
ステートメントによってデータがバイナリ形式で取得されます。存在しない場合は、フィールド名を使用したSELECT
ステートメントはNULL
を返します。
ファイル参照情報を取得するには、C
AST()
関数を使用した SELECT
ステートメントを使用します。
SELECT CAST( "会社パンフレット" AS VARCHAR) FROM "営業データ"
この例で取得する内容は次のとおりです:
-
FileMaker Pro を使用してオブジェクトフィールドにファイルを挿入してファイルへの参照のみを保存する場合、
SELECT
ステートメントによってタイプSQL_VARCHAR
というファイル参照情報が取得されます。 -
FileMaker Pro を使用してオブジェクトフィールドにファイルの内容を挿入すると、
SELECT
ステートメントによってファイル名が取得されます。 -
別のアプリケーションからオブジェクトフィールドにファイルがインポートされると、
SELECT
ステートメントは「?」を表示します (FileMaker Pro では、ファイルは 名称未設定.dat と表示されます)。
データをバイナリ形式で取得するには、次の方法で SELECT
ステートメントと GetAs()
関数を使用できます:
-
GetAs()
関数をDEFAULT
オプションと使用する場合、ストリームタイプを明示的に定義する必要なく、オブジェクトのデフォルトストリームを取得します。コピーSELECT GetAs("会社パンフレット", 'DEFAULT') FROM "営業データ"
-
オブジェクトから個々のストリームタイプを取得するには、FileMaker Pro のオブジェクトフィールドにデータが挿入された方法に基づいたファイルタイプを指定した
GetAs()
関数を使用します。[挿入] > [ファイル...] コマンドでデータが挿入された場合、
GetAs()
関数で'FILE'
を指定します。コピーSELECT GetAs("会社パンフレット", 'FILE') FROM "営業データ"
[挿入] > [ピクチャ...] コマンド、ドラッグ&ドロップ、またはクリップボードから貼り付け (ペースト) してデータが挿入された場合、次の一覧の
'JPEG'
などのファイルタイプの 1 つを指定します。コピーSELECT GetAs("会社ロゴ", 'JPEG') FROM "会社アイコン"
ファイルタイプ
説明
'GIFf'
Graphics Interchange Format
'JPEG'
写真イメージ
'TIFF'
デジタルイメージのラスタファイル形式
'PDF'
Portable Document Format
'PNGf'
Bitmap イメージ形式