FAQ
フィールドの区切り文字を取得する方法

ナレッジ番号:5315 | 登録日:2023/07/26 | 更新日:2024/11/21

概要

属性検索の条件式を指定する際に使用する、フィールドの囲み文字はデータベース(ワークスペース)により決められています。

なお、バージョン 10.1 以降ではフィールドの区切り文字を指定しなくても属性検索が実行できるようになりましたので、この操作は必須ではありません。

サンプル コード

このサンプル コードは、使用しているワークスペースで定められたフィールドの囲み文字を取得する方法を示しています。対象となるワークスペースはアクティブなデータ フレームの最上位レイヤが参照しているフィーチャクラスが格納されているワークスペースです。

このコードは ArcMap のアドインを想定しています。

IFeatureLayer pFeatureLayer = (IFeatureLayer)ArcMap.Document.FocusMap.get_Layer(0);
IWorkspace pWorkspace = ((IDataset)pFeatureLayer.FeatureClass).Workspace;
ISQLSyntax pSQLSyntax = (ISQLSyntax)pWorkspace;
System.Windows.Forms.MessageBox.Show(pSQLSyntax.GetSpecialCharacter(esriSQLSpecialCharacters.esriSQL_DelimitedIdentifierPrefix) +  "フィールド名 " + pSQLSyntax.GetSpecialCharacter(esriSQLSpecialCharacters.esriSQL_DelimitedIdentifierSuffix));

Dim pFeatureLayer As IFeatureLayer = CType(My.ArcMap.Document.FocusMap.Layer(0), IFeatureLayer)
Dim pWorkspace As IWorkspace = CType(pFeatureLayer.FeatureClass, IDataset).Workspace
Dim pSQLSyntax As ISQLSyntax = CType(pWorkspace, ISQLSyntax)
System.Windows.Forms.MessageBox.Show(pSQLSyntax.GetSpecialCharacter(esriSQLSpecialCharacters.esriSQL_DelimitedIdentifierPrefix) + "フィールド名 " + pSQLSyntax.GetSpecialCharacter(esriSQLSpecialCharacters.esriSQL_DelimitedIdentifierSuffix))

結果

ファイル ジオデータベース(GDB)、シェープファイル の場合 →  "フィールド名"
パーソナル ジオデータベース(MDB) の場合                        →  [フィールド名]

メタデータ

機能

種類

製品